投稿元:
レビューを見る
さぁ読め、今読め、全部読め。
その分厚さに怯んではいけません。
これなくしてコーディングは語れない。
投稿元:
レビューを見る
説明しなくてもわかるじゃんと思うようなことについて理路整然と根拠が書かれているので職場のわからず屋を説得するのにいい材料になります。
投稿元:
レビューを見る
図書館から借りて読んでいるところです。ぶ厚いのに、これでまだ下巻が続くのかと思うと気が遠くなります(笑)
投稿元:
レビューを見る
手続き型言語を扱う全てのプログラマに無条件でオススメできる本。ある程度プログラムの経験を積んでくると、きれいなソースや効率化、再利用性といった物を求めると思いますが、その様な中級プログラマとして必須な考え方がぎっしりと詰まっています。デザパタ的なものではなく、モジュール強度や結合度的な考え方、変数やステートメントといったより細かい単位での考え方が詳しく載っているので、それらを人から習う機会が無かった人等には特にオススメです。
ただ設計の部分に関してだけは自分の肌には合いませんでしたが…。特にPPPの部分!いやそれはお前が分かってないだけだとか言われそうですけど(笑)
これを読むときっと「人に優しいプログラミング」ができるようになります。
投稿元:
レビューを見る
すぐれたプログラミングとはどのようなものか論理的かつ明快に書かれており、かつ具体的なコードが裏付けをもって書かれている。
文法は覚えてなんとか書き始めたものの、その先を超えたノウハウ、実践的な知識を得られる貴重な本。
この上巻は直接コードを書くためのノウハウが詰め込まれている。
投稿元:
レビューを見る
プログラマーの必読書
変数名、制御構造などの幅広いことを詳しく解説しているので、この本を読むことによって、どのようなプログラミングをすればいいのかがよくわかるようになる。
プログラミングし始めてから、1年ぐらいに読むのがオススメ
投稿元:
レビューを見る
強制的に読まされた(笑)書籍
分厚さに圧倒されるがこれでまだ上巻
書いてることはもっともで読んで損はないと思う。
もう少ししたらもう一回くらい見直したい
投稿元:
レビューを見る
プログラミングの全てが、体系的にまとめられている。
まさに、バイブル!
いつも手元に置いて、目を通したい本だ。
投稿元:
レビューを見る
どの言語を使用していても役に立つ。これ一冊で得られるものは非常に多い。
プログラマがこれを読まない理由が思い当たらない。
投稿元:
レビューを見る
備忘録
●要求が変化し易く、プロジェクトのリスクが高い場合は、逐次型よりも反復型がよい
●クラスの独立性を高めるために、構成間のやり取りを細かく規定することが重要
●業務ルールやデータサイズは変更の可能性が高い
●疎結合を実現するためには、パブリックメソッドの数を減らし、グローバル変数の参照ではなく、引数として明示的にデータを渡すように実装する
●トップダウンは考えるのが簡単という利点があり、ボトムアップは早期に必要な機能が明確化されるという利点がある
●設計の詳細レベルは、経験の豊富さ、プロジェクトの規模、ソフトの寿命を考慮して決める
★クラスのメンバデータが7つを超えたら、小さなクラスへの分割を検討する
●他のクラスのルーチンを間接的に呼び出すのは避けるべき(デメテルの法則)
★200行を超えるルーチンは要注意
●防御的プログラミングにおいては、重要なエラーの検査は製品コードにも残し、エラーメッセージは分かり易いものに書き換えておく
★まず概略レベルのコメントを書き、その後、コードを記述する
投稿元:
レビューを見る
開発者必読の一冊。開発歴10年近いけど、それまでに培った以上のノウハウが詰まっていた。
技術の移り変わりは早いけど、あと10年は役立つ内容かと。
投稿元:
レビューを見る
■概要
コードは書く事に費やす時間より
読むことに費やす時間のほうが長い
読みやすいコード(=変更するときに間違えにくいコード)
を書くための色々なテクニックが紹介されている
割と基本的な事からしっかり書かれている
■感想
こんないい本を今まで読んでなかったなんて・・・と,衝撃を受けた
後1~2年早く読んでいれば卒業研究のプログラムなどがもっと効率よく書けたのに.
量は多いけど,栄養たっぷりで美味しいので
もりもり食べれた(本を食べ物に例えたメタファー)
ただ,全部消化しきったわけではないので
もっと経験を積んだ後に,また読み返したい1冊
我流でプログラムを勉強したが
読みやすいコードの書き方がいまいちわからない人や
これから,プログラムをもりもり書く人や
これから,チームでプログラムを書く人等に
おすすめの1冊
投稿元:
レビューを見る
ソフトウェア開発におけるベストプラクティスを網羅的に解説したプログラマにとってのバイブル的書籍である。
著者はソフトウェア工学の第一人者であるスティーブ・マコネルで、
私の会社の机にも置いてある「SWEBOK」の構築を主導している人物でもある。
この書籍が解説している範囲的は主に詳細設計?テストで、
上巻では詳細設計?プログラミングの部分を解説している。
この書籍の良いところは、かなり具体的に例を示している点で、
例えば、コーディングの際の擬似コード(PPP)のススメや、
変数の宣言、定義等のベストプラクティスなど、
実際の実務に直ぐにでも生かせるようなテクニックを惜しげもなく教えてくれる。
これは恐らく先人たちが何十年もかけて得た知識や経験を、
この本に凝縮して詰め込んでくれたのであろう。
そんな素晴らしい知識をたかだか数千円の投資で得ることが出来るというのは、
この著者に十分感謝しなければならないと思う。
以下、上巻を読んで大事だなと思った項目を一部抜粋します。
・プロトタイプを作成するときはクラス名やパッケージ名にprototypeというプレフィックスを付けるといった標準を設けるといい。
・設計書の文書化(CRCカード、UML、デジカメ、JavaDocの使用)。
・擬似コード (PPP)の活用。
・変数は宣言時に初期化する(C++など)。
・変数は最初に使用する場所の近くで初期化する。(VBなど)。
・変数の宣言と定義は、最初に使用する場所の近くで行うのが理想的である。
・できるだけfinalまたはconstを使用する。
・クラスのメンバデータはコンストラクタで初期化する。
・すべての変数を自動的に初期化するようにコンパイラを設定する。
・変数の参照はまとめて。
・トランプデータの削除。
・グローバル変数が必要なすべてのコードでアクセスルーチンを使用する。
・ロックを使ってグローバル変数へのアクセスを制御する。
・ループは一度に確認できる程度に短くする。
・ネストは3段階までに制限する。
・ブール値とtrue、falseは暗黙に照合する。
・ド・モルガンの定理を適用して、否定語のある論理評価を単純化。
・数値を含んでいる式は数直線の順番に並べる。
・Cでは、文字を終端のnull('\0')と明示的に比較する。
・Cから派生した言語では、定数を比較の左側に置く。(但し、数直線との関係が矛盾している)。
・null文の代わりにDoNothingプリプロセッサマクロやインライン関数を作成する。
投稿元:
レビューを見る
プログラマ志望の人にはぜひ読んで欲しい。
プログラマになってしまうと、仕事が忙しくて読む時間がない人が大勢います。
学生のうちに読んでおくのがいいかもしれません。
goto文論争など基本的な情報の資料にもなっています。
すでにプログラマになっている人は、C言語プログラマだけに限らず、多くの方が読まれているとよいと思います。
会社が、本当にプロを養成するつもりなら、必ず読めというと思います。
会社が、読む時間を工面してくれるはずです。
会社が、一時的な金儲けだけを目指している場合には読めと言われないかもしれません。
プロとしての仕事を目指すのではなく、顧客の対応の時間を重視しているなら、読む時間を工面してくれなかもしれません。
そういう場合は隠れて読んで、3年たったら別の会社に行くのがいいかもしれません。
いずれにしても、プロとしてプログラムに向き合う時に必要なことがいろいろ搭載されています。
ps.
最初は全部理解しようと肩肘はらずに、気軽に読み進んだ方がいいかもしれません。
仕事で関係がありそうな話題になったときに、もう一度読み直してみましょう。
投稿元:
レビューを見る
本書は全てのプログラマーに捧げる、最高クラスの名著である。
ひとことで言うと、「コードスタイルとはどうあるべきか」を示した本である。ページは相当数あり、読み抜くだけでも相応の努力が必要だが、上下巻を読みきった頃にはソースコードに対する意識が変わっていることだろう。そしてきっとこう思うはずだ。「俺のコードは腐ってる」と。