OOP-তে TypeScript-এ ইন্টারফেস প্রসারিত করা
TypeScript-এ ইন্টারফেসগুলি একে অপরের থেকে উত্তরাধিকার সূত্রে পেতে পারে। এই মিথস্ক্রিয়াকে ইন্টারফেসের প্রসারণ বলা হয়।
চলুন একটি উদাহরণ দেখি। আমাদের কাছে একটি ISize ইন্টারফেস আছে বলে ধরা যাক:
interface ISize {
height: number;
width: number;
}
চলুন একটি IStyle ইন্টারফেস তৈরি করি, যা ISize-কে প্রসারিত করবে:
interface IStyle extends ISize {
color: string;
}
এখন চলুন একটি Figure ক্লাস তৈরি করি, যা IStyle ইন্টারফেস বাস্তবায়ন করে। আমাদের ক্লাসটিকে ইন্টারফেসের নিজের বৈশিষ্ট্য এবং এর প্যারেন্টের বৈশিষ্ট্য উভয়ই বাস্তবায়ন করতে হবে।
চলুন এটি করা যাক:
class Figure implements IStyle {
height: number;
width: number;
color: string;
constructor(height: number, width: number, color: string) {
this.height = height;
this.width = width;
this.color = color;
}
}
চলুন কাজটি পরীক্ষা করে দেখি:
let fig = new Figure(130, 200, 'green');
console.log(fig);
salary এবং language বৈশিষ্ট্য সহ একটি IProgrammer ইন্টারফেস তৈরি করুন।
এই ইন্টারফেসটি যেন name, birthday বৈশিষ্ট্য সহ IUser-কে উত্তরাধিকার সূত্রে পায়।
Employee নামে একটি ক্লাস তৈরি করুন, যা IProgrammer বাস্তবায়ন করে।