Warisan dan Antara Muka dalam TypeScript: Penggunaan dan Faedah

Warisan dan antara muka ialah dua konsep penting dalam TypeScript, dan ia memainkan peranan penting dalam pembangunan aplikasi. Berikut ialah perbincangan tentang konsep ini dan kegunaan serta faedahnya dalam pembangunan aplikasi:

 

Warisan

Warisan dalam TypeScript membenarkan subkelas untuk mewarisi sifat dan kaedah daripada superclass. Subkelas boleh memanjangkan dan mempertingkatkan ciri sedia ada superclass.

Untuk menggunakan warisan, kami menggunakan extends kata kunci untuk mengisytiharkan bahawa subkelas mewarisi daripada superclass.

Sebagai contoh:

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 daripada Animal kelas dan memanjangkannya dengan menambah bark() kaedah. Kelas Dog boleh menggunakan eat() kaedah yang diwarisi daripada Animal kelas.

 

Antara muka

Antara muka dalam TypeScript menentukan set sifat dan kaedah yang mesti dipatuhi oleh objek. Mereka menentukan kontrak untuk objek yang berkongsi ciri biasa.

Untuk menggunakan antara muka, kami menggunakan interface kata kunci untuk mengisytiharkan antara muka.

Sebagai contoh:

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 antara muka mentakrifkan calculateArea() kaedah yang mesti dipatuhi oleh setiap objek. Kelas Circle melaksanakan Shape antara muka dan menyediakan pelaksanaan untuk calculateArea() kaedah tersebut.

 

Faedah warisan dan antara muka dalam pembangunan aplikasi:

  • Warisan memudahkan penggunaan semula kod dan mengurangkan pertindihan. Apabila subkelas mewarisi daripada superclass, ia boleh menggunakan semula sifat dan kaedah yang telah dilaksanakan dalam superclass.
  • Antara muka mentakrifkan kontrak dan menguatkuasakan pematuhan kepada antara muka yang ditentukan, memastikan objek memenuhi kriteria yang diperlukan. Mereka mewujudkan struktur umum untuk pembangunan dan penggunaan objek.
  • Kedua-dua warisan dan antara muka menyumbang kepada fleksibiliti dalam reka bentuk dan pembangunan aplikasi, membolehkan konsep seperti polimorfisme dan penggunaan semula kod.

 

Secara ringkasnya, pewarisan dan antara muka adalah konsep penting dalam TypeScript. Mereka memainkan peranan penting dalam pembangunan aplikasi, mempromosikan penggunaan semula kod, fleksibiliti dan pematuhan kepada kontrak yang ditentukan.