回答ごとに1つください。答えとしてお気に入りを追加します。
回答ごとに1つください。答えとしてお気に入りを追加します。
回答:
Steve McConnellによるコード補完。説明する必要もないと思います。それはソフトウェア構築に関する決定的な本です。信じられないほどよく書かれており、ソフトウェア作成の実用的な(プログラミング)面のすべての側面をカバーしています。
SICPがまだリストに載っていないのを見たとき、私は痛みに顔をしかめました。:)
理由:これまでに書かれたコンピューターサイエンスへの最大の入門書としてこの本を称賛するNorvigの言葉に追加するものは何もありません。なぜですか?SICPは、ソフトウェアの基礎を十分に深くカバーし、計算の性質に関する多くの視点と疑問を提起します。その多くは未解決の問題です。行う方法、またはその方法。
代替テキストhttp://ecx.images-amazon.com/images/I/41CPGEDXMDL._SL500_AA300_.jpg
画像をクリックしてオンラインでフリーテキストをご覧ください。また、80年代スタイルの色彩と衣服を備えた著者によるビデオ講義もすぐに見つけることができます。
言及する価値があります:
デザインパターン:再利用可能なオブジェクト指向ソフトウェアの要素
これは、 OOPの設計とアーキテクチャについて読むべき本です。適切に使用すればパターンは良好ですが、この本の本当の価値は、設計時に使用するアイデアのツールボックスを提供することだと思います。
言語、フレームワーク、方法論は行き来しますが、この本の多くのアイデアは永遠に続くと思います。
今日は本を数えたところです。23の 'em。私が取り組んでいるものに依存します。時代を超越した答えは「カーニガン」と「リッチー」による「C言語」だと思います。
Michael Feathersによるレガシーコードの効果的な使用。
既存のコードベースをテストして管理しやすくするための多くの優れたヒントが含まれています。そのほとんどは、この本を読むまで知りませんでした。作業しているレガシーコードが昨日書いた独自のコードであっても、必ず読んでください。
ドナルドクヌースによるコンピュータープログラミングの芸術
ゲーデル、エッシャー、バッハ。
Getting Things Done(David Allen)は、ソフトウェア開発者としての日々の仕事で達成する必要がある何千もの小さなタスクに対処する方法を教えます。開発者向けではありませんが、ソフトウェア開発には通常、優先度の高い方法で実行する必要がある非常に多くの小さなタスクが含まれるため、非常に貴重な支援となります。例:どの新機能を実装するか、どのバグを修正するか、コードのどの部分をリファクタリングするか、コードのどの部分を休止または再テストするかなど...
Bjarne StroustrupによるC ++プログラミング言語
ブルース・F・ウェブスターの「オブジェクト指向開発の落とし穴」
オブジェクトやクラスが何であるか、何のためにあるのかをまだ知らない「OO」開発者が多すぎます。良いオブジェクト指向、手続き型、モジュール型、構造化プログラミングがどのように見えるかわからない。そして、どういうわけか、ひどく作成された擬似手続き型コードをクラスと一緒に丸ごと処理します。
この本(および構造化設計に関する70年代の古い記事)は、これらの貧しい人々が最終的に良いオブジェクト指向がどのように見えるべきかを理解するのを助けるのに大いに役立ちます。
さらに、1冊の本を選択せざるを得ず、この本の横にのみ1冊の本を選択する場合、テクノロジー固有の本を選択しない可能性があります。
ジョン・スキートの「C#in Depth」
私の最も好きな本の一つ。