torutkのブログ

ソフトウェア・エンジニアのブログ

Java読書会の日

アジャイルソフトウェア開発の奥義
アジャイルソフトウェア開発の奥義」の3回目の読書会です。設計原則のSRP:The Simgle Responsibility Principle、OCP:The Open-Close PrincipleとLSP:The Liskov Substitution Principleまで進みました。オブジェクト指向設計の肝を舐めた回で、かなり頭脳的にハードでした。

読書会雑記

今回の課題図書は、オブジェクト指向設計の核心とも言える部分です。
また、とても有益な議論が繰り広げられました。クラス階層の構成、テンプレート(ジェネリクス)の必要性についてなど。会社でここまでの議論をすることはまずないだろうな。。。昨年夏にこの本を買って読んだときは、さらっと流していた部分にこれだけ濃いエッセンスがあったことに気が付きました。本の読み方というのはなるほど難しい。

クラス図についての疑問

継承は、非常に制約の強い結びつきで、集約は弱い結びつき、この両者がクラス図上では関連の線の記号の違いでしか表わされない。継承は本来内面をそっくり共有してしまうに近いのに、クラス図上では異なるように見える。これが継承が多用される一因になっているのかもしれない。

C++のconstについて

参加者から、「constは一つのオブジェクトをimmutable、unimmutableの両方に対応させるもの」との言があり、言いえて妙と感じました。また、書籍のC++の例では、バイナリコンパチビリティがないね(クライアントは再コンパイルが必要)との話題もでました。