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


JavaScriptのオブジェクト向けについて説明します.

オブジェクト向けプログラミングとは?


これは、モデルとなる青写真を作成し、その青写真に基づいてオブジェクトを作成するプログラミングモードです.

ソース:CodeStates
このような図があると言ったら、車を作るとき、エンジン、車輪、座席などすべての車が共通の必要な部分を青写真にして、新しい車を作るときに青写真を持ってきます.
このとき、青写真をClassにしようとする新しい車、つまり、対象をInstanceと呼ぶ.
実際,javascriptには既に「オブジェクト」という語が存在するため,OOTにおける用語とよく区別することが重要である.
インスタンスを作成する方法で、汎用関数を定義するインスタンスを作成できます.
function Car(color) { };	// 클래스 생성

// 인스턴스 생성
let avante = new Car('blue');
let mini - new Car('cyan');
let beetle = new Car('red');
クラス関数を使用する場合は、newキーワードとともに使用します.クラス関数と一般関数を区別するデフォルトメソッドでは、クラスは通常、大文字と一般名詞の組合せとして宣言されます.したがって,一般的な関数については,適切な動詞と小文字を用いて宣言することが望ましい.

ES 5-クラスは関数として定義できる

function Car(brand, name, color) {
  // 인스턴스가 만들어질 때 실행되는 코드
}

ES 6-classキーワードの利用

class Car {
  constructor (brand, name, color) {
  	// 인스턴스가 만들어질 때 실행되는 코드
  }
}
最近ではES 6で導入された方法が使用されており、ここに示す関数はOOTでコンストラクション関数と呼ばれ、インスタンスの作成時に実行されます.コンストラクション関数は戻り値を作成しません.

newキーを使用したインスタンスの作成

let avante = new Car('hyundai', 'avante', 'black');
let mini = new Car('bmw', 'mini', 'white');
let beetle = new Car('volkswagen', 'beetle', 'red');
作成時にコンストラクション関数が実行され、classの設計などの変数に新しいオブジェクトが割り当てられます.各インスタンスには、クラスの一意のプロパティとメソッドがあります.