Menu
Coddy logo textTech

Zusammenfassung - Mitarbeiter-Hierarchie

Teil des Abschnitts Object Oriented Programming der Python-Journey von Coddy — Lektion 22 von 64.

challenge icon

Aufgabe

Schwer

In dieser Herausforderung implementieren Sie ein Mitarbeiter-Hierarchiesystem.

Sie müssen die folgenden Dateien vervollständigen:

  • person.py: Implementieren Sie die Basisklasse Person mit name, age und einer introduction-Methode
  • employee.py: Erstellen Sie die Klasse Employee, die von Person erbt, mit employee_id und salary
  • manager.py: Implementieren Sie die Klasse Manager, die Employee erweitert, mit Abteilungsmanagement
  • engineer.py: Erstellen Sie die Klasse Engineer, die Employee erweitert, mit Programmierkenntnissen
  • technical_manager.py: Erstellen Sie TechnicalManager unter Verwendung von Mehrfachvererbung
  • hierarchy_utils.py: Implementieren Sie eine Hilfsfunktion zur Anzeige von Klassenhierarchien

Jede Datei enthält detaillierte TODO-Kommentare, die Sie durch die Implementierung führen.

Probier es selbst

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

# Testen Sie Ihre Implementierung - DIESEN TESTCODE NICHT ÄNDERN
# Instanzen erstellen
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")

# Basismethoden testen
print(person.introduce())
print(employee.introduce())
print(f"Monthly pay: ${employee.calculate_paycheck():.2f}")
print(manager.manage_team())
print(engineer.code())

# Vererbungshierarchien testen
print("\nHierarchy demonstrations:")
show_hierarchy(TechnicalManager)

# Method Resolution bei Mehrfachvererbung testen
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())

Alle Lektionen in Object Oriented Programming