今回は、TypeScriptのクラスとオブジェクト指向プログラミング(OOP)について解説します。プログラミングを始めたばかりの方でもわかりやすく説明するので、ぜひ最後まで読んでみてくださいね。
オブジェクト指向プログラミング、略してOOPは、プログラムを「オブジェクト」を使って作る考え方です。オブジェクトとは、データとそのデータを使うための機能(メソッド)をまとめたものです。
OOPには、いくつかの基本要素があります。
それでは、TypeScriptでのクラスの使い方を見ていきましょう。以下は、簡単なクラスの例です。
class Dog {
// プロパティ
name: string;
// コンストラクタ
constructor(name: string) {
this.name = name;
}
// メソッド
bark() {
console.log(`${this.name} がワンワン!`);
}
}
上の例では、Dogというクラスを定義しました。このクラスを使って、実際の犬を表すオブジェクトを作ってみましょう。
const myDog = new Dog("ポチ");
myDog.bark(); // ポチ がワンワン!
次に、継承について見てみましょう。継承を使うと、既存のクラスを基に新しいクラスを作ることができます。以下の例を見てみましょう。
class BreedDog extends Dog {
breed: string;
constructor(name: string, breed: string) {
super(name); // 親クラスのコンストラクタを呼び出す
this.breed = breed;
}
describe() {
console.log(`${this.name} は${this.breed}犬です!`);
}
}
const myBreedDog = new BreedDog("レックス", "ラブラドール");
myBreedDog.bark(); // レックス がワンワン!
myBreedDog.describe(); // レックス はラブラドール犬です!
クラスやオブジェクトの考え方を理解することで、より効率的にプログラムを書くことができるようになります。