वंशानुक्रम और इंटरफ़ेस 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 । वे एप्लिकेशन विकास, कोड के पुन: उपयोग, लचीलेपन और निर्दिष्ट अनुबंधों के पालन को बढ़ावा देने में महत्वपूर्ण भूमिका निभाते हैं।