tkenichi の日記

毒舌皮肉系恥さらし日記

マルチパラダイムデザイン

f:id:tkenichi:20101118133417j:image

新装版 マルチパラダイムデザイン

新装版 マルチパラダイムデザイン

忙しくてすっかりご無沙汰してしまった。
年末年始で少しまとまった時間があるので、普段読めないような概念的な本を読むことにする。

最近感じるのは、プログラミングの世界と他の分野との境目が低くなっているというか、問題意識が似てきている、ということ。大きなシステムの設計は、結局実世界の組織論と似てくるし、最適化プログラムは意思決定論に通じてくる。ソフトウェアの質を高めるのに、上位からトップダウンじゃなくてリファクタリングやテストドリブンが効果的だということも、人間としても内省して自分を見直すのが大事だよ、ってことかも。

脱線してしまったが、この本はパラダイムの話。参考文献にトーマス・クーンが挙がっていたりして、哲学の本なのかプログラムの本なのか分からなくなってくる。とは言っても中身はやはりソフトウェア開発の話で、手法としてはドメイン分析に多くの紙数を割いている。システム構築において、共通な機能をどのようにまとめて過去の資産を使うか、拡張性をどこまで考慮するか、そしてそれらをどのように実現するか。具体的にはC++の継承、テンプレート、プリプロセッサをどのように使い分けるか。ここではオブジェクト指向は絶対的な枠組みとして君臨するのではなく、ソリューションの一つ。プログラムのコツが書いてあるというよりも、頭の中に考え方のフレームワークを作っていくような本。

内容は結構高度で、どこまで理解できたかどうかは分からないが、自分の問題に使う場合に、テンプレートやプリプロセッサの使いどころのヒントにはなりそうな気がする。