ઇનહેરિટન્સ અને ઇન્ટરફેસ TypeScript: ઉપયોગ અને લાભો

ઇનહેરિટન્સ અને ઇન્ટરફેસ એ બે મહત્વપૂર્ણ વિભાવનાઓ છે TypeScript, અને તેઓ એપ્લિકેશન ડેવલપમેન્ટમાં મહત્વપૂર્ણ ભૂમિકા ભજવે છે. અહીં આ વિભાવનાઓ અને એપ્લિકેશન વિકાસમાં તેમના ઉપયોગો અને ફાયદાઓની ચર્ચા છે:

 

વારસો

ઇનહેરિટન્સ TypeScript સબક્લાસને સુપરક્લાસમાંથી પ્રોપર્ટીઝ અને પદ્ધતિઓનો વારસો મેળવવાની મંજૂરી આપે છે. સબક્લાસ સુપરક્લાસની હાલની સુવિધાઓને વિસ્તૃત અને વધારી શકે છે.

વારસાનો ઉપયોગ કરવા માટે, અમે extends કીવર્ડનો ઉપયોગ એ જાહેર કરવા માટે કરીએ છીએ કે સબક્લાસ સુપરક્લાસમાંથી વારસામાં આવે છે.

દાખ્લા તરીકે:

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."  

ઉપરના ઉદાહરણમાં, Dog વર્ગ વર્ગમાંથી વારસામાં મેળવે છે Animal અને પદ્ધતિ ઉમેરીને તેને વિસ્તૃત કરે છે bark(). વર્ગ વર્ગમાંથી વારસામાં મળેલી પદ્ધતિનો Dog ઉપયોગ કરી શકે છે. eat() Animal

 

ઇન્ટરફેસ

ઈન્ટરફેસ TypeScript ગુણધર્મો અને પદ્ધતિઓના સમૂહને વ્યાખ્યાયિત કરે છે કે જે ઑબ્જેક્ટનું પાલન કરવું આવશ્યક છે. તેઓ એવા ઑબ્જેક્ટ્સ માટે કરારનો ઉલ્લેખ કરે છે જે સામાન્ય સુવિધાઓને શેર કરે છે.

ઈન્ટરફેસનો ઉપયોગ કરવા માટે, અમે interface ઈન્ટરફેસ જાહેર કરવા માટે કીવર્ડનો ઉપયોગ કરીએ છીએ.

દાખ્લા તરીકે:

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  

ઉપરોક્ત ઉદાહરણમાં, Shape ઈન્ટરફેસ એક calculateArea() પદ્ધતિને વ્યાખ્યાયિત કરે છે જે દરેક ઑબ્જેક્ટનું પાલન કરવું આવશ્યક છે. વર્ગ ઇન્ટરફેસનો Circle અમલ કરે છે Shape અને પદ્ધતિ માટે અમલીકરણ પ્રદાન કરે છે calculateArea().

 

એપ્લિકેશન ડેવલપમેન્ટમાં વારસા અને ઇન્ટરફેસના ફાયદા:

  • વારસા કોડ પુનઃઉપયોગની સુવિધા આપે છે અને ડુપ્લિકેશન ઘટાડે છે. જ્યારે સબક્લાસ સુપરક્લાસમાંથી વારસામાં મળે છે, ત્યારે તે સુપરક્લાસમાં પહેલાથી જ અમલમાં મુકેલ ગુણધર્મો અને પદ્ધતિઓનો ફરીથી ઉપયોગ કરી શકે છે.
  • ઈન્ટરફેસ કોન્ટ્રેક્ટને વ્યાખ્યાયિત કરે છે અને ઉલ્લેખિત ઈન્ટરફેસનું પાલન કરે છે, તેની ખાતરી કરીને કે વસ્તુઓ જરૂરી માપદંડોને પૂર્ણ કરે છે. તેઓ વસ્તુઓના વિકાસ અને ઉપયોગ માટે એક સામાન્ય માળખું સ્થાપિત કરે છે.
  • વારસા અને ઇન્ટરફેસ બંને ડિઝાઇન અને એપ્લિકેશન ડેવલપમેન્ટમાં લવચીકતામાં ફાળો આપે છે, પોલીમોર્ફિઝમ અને કોડ પુનઃઉપયોગ જેવા ખ્યાલોને સક્ષમ કરે છે.

 

સારાંશમાં, વારસો અને ઇન્ટરફેસ એ મહત્વના ખ્યાલો છે TypeScript. તેઓ એપ્લીકેશન ડેવલપમેન્ટ, કોડના પુનઃઉપયોગને પ્રોત્સાહન આપવા, સુગમતા અને નિર્દિષ્ટ કરારોનું પાલન કરવામાં નિર્ણાયક ભૂમિકા ભજવે છે.