無料マンガ・ラノベなど、豊富なラインナップで200万冊以上配信中!
本書は,プログラミング言語が持つ各種概念が「なぜ」存在するのかを解説する書籍です。
世の中にはたくさんのプログラミング言語があります。そしてプログラミングに関する概念も,関数,型,スコープ,クラス,継承など,さまざまなものがあります。多くの言語で共通して使われる概念もあれば,一部の言語でしか使われない概念もあります。これらの概念は,なぜ生まれたのでしょうか。本書のテーマは,その「なぜ」を理解することです。
そのために本書では,言語設計者の視点に立ち,複数の言語を比較し,そして言語がどう変化してきたのかを解説します。いろいろな概念が「なぜ」生まれたのかを理解することで,なぜ使うべきか,いつ使うべきか,どう使うべきかを判断できるようになるでしょう。そして,今後生まれてくる新しい概念も,よりいっそう理解しやすくなることでしょう。
※アプリの閲覧環境は最新バージョンのものです。
Posted by ブクログ
コーディングを支える技術
エンジニアの西尾泰和 氏の著書です。
現在のプログラミング言語で普通に使われている概念、仕様、機能が歴史的にどのような経緯で作られ、他の言語ではどのようになっているかについて書かれています。
冒頭に効率良く学ぶには、比較から学ぶ、歴史から学ぶ、作ることで学ぶと書かれていますが、その前者2つを学べる本になっています。
一つの言語で簡単なプログラムが書けるレベルの人が、レベルアップを目指すのに向いていると思います。
【本書で学べること・考えること】
- プログラミング言語が生まれた理由
- 文法が生まれた理由
- 構造化プログラミングが生まれた理由
- 関数が生まれた理由
- エラー処理が生まれた理由
- 名前とスコープが生まれた理由
- 型が生まれた理由
- コンテナと文字列の言語ごとの違い
- 並行処理の違い
- オブジェクトとクラスとは
読んでみての感想です。
普通の技術書とは異なるアプローチで、言語に共通する仕様を説明してくれる本です。
目的や成り立ちを知ることで、理解が深まるとともに他言語の学習コストを下げてくれます。良書だと思います。
「プログラムはなぜ動くのか」など、PCでのプログラム処理の仕組みを知った後で読むとより理解が深まると思います。(マシン語、アセンブラをイメージできていると良い。)文法、構造化、関数、エラー処理、名前、スコープ、型、コンテナは、すべて人が理解しやすい記述ができるように生み出されたものでるということが理解できます。
並行処理は、使い勝手の向上のためです。
オブジェクト指向は、少し難しいですが、多重継承の問題などはわかりやすいと思います。
※アプリの閲覧環境は最新バージョンのものです。