Menu
Coddy logo textTech

Récapitulatif - Hiérarchie des employés

Fait partie de la section Programmation orientée objet 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 des employés.

Vous devrez compléter les fichiers suivants :

  • person.py : implémenter la classe de base Person avec un nom, un âge et une méthode de présentation
  • employee.py : créer la classe Employee héritant de Person, avec un identifiant d’employé et un salaire
  • manager.py : implémenter la classe Manager étendant Employee, avec la gestion d’un service
  • engineer.py : construire la classe Engineer étendant Employee, avec des compétences en programmation
  • technical_manager.py : créer TechnicalManager en utilisant l’héritage multiple
  • hierarchy_utils.py : implémenter une fonction utilitaire pour afficher les hiérarchies de classes

Chaque fichier contient des commentaires TODO détaillés qui vous guideront dans 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 Programmation orientée objet

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