تطبيق الواجهات باستخدام الفئات
أَلزموا الفئة ببنية محددة باستخدام الكلمة المفتاحية implements
تطبيق الواجهات باستخدام الفئات درس مجاني في TypeScript Academy على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في TypeScript Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة TypeScript Academy 4 دروس في المجموع.
مرحبًا
الاستخدام الأساسي لـ implements
interface Printable {
print(): void;
}
class Document implements Printable {
print() { console.log('Printing...'); }
}تؤدي الأعضاء المفقودة إلى أخطاء
interface Serializable { serialize(): string; }
// Error: Class 'Broken' incorrectly implements interface 'Serializable'
// class Broken implements Serializable {}تطبيق واجهات متعددة
interface Flyable { fly(): void; }
interface Swimmable { swim(): void; }
class Duck implements Flyable, Swimmable {
fly() { console.log('Flying'); }
swim() { console.log('Swimming'); }
}لا توفر interface تطبيقًا
استخدام implements مع الأعضاء الاختيارية
interface Logger {
log(msg: string): void;
warn?(msg: string): void; // optional
}
class SimpleLogger implements Logger {
log(msg: string) { console.log(msg); }
// warn is not required
}استخدام الواجهة لحقن التبعيات
interface Storage { save(data: string): void; }
class Service {
constructor(private storage: Storage) {}
run() { this.storage.save('data'); }
}
class LocalStorage implements Storage {
save(data: string) { localStorage.setItem('key', data); }
}المقارنة بين extends وimplements
صنف يطبّق واجهة ويمدّد صنفًا
class Animal { breathe() { return 'breathing'; } }
interface Trainable { train(): void; }
class Dog extends Animal implements Trainable {
train() { console.log('Sit!'); }
}تطبيقات الواجهات العامة
interface Repository<T> {
findById(id: number): T | null;
}
class UserRepo implements Repository<User> {
findById(id: number): User | null {
return null; // stub
}
}أمان الأنواع في implements
تحقّق سريع
مراجعة
الأسئلة الشائعة
هل درس «تطبيق الواجهات باستخدام الفئات» مجاني؟
نعم — نص درس «تطبيق الواجهات باستخدام الفئات» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة TypeScript Academy، انتقل إلى CoddyKit PRO. تتضمن دورة TypeScript Academy 4 دروس في المجموع.
ماذا ستتعلم في «تطبيق الواجهات باستخدام الفئات»؟
أَلزموا الفئة ببنية محددة باستخدام الكلمة المفتاحية implements تتمرن على TypeScript Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ TypeScript Academy؟
لا تُشترط خبرة سابقة. TypeScript Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.
كم من الوقت يستغرق درس «تطبيق الواجهات باستخدام الفئات»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس TypeScript Academy هذا؟
نعم. كل درس في TypeScript Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- فئات TypeScript والمنشئات
- معدّلات public وprivate وprotected
- خصائص readonly وخصائص المعاملات
- تطبيق الواجهات باستخدام الفئات