≪ Today I learned. RSS購読
公開日
タグ
著者
ダーシノ(@bc_rikko)

カプセル化と情報隠蔽

プログラミングにおけるカプセル化と情報隠蔽は、同じ意味として使われることが多い。しかし、厳密にはちょっとだけ異なる。

カプセル化

関連性の強いデータ群とロジック郡を、モジュールという膜で包み込むことを、カプセル化と呼んでいます

プリンシプル オブ プログラミング

カプセル化の効果は、抽象概念を分けるために使う。モジュール≒class と考えるとわかりやすいかもしれない。

情報隠蔽

モジュールの実装を、そのモジュールを使用するクライアントから隠蔽します。モジュールにどのようなデータがあり、関数がどのようなロジックで機能を実現するかを、外部から隠蔽するようにします。

プリンシプル オブ プログラミング

情報隠蔽の効果は、インターフェースをシンプルにする。隠蔽することで、モジュールの利用者は内部実装を知る必要がなくなる。