はじめに
オブジェクト指向という概念が自分も含め難しいく奥が深いので、自分なりに要約してみました。
はじめてこの概念を聞いた方に簡単にまとめたので参考にしていただけたらなと思います。
前提知識
オブジェクトとは
JavaScriptにおけるオブジェクトとは、データや処理を一つにまとめてあるもの。
JavaScriptのデータ
JavaScriptのオブジェクトの中でいうデータとは変数のことであり、この変数の中にプロパティというハッシュ形式(キーとバリューの組み合わせ)で格納されている。
変数名 = {キー: バリュー}
| プロパティ |
JavaScriptの処理
JavaScriptのオブジェクトの中でいう処理とはメソッドと呼ばれている。メソッドとはプロパティに紐づけられた関数のことであり、関数宣言や関数式、アロー関数によって定義された一個一個の処理のことを指す。
// 関数式
変数 = function( 引数 ){
// 関数内の処理
}
オブジェクト指向とは
いくつもの変数や処理をひとまとめにしことを中心に意識しながらアプリケーションなどを実装する設計思想のこと。
一連の処理であったり、データの集まりに名前をつけてテンプレート化しておくイメージ。
メリット
• 役割ごとにオブジェクトを分けることで、実装がしやすくなる
• 役割ごとにオブジェクトを分けることで、あとからコードを改変するときも、他のオブジェクトに影響しなくなる(コードの改変がしやすくなる)
関数とオブジェクトの違い
関数は一つの処理を定義したもの。
オブジェクトとはそれら一つ一つの処理から作られる一連の処理や処理に必要なプロパティをひとまとめにしたもの。