ywatanabe

福岡市出身。シアトルのマイクロソフト本社シニアソフトウェアエンジニア。ビジネス向けCRMツールDynamicsにAI機能を統合する仕事をしています。電子書籍で支援いただければ嬉しいです→ https://www.amazon.co.jp/dp/B09LM24XBK
    • シアトルで実践する「プログラミング的思考」

      • 14本

      「プログラミング的思考」とはいったい何なのでしょうか?いまひとつよく分からないと感じている人も多いのではないでしょうか。ただ、ひとつ言えることは「プログラミング的思考」を身につける目的が「コンピュータ資源を効果的に活用して様々な問題を解決できるようになること」だということです。 ところでソフトウェアエンジニアの仕事は、まさに「コンピュータ資源を活用して問題解決をする」ことです。ですからソフトウェアエンジニアの普段の考え方や実践を知ることで「プログラミング的思考」の本質が見えてくるのでは、と考えました。 このマガジンでは、シアトルのマイクロソフト本社でシニアソフトウェアエンジニアとして働く筆者が、仕事で使う思考や実践を、プログラミング的思考、コンピューテーショナルシンキング、K12コンピュータサイエンスフレームワークなどの背景と関連づけながら解説していきます。

シアトルで実践する「プログラミング的思考」[14] 抽象化(3)インターフェーイスによる抽象化

ソフトウェアは分解によっていくつもの小さなソフトウェア部品に分けられ、それらの部品が集まって連携することで問題を解決します。その際、それぞれの部品は抽象化された…

3か月前

シアトルで実践する「プログラミング的思考」[13] 抽象化(2)パターン認識による抽象化

抽象化(1)分解による抽象化 では「分解の文脈」でどのように抽象化が行われるかを解説しました。ここでは「パターン認識の文脈」で抽象化をみていきます。パターン認識は…

1年前

シアトルで実践する「プログラミング的思考」[12] 抽象化(1)分解による抽象化

「抽象化 (abstraction) 」は「プログラミング的思考」の派生元と言われている「コンピューテーショナルシンキング」の4つの主要概念のうちのひとつです(その他は分解、…

1年前

シアトルで実践する「プログラミング的思考」[11] 論理的に考える(2)ロジックを使う

論理的に考える(その1)では「論理的にアルゴリズム設計をする」ことを解説しました。ソフトウェアエンジニアが「重複がなく、なおかつ問題の全てを網羅する」よう論理的…

1年前

シアトルで実践する「プログラミング的思考 」[10] 論理的に考える(1)なぜ?の思考

ソフトウェア開発やプログラミング活動において、論理的思考が必要である事はよく知られています。プログラミング的思考も「論理的に考えていく力」と定義しています。 自…

1年前

シアトルで実践する「プログラミング的思考」[9] ~データを表現する(2) データを抽象化する

データを表現する(2)デジタル情報として表す では「デジタル情報」の利点と、人間にとって扱いやすいデジタル情報としての「データ型」について解説しました。ここでは…

1年前