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

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