これらの本を読む正しい順序は何ですか?[閉まっている]


25

私はジュニアC#開発者で、自宅で学び、今では最初の仕事を得ました:)

これらの本を買いたいです。しかし、これらの本を読む正しい順序は何ですか?

完全なコード:ソフトウェア構築の実践的なハンドブック

Clean Code:A Handbook of Agile Software Craftsmanship

実用的なプログラマー


6
正しい順序はありません(@Odedが言ったように)。おそらくそれら(または少なくともそれらの一部)を何度も繰り返し読んでいるでしょう。だから、ものを選択:)カバーをクラックし、ダイジェスト
ジョエルEtherton

8
従来の知識では、最初のページから開始して最後のページで終了する必要があるとされています。;)
vaughandroid

1
投票する理由が見当たりません。
mmdemirbas

さらなる改善のための右の本の良い選択に+1
EL Yusubov

もう1つ必要なものがあります(多くの場合、C#.NETバイブルと見なされます):Pro C#2010および.NET 4プラットフォーム、第5版(すぐに.NET 5およびVS 2012用のものもあります)。
Linuxios

回答:


44

これらの本を読むための「正しい」順序はありません。

それぞれ、ソフトウェアエンジニアリングのさまざまな側面に焦点を当てています。

  • Clean Code-小規模のコーディングに焦点を当てています。クラスと関数の書き方。
  • Code Complete-ソフトウェアエンジニアリングのプロセスに焦点を当てています。
  • Pragmatic Programmer-ソフトウェアを作成するチーム内での作業に焦点を当てています。

7
@Downvoter-コメントしていいですか?
-Oded

12

あなたの最初の仕事を獲得しておめでとうございます!そして、あなたは本当に良い本の選択をしました!

これらの本は、すべてのプログラマーが少なくとも一度読むべき傑作です。

私の個人的な経験から、本を交換可能読むようにアドバイスします。1冊の本で疲れたり退屈したりする可能性があるのは事実です。関連する本に切り替えると、集中力が戻り、情報を処理するために脳がキックオフします。したがって、このプロセスを最大限に活用できます。

編集:コメントで述べたように、効率を上げるのは一種のマルチスレッドソリューションです :)

ただし、過熱しないでください。3冊以上の本を同時に扱うのは難しいかもしれません。


8
プログラマが実際の問題を解決するのは、マルチスレッドを実装することだと面白いと思います:)
Rotem

@Rotem-その理由は単純で、正規表現によく似ています。このようなタスクを開始すると、実際の問題はそれほど深刻ではないように見えます;
Joris Timmermans

4

「正しい順序はありません」という答えには同意しますが、別のスピンを提供します...

Code Completeを開始して完全にダイジェストします。これは、最も基本的で最も包括的な基礎書です。たくさんの時間を読み、それを読み直します。あなたが初心者なら、それはあなたに最も多くのリターンを与えるはずです。


2

「Clean Code」だけを読んで、とても良かったです。ボブおじさんは、優れたソフトウェア職人になる方法と、何年も維持できるクリーンなコードを書く方法を教えてくれます。ですから、この本を最初に読むべきでしょう:-)(早く読んでいたらいいのですが)。

(モジュール間の依存関係について)より大きなビューを取得したい場合は、彼のコードキャストもお勧めします。http//www.cleancoders.com/


1

Pragmatic Programmerを読んで、「Code Complete」を読んでいます。

これまでの経験から、「Pragmatic Programmer」はさまざまなコーディングの問題の高レベルのビューを提供するため、開始するのに最適な場所だと思います。私は一週間かけてそれを読みました。私がそれを読んだとき、私は毎日私が対処する問題を解決するいくつかのより良い方法についてすぐに啓発されました。

「コード完了」はより長く、より網羅的です。


1

私もそれらの本を読んでいます、ここに私の注文があります:

  1. きれいなコード
  2. 実用的なプログラマー
  3. コード完了

Programmers Stack Exchangeに最初の回答を投稿していただきありがとうございます。なぜこれに反対票を投じたのかはわかりませんが、反対投票者がリストだけでなく理論的根拠も探していた可能性があります。まだ行っていない場合は、よくある質問をご覧ください。質問と回答のアドバイスに関するアドバイスが含まれており、バッジProgrammers.stackexchange.com/faqが提供されます。今後のスタック交換への参加にご期待ください。あなたがそれが有益でやりがいのあるものになることを願っています。
DeveloperDon

0

これらの本には高いメリットがあります。

多くの場合、開発者は理由について多くの詳細なしにほとんどを知っている仕事に入ります。あなたが選んだ3冊の本は、あなたがプログラマーとしての仕事を改善するために多くを提供し、彼らの処方箋をバックアップするための説明を提供するのが得意です。

これらの本を読むことで、想像もしなかったかもしれない多くのアイデアが得られます。後で、経験を積むにつれて、これらの本からさらに多くを得ることができます。

これらの本を合わせると、合計で1500ページ以上になります。それは多くの読み物であり、あなたはシーケンスに優先順位を付けて計画する権利があります。3つすべての目次をダウンロードし、それぞれの章にあなたの仕事に今最も必要なものを採点することをお勧めします。変数とクラスの命名に関する彼らのアドバイスを比較対照できますが、命名について一度読んだだけで十分だと思います。同様に、チームまたはマネージャーにガイドラインがある場合は、それらに従ってください。

これらを購入する前に、友人や図書館から借りることができます。または、地元の本屋で数時間過ごすこともできます。読書の時間を決め、優先順位に基づいて3つすべてに目を通し、空白の紙にメモを取っておくと、今日仕事で適用できる語彙と概念が見つかります。

Pragmaticは、これらの本を使用するときに必要な学習アプローチの優れた説明です。3つには多くの重複があり、Webでアクセス可能なソースでは多くのことが再検討されていると思います。これらの本に含まれていないか、ほとんど触れられていない、必要なものがたくさんあります。これらの本の範囲を超えるトピックをさらに追加することを検討してください。

  • プログラミング言語のチュートリアル。
  • 組織固有のソース管理およびビルドツール。
  • C#のデータ構造の概念と実装。
  • 標準C#クラスライブラリ。
  • 組織固有のコーディング標準。
  • おそらくMSテストツールを使用したテスト。
  • プラットフォームのUI / UX設計ガイドライン。
  • C#の場合、MVVMが最も重要であると予想される適用可能なデザインパターン。

私が役立つと思うもう1つの考慮事項は、各本の発行日、背景、および目標を検討することです。最新から最新:Pragmatic 1999、Code Complete 2nd Ed。2004、Clean Code2008。コンテキスト:実用的なリストでは、C#ではなくインデックスにC、C ++、Javaがリストされています。完全なコードは、元Microsoftの男によって書かれたMicrosoft Pressであり、Microsoft言語で作業しているため、そこにある程度の親和性があるかもしれませんが、インデックスにはC#のエントリが1つあり、64ページのFortranほど愛されていません。

ロバート・マーティンの本は、他の2つよりもアジャイルのアプローチに傾いており、最新のものであり、ネーミング、クラス設計のかなり優れた説明があり、おそらく他のものよりも並行性に関する多くの助けがあります。それは少し不公平かもしれませんが、後の本はより多くのものとより新しいものについて話すことができ、それらの文脈は一般的に今日私たちがやっていることに似ています。

これらの本のそれぞれは、ある程度同じようなトピックの範囲で競合しています。「同じ分野で競争している新しい、広範囲のプログラミング本はどれですか?」

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.