shzxcv

コンピュータサイエンス、経営学など

オブジェクト指向プログラミング

## 特徴と謳っているもの

- カプセル化

- 継承

- ポリモーフィズム

 

## 実態

### カプセル化

C言語においても、ヘッダーファイルでの宣言でカプセル化可能。また、クラスのメンバについてはprivateにしても、外部からファイルでの確認ができるため、カプセル化C言語の方が高い

 

### 継承

C言語でも関数ポインタを使って実現できていた。

ただ、多重継承は少し大変。

 

### ポリモーフィズム

こちらも関数ポインタを参照して可能だが、抽象インターフェースだけではなく、具象インターフェースも知る必要があるので、依存度が高い。

大変。

 

## まとめ

オブジェクト指向によって得られるもので非常に重要なのは、ポリモーフィズムの抽象インターフェースによってレイヤードアーキテクチャコンポーネント同士の結合度を下げること(DIP)、またDIでテストをしやすくすること。