オブジェクト指向について。この記事はスタブです。
オブジェクト指向プログラムでgetter/setterメソッドを使わなければならない10の理由 
http://fukumori.org/oo/why_use_getters_and_setters_j.html
継承と集約について 
is-a の関係だからといって安易に継承にしてはいけない場合もある。例えば、ウィンドウシステムにおいて、全てのウィンドウが四角形だからといってWindowクラスをRectangleクラスのサブクラスにすべきではない。WindowがRegtangleのインスタンスを保持するべきである。
また、ウィンドウがスクロールできるからといってScrollableなどというインターフェイスを実装するのもよくない。縦スクロールできるウィンドウ、横スクロールだけできるウィンドウ、両方できるウィンドウを作りたくなったとき困ってしまう。
スクロールバーをウィンドウのコンポーネントとすべきである。
一般に、振る舞い(behavior)は継承よりもコンポーネントとした方が再利用しやすくなる。
一般的に、長方形・正方形、整数・実数・複素数・四元数など数学上の概念をそのままクラス階層にすると破綻する。
参考:
http://www.laputan.org/drc/drc.html
http://www.objectclub.jp/community/memorial/homepage3.nifty.com/masarl/article/nifty-logs/circle-isa-rectangle.html
雑多なメモ 
オブジェクト指向の何が良いのか 
http://itpro.nikkeibp.co.jp/article/COLUMN/20061107/252787/
「オブジェクト指向の何が良いのか」という疑問は,1960年代のSimula言語の時代からあるようですが,いまだにはっきりとした答えは出ていないように思われます(特に通常の抽象データ型ないしモジュール・システムや,関数型言語のクロージャなどと比較した場合)。
関数、オブジェクト、クロージャの使い分けについて(id:brazil) 
http://d.hatena.ne.jp/brazil/20060131/1138692196