Menu
Coddy logo textTech

סיכום – היררכיית עובדים

חלק מהיחידה תכנות מונחה עצמים במסלול ה-Python של Coddy. שיעור 22 מתוך 64.

challenge icon

אתגר

קשה

באתגר הזה תממשו מערכת היררכיית עובדים.

עליכם להשלים את הקבצים הבאים:

  • person.py: ממשו את מחלקת הבסיס Person עם שם, גיל ומתודה להצגה עצמית
  • employee.py: צרו את המחלקה Employee, שיורשת מ־Person וכוללת employee_id ושכר
  • manager.py: ממשו את המחלקה Manager, שמרחיבה את Employee וכוללת ניהול מחלקה
  • engineer.py: בנו את המחלקה Engineer, שמרחיבה את Employee וכוללת כישורי תכנות
  • technical_manager.py: צרו את TechnicalManager באמצעות ירושה מרובה
  • hierarchy_utils.py: ממשו פונקציית עזר להצגת היררכיות של מחלקות

כל קובץ מכיל הערות TODO מפורטות שמנחות אתכם במהלך המימוש.

נסו בעצמכם

from person import Person
from employee import Employee
from manager import Manager
from engineer import Engineer
from technical_manager import TechnicalManager
from hierarchy_utils import show_hierarchy

# בדקו את המימוש שלכם - אל תשנו את קוד הבדיקה הזה
# צרו מופעים
person = Person("John Smith", 30)
employee = Employee("Alice Johnson", 35, "E12345", 60000)
manager = Manager("Bob Williams", 45, "M54321", 85000, "Marketing")
engineer = Engineer("Carol Davis", 28, "E98765", 75000, "Python")
tech_mgr = TechnicalManager("Dave Wilson", 40, "TM24680", 90000, "R&D", "Java")

# בדקו מתודות בסיסיות
print(person.introduce())
print(employee.introduce())
print(f"Monthly pay: ${employee.calculate_paycheck():.2f}")
print(manager.manage_team())
print(engineer.code())

# בדקו היררכיות ירושה
print("\nHierarchy demonstrations:")
show_hierarchy(TechnicalManager)

# בדקו את סדר בחירת המתודות בירושה מרובה
print("\nTechnical Manager tests:")
print(tech_mgr.introduce())
print(f"Monthly pay: ${tech_mgr.calculate_paycheck():.2f}")
print(tech_mgr.manage_team())
print(tech_mgr.code())

כל השיעורים ביחידה תכנות מונחה עצמים

תרגלו בעצמכם: קומפיילר Python אונליין