Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

فئة الكتاب مع الـ Composition

جزء من قسم Object Oriented Programming في رحلة JavaScript على Coddy. الدرس 51 من 56.

challenge icon

التحدي

إنشاء فئة Book باستخدام التركيب (Composition)

مهمتك:

  1. في الملف المسمى Book.js، قم باستيراد فئة Author في الأعلى
  2. قم بإنشاء وتصدير فئة Book تحتوي على:
    • حقول خاصة: #title، و #author، و #isCheckedOut
    • منشئ (Constructor) يأخذ title و author
    • اثنان من دوال الجلب (getters): title و authorInfo الذي يعيد اسم المؤلف
  3. في main.js، أضف استيراد فئة Book

كيفية تطبيق التركيب (Composition) هنا:

التركيب يعني علاقة "يحتوي على" (has-a). في فئة Book الخاصة بنا:

  • الكتاب يحتوي على مؤلف (Book HAS-AN Author) (وليس "هو" مؤلف "is-an" Author)
  • يحتوي الكتاب contains على مثيل (instance) من المؤلف كأحد مكوناته
  • المؤلف موجود بشكل منفصل ويمكن استخدامه من قبل عدة كتب
  • هذا هو التركيب: بناء كائنات معقدة (Book) من كائنات أبسط (Author)

جرّب بنفسك

import { Author } from './Author.js';

// TODO: استيراد فئة Book

// اختبارات
const author = new Author('J.K. Rowling');
const book = new Book('Harry Potter', author);

console.log('Book title:', book.title); // يجب أن تكون المخرجات: "Book title: Harry Potter"
console.log('Author:', book.authorInfo); // يجب أن تكون المخرجات: "Author: J.K. Rowling"

جميع دروس Object Oriented Programming

تدرّب بنفسك: مترجم JavaScript عبر الإنترنت