Warisan dan antarmuka adalah dua konsep penting dalam TypeScript
, dan mereka memainkan peran penting dalam pengembangan aplikasi. Berikut pembahasan konsep-konsep tersebut beserta kegunaan dan manfaatnya dalam pengembangan aplikasi:
Warisan
Inheritance TypeScript
memungkinkan subclass untuk mewarisi properti dan metode dari superclass. Subclass dapat memperluas dan meningkatkan fitur superclass yang ada.
Untuk menggunakan pewarisan, kami menggunakan extends
kata kunci untuk menyatakan bahwa subclass mewarisi dari superclass.
Misalnya:
class Animal {
name: string;
constructor(name: string) {
this.name = name;
}
eat() {
console.log(this.name + " is eating.");
}
}
class Dog extends Animal {
bark() {
console.log(this.name + " is barking.");
}
}
const dog = new Dog("Buddy");
dog.eat(); // Output: "Buddy is eating."
dog.bark(); // Output: "Buddy is barking."
Dalam contoh di atas, Dog
kelas mewarisi dari Animal
kelas dan memperluasnya dengan menambahkan bark()
metode. Kelas Dog
dapat menggunakan eat()
metode yang diwarisi dari Animal
kelas.
Antarmuka
Antarmuka dalam TypeScript
menentukan sekumpulan properti dan metode yang harus dipatuhi oleh suatu objek. Mereka menentukan kontrak untuk objek yang berbagi fitur umum.
Untuk menggunakan antarmuka, kami menggunakan interface
kata kunci untuk mendeklarasikan antarmuka.
Misalnya:
interface Shape {
calculateArea(): number;
}
class Circle implements Shape {
radius: number;
constructor(radius: number) {
this.radius = radius;
}
calculateArea() {
return Math.PI * this.radius * this.radius;
}
}
const circle = new Circle(5);
console.log(circle.calculateArea()); // Output: 78.53981633974483
Dalam contoh di atas, Shape
antarmuka mendefinisikan calculateArea()
metode yang harus dipatuhi oleh setiap objek. Kelas Circle
mengimplementasikan Shape
antarmuka dan menyediakan implementasi untuk calculateArea()
metode tersebut.
Manfaat pewarisan dan antarmuka dalam pengembangan aplikasi:
- Warisan memfasilitasi penggunaan kembali kode dan mengurangi duplikasi. Ketika sebuah subclass mewarisi dari superclass, itu dapat menggunakan kembali properti dan metode yang sudah diterapkan di superclass.
- Antarmuka menentukan kontrak dan menegakkan kepatuhan pada antarmuka yang ditentukan, memastikan bahwa objek memenuhi kriteria yang diperlukan. Mereka membangun struktur umum untuk pengembangan dan penggunaan objek.
- Warisan dan antarmuka berkontribusi pada fleksibilitas dalam desain dan pengembangan aplikasi, memungkinkan konsep seperti polimorfisme dan penggunaan kembali kode.
Singkatnya, pewarisan dan antarmuka adalah konsep penting dalam TypeScript
. Mereka memainkan peran penting dalam pengembangan aplikasi, mempromosikan penggunaan kembali kode, fleksibilitas, dan kepatuhan terhadap kontrak yang ditentukan.