あらすじ
ソフトウエア開発の方法論を幅広く網羅した入門書。上巻は設計やプログラミング、下巻はテストやデバッグを扱う。1993年発行の第1版を、Webアプリケーションの普及などを踏まえて大幅に改定した。著者はソフトウエア工学の第一人者で、知識体系「SWEBOK」の構築を主導する。計1200ページを超える大部だが、ソフト開発プロセスを建築設計にたとえるなど、難解になりがちな内容を分かりやすくまとめている。
...続きを読む感情タグBEST3
Posted by ブクログ
下巻で扱われるのはコードの改良、システムの考察、そしてソフトウェア職人気質だ。
テスト、コラボレーティブな開発(ペアプログラミング)にコードチューニング、リファクタリングが一つの書籍という体系に纏められているのは改めて素晴らしいことだ。「コンプリート」の名の通り、優れたコードコンストラクションを実現するために必要な要素がギュッと詰まっている。たとえばよりよいコメントの書き方、Lint使用の推奨など現代のプログラミングの礎となっている。
もちろん、時代柄古びてしまっているところはある。
それを補ってあまりあるほど本書は魅力的であり、また現代のエンジニアにとっても変わらず必修科目であるといえるだろう。
Posted by ブクログ
全てのプログラマにとって有益な本と思います。この本に記された具体的なアドバイスに従うことこそ、高品質ソフトウェアへの一歩になるに違いありません。
なお、テストエンジニアは「第20章 ソフトウェアの品質」、「第22章 デベロッパーテスト」、「第23章 デバッグ」、「第27章 プログラムサイズが及ぼす影響」、「第30章 プログラミングツール」、「第34章 ソフトウェア職人気質とは」等々がある下巻の方が興味深く読み進めることができるかもしれません。
Posted by ブクログ
チューニング・リファクタリング・レイアウトなど高度な技術を詳細に解説
よりよりプログラミングを行う方法について書かれた本の下巻。下巻では,ソフトウェアの品質や管理についての言及が多くなっており,より高度で上級者向けの内容になっていた。その中で,チューニングやレイアウトについて書かれていて興味を持った。
例えば,if文やfor文を書くときの波括弧をどう書くか?ステートメントの開始と終了という概念から,どういうふうに考えるのかということがかなり詳しく書かれている。チューニングやその他の話題についても,筆者の主観であったとしても,なぜこれがだめでこれがいいのかという点が非常に詳しく書かれており,考え方がとても参考になった。
自分の経験がまだあまりないのもあり,名前の命名規則などよりコーディングについて直接的な内容が多かった上巻に比べて,有用度は劣るがそれでも手元においておきたいと思える有用な本だった。
Posted by ブクログ
昔仕事で読んだ本。業界ではよくある「より綺麗なプログラムを書く本」だ。この手の本は、数年に1回バズる印象を私は持っている。
この本はマイクロソフト公式を売りにしている。どこまで社内で活用されているかは分からないが、しっかりした内容はさすがあのソフトウェア"Windows"を作っているだけある、と思わせる構成。
一つ一つは深い話ではない。されど、それを組織で徹底して意識統一できるかが重要な気がしている。
下巻はコード改良・システムの考察・職人気質。
Posted by ブクログ
すぐれたプログラムを書く上で必要なスキルのうち、ドキュメント化やデバッグ、ビルドなど、直接的にコードを書く以外のスキル・ノウハウについて述べている。
この辺を念頭に置いた上でコードを書くと、よいコードを書けるのでやっぱりプログラミング中に手元に置いておきたい本。
Posted by ブクログ
上巻のコーディングから若干はなれて入るが、必読には代わりはない。
コーディングから少し距離を置いて若干抽象的な内容を扱うので辛いかもしれないが、むしろこちらのほうが必読度は上。
Posted by ブクログ
基礎テストに最低限必要なテストケース数
1.ルーチンの直線パスを1とする。
2.if,while,repeat,for,and,orで1追加。
3.case分のcaseごとに1追加。defaultがなければ1追加。
境界分析は有効。1つ違いエラーはよくある。値に最小値や最大値がある場合もテストが必要。
悪いデータ
・データが小さすぎる(またはデータがない)
・データが大きすぎる
・データの種類が正しくない
・データのサイズが正しくない
・データが初期化されていない
テストは自動化が重要。今ならJenkinsかな。