カプセル化・情報隠蔽・データ抽象化

http://d.hatena.ne.jp/satoshis/20090126/p2

うーん、「カプセル化情報隠蔽・データ抽象化」の定義なんて見たことがないのですが、ソースがどこなのか気になりますね。

Wikipedia:カプセル化

Wikipediaだと「情報の隠蔽」じゃなくて「データの隠蔽」になっててカプセル化の下位概念になってますね。

個人的には「カプセル化」を好んで使うけど、「カプセル化」の概念で大事なのは「何で」「何を」カプセル化するのか?って所で、ほとんどの人が「?で」「データを」カプセル化になってしまっているんですよね。

スケールをオブジェクトにロックすれば「インターフェースで」「実装を」カプセル化するというのが正しい。

カプセル化の素晴らしいところはメソッドでメソッドを隠したり、オブジェクト郡でオブジェクト郡をカプセル化できたり、扱う対象をスケールさせられるところなんですが、これはさらに一般的ではないからなー。