nekoTheShadow’s diary

技術ブログとして始めたはずが、読書&愚痴ブログになりました(´・ω・`)

上田勲『プリンシプルオブプログラミング: 3年目までに身に着けたい一生役立つ101の原理原則』

よいソフトウェアとは何か。あるいはよいソースコードとはどのようなものか。そうした原理原則は主に実戦と経験の中で積み重ねられてきた。もちろんよいソフトウェア/ソースコードを科学的に解明しようとする営みはあり、それがある程度の実績を上げていることは間違いない。しかし有名無名のプログラマたちが日々の実践の中で蓄積してきた知識がなによりも役立つということも事実なのである。

本書は全世界に散らばるプログラマたちが思い思いに積み上げてきたベストプラクティスをひとまとめにしたものである。タイトルにもあるとおり、101個の原理原則に簡単な解説が添えられ、ちょっとした辞書として機能している。あるいはソフトウェアを制作するうえのクックブックといってもいいかもしれない。

本書の面白いところは筆者の思想が見えないところだろう。ソフトウェア技法に関する本はたいてい、その筆者の思想が開陳されている。アジャイル開発がベスト、あるいはウォータフォールに立ち返るべきうんぬん。しかし本書はそれがない。古今東西のソフトウェア技法をとにかく収集&整理しているだけであり、ここが本書の何よりの特徴といえるだろう。


  • よかったところ
    • 全部入り! 古今東西のソフトウェア開発技法が整理収集されている。解説も特定の技法に偏ることもなく、フラットな記述に専心している。
    • それぞれの項目ごとに参考文献が提示されている。要するにその項目の"元ネタ"であり、本書の辞書性あるいは百科事典性を向上させている。
  • 悪かったところ
    • 実際のソースコードが示されていない。この点については筆者は断りを入れているものの、やはりソフトウェアについての本である以上、具体的なソースコードがあってもよかった。
    • 本書の狙いかもしれないが、項目ごとの独立性が強く、関係性が見えずらかった。たとえば項目ごとに「参照すべきほかの項目」の一覧があれば、なおよいように感じられた。