著者:渡辺毅
ページ数:92

¥890¥0

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

 「プログラミング的思考」という言葉が学習指導要領に登場したという話を聞き、最初は違和感がありました。英語では Computational Thinking と呼ばれている概念や実践とほとんど同じだと解釈したので、カタカナで「コンピューテーショナル思考」でもいいのではと思ったのですが、「プログラミング」という言葉の本来の意味で読むと決して間違ってはいないな、と後になって納得するようになりました。
 「プログラミング」とはつまり広い意味で「コンピュータ資源を利用して問題解決に役に立てる活動」ということです。ただ残念ながら「コーディング」と混同されてしまうことも多々あるように感じます。概念の抽象レベルでいうと「コンピューテーショナル」とい表現が最も上位に位置し、包括的でもあります。ですから「コンピューテーショナル」が最も適切なのかもしれません。ただ日本人にとっては、「コンピューテーショナル」という言葉はいまひとつイメージが湧かず、その点「プログラミング」は、コーディングとの混同のリスクはあるけれど、おおよそコンピューテーショナルという言葉の守備範囲をカバーしていると感じます。そこに「~的」という日本語らしい修飾語を足して「プログラミング的」と表したのはなかなか上手い表現だと個人的に感じました。
 この本では、それらの概念と実践を、実際に毎日「プログラミング」や「コンピュータ資源の活用」をしているソフトウェア開発現場からの視点でまとめました。現場で交わされる会話の中で登場する概念こそが「プログラミング的思考」であり、議論に参加する全員が理解していると期待されています。つまり、そういった議論に参加して貢献するためには、そこで前提とされている概念を理解していなければならないのです。この本で解説した概念を理解し、人に説明できるのであれば「プログラミング的思考」が身についていると言ってもよいのではないかと感じます。

シリーズ一覧

  • 同シリーズの電子書籍はありませんでした。

 

  Kindle Unlimitedは、現在30日間無料体験キャンペーンを行っています!

この期間中は料金が980円→0円となるため、この記事で紹介している電子書籍は、すべてこのKindle Unlimited無料体験で読むことが可能です。

Kindle Unlimited 無料体験に登録する