そもそもカプセル化とは何か?
オブジェクト指向の特徴の1つに、カプセル化があります。カプセル化によって、利用者は、中身の詳しい作りを知らなくても、その振る舞いだけを知っていれば、クラスを利用することができます。
カプセル化によって、クラスの仕様と実装は、まったく別物となります。振る舞いの仕様を満たしていれば、中身をどのように実装しようとも自由です。そのため、時には仕様と実装が大きくかけ離れたクラスができることもあるそうです。
オブジェクト指向
オブジェクト指向は、ひとことでいうと「いかに効率よく開発を行うか」を突き詰めた考え方です。
大規模なシステムやアプリケーションの開発では、大量のプログラムを扱っていきます。
大量のプログラムを扱ううえでは、「わかりやすさ」が重要になってきます。
そのわかりやすさを実現しているのは、オブジェクト指向の名前にもなっている「オブジェクト = モノ」という概念が重要です。
そしてこの「オブジェクト = モノ」という概念において、「モノ同士の関係性を作っていく考え方」も重要になってきます。
「モノ」と「モノ同士の関係性」を考え作っていくプロセスを「設計」と呼びます。
設計するときには、オブジェクト指向の3大要素と言われる「カプセル化」、「継承」、「ポリモーフィズム」という考え方が必要になってきます。
これから先は、「設計」、「カプセル化」、「継承」、「ポリモーフィズム」について説明していきます!
なおこちらの記事で、オブジェクト指向の概念を解説していますので、ざっくりつかむことができるでしょう。