Menu
Coddy logo textTech

Özet - Çalışan Hiyerarşisi

Coddy'nin Python Journey'sinin Nesne Yönelimli Programlama bölümünün bir parçası. Ders 22 / 64.

challenge icon

Görev

Zor

Bu meydan okumada bir çalışan hiyerarşisi sistemi uygulayacaksınız.

Aşağıdaki dosyaları tamamlamanız gerekecek:

  • person.py: Ad, yaş ve tanıtma metoduna sahip temel Person sınıfını uygulayın
  • employee.py: Person sınıfından kalıtım alan, employee_id ve maaş bilgisine sahip Employee sınıfını oluşturun
  • manager.py: Departman yönetimine sahip, Employee sınıfını genişleten Manager sınıfını uygulayın
  • engineer.py: Programlama becerilerine sahip, Employee sınıfını genişleten Engineer sınıfını oluşturun
  • technical_manager.py: Çoklu kalıtım kullanarak TechnicalManager sınıfını oluşturun
  • hierarchy_utils.py: Sınıf hiyerarşilerini görüntülemek için yardımcı işlevi uygulayın

Her dosya, uygulama boyunca size rehberlik eden ayrıntılı TODO yorumları içerir.

Kendin dene

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

# Uygulamanızı test edin - BU TEST KODUNU DEĞİŞTİRMEYİN
# Örnekler oluşturun
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")

# Temel metotları test edin
print(person.introduce())
print(employee.introduce())
print(f"Monthly pay: ${employee.calculate_paycheck():.2f}")
print(manager.manage_team())
print(engineer.code())

# Kalıtım hiyerarşilerini test edin
print("\nHierarchy demonstrations:")
show_hierarchy(TechnicalManager)

# Çoklu kalıtımda metot çözümlemesini test edin
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())

Nesne Yönelimli Programlama bölümündeki tüm dersler

Kendi başına pratik yap: Online Python derleyicisi