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

نظام إدارة الجامعات

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

challenge icon

التحدي

في هذا التحدي، لدينا نظام جامعي يضم أنواعاً مختلفة من الأشخاص (طلاب، أساتذة) لديهم أدوار وسلوكيات مختلفة.

1. أكمل فئة Person:

  • أضف طريقة introduce() التي تعيد "Hi, I'm ${name}"

2. أكمل فئة Student:

  • قم بعمل Override للطريقة introduce() لتعيد ${super.introduce()}, a ${this.major} student. مثال: "Hi, I'm Alice, a Computer Science student"
  • أضف طريقة addGrade(grade) التي تأخذ درجة بين 0 و 100
    • التحقق (Validation): تحقق مما إذا كانت الدرجة بين 0 و 100
    • إذا كانت صالحة: أضفها إلى مصفوفة this.grades
    • إذا كانت غير صالحة: قم بتسجيل (Log): "Grade must be between 0 and 100"

3. أكمل فئة Professor:

  • قم بعمل Override للطريقة introduce() لتعيد “Prof. ${name} from ${department}”. مثال: “Prof. Smith from Computer Science”

جرّب بنفسك

import { Person } from './person.js';
import { Student } from './student.js';
import { Professor } from './professor.js';

// إنشاء الأشخاص
const student1 = new Student('Alice', 20, 'Computer Science');
const prof1 = new Professor('Dr. Johnson', 50, 'Mathematics');

console.log(student1.introduce()); // "مرحباً، أنا أليس، طالبة في علوم الحاسوب"
console.log(prof1.introduce())     // "الأستاذ د. جونسون من قسم الرياضيات"

student1.addGrade(85);
student1.addGrade(90);
student1.addGrade(95);
console.log(`${student1.name}'s GPA: ${student1.getGPA()}`); // ~3.6

student1.addGrade(105); // يجب أن يسجل: "يجب أن تكون الدرجة بين 0 و 100"

جميع دروس Object Oriented Programming