Menu
Coddy logo textTech

Récapitulatif - Hiérarchie des employés

Fait partie de la section Object Oriented Programming du Journey Python de Coddy. Leçon 22 sur 64.

challenge icon

Défi

Difficile

Dans ce défi, vous allez implémenter un système de hiérarchie d'employés.

Vous devrez compléter les fichiers suivants :

  • person.py : Implémentez la classe de base Person avec name, age et une méthode d'introduction
  • employee.py : Créez la classe Employee héritant de Person avec employee_id et salary
  • manager.py : Implémentez la classe Manager étendant Employee avec la gestion de département
  • engineer.py : Construisez la classe Engineer étendant Employee avec des compétences en programmation
  • technical_manager.py : Créez TechnicalManager en utilisant l'héritage multiple
  • hierarchy_utils.py : Implémentez une fonction utilitaire pour afficher les hiérarchies de classes

Chaque fichier contient des commentaires TODO détaillés vous guidant tout au long de l'implémentation.

Essayez vous-même

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

# Testez votre implémentation - NE MODIFIEZ PAS CE CODE DE TEST
# Créer des instances
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")

# Tester les méthodes de base
print(person.introduce())
print(employee.introduce())
print(f"Monthly pay: ${employee.calculate_paycheck():.2f}")
print(manager.manage_team())
print(engineer.code())

# Tester les hiérarchies d'héritage
print("\nHierarchy demonstrations:")
show_hierarchy(TechnicalManager)

# Tester la résolution de méthode dans l'héritage multiple
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())

Toutes les leçons de Object Oriented Programming

Entraînez-vous par vous-même : Compilateur Python en ligne