Menu
Coddy logo textTech

요약 - 직원 계층 구조

Coddy Python 여정의 Object Oriented Programming 섹션에 포함된 레슨 — 64개 중 22번째.

challenge icon

챌린지

어려움

이 챌린지에서는 직원 계층 시스템을 구현합니다.

다음 파일들을 완성해야 합니다:

  • person.py: 이름, 나이, 그리고 소개 메서드를 가진 기본 Person 클래스를 구현하세요.
  • employee.py: Person을 상속받고 employee_idsalary를 가진 Employee 클래스를 생성하세요.
  • manager.py: 부서 관리 기능이 있는 Employee를 확장한 Manager 클래스를 구현하세요.
  • engineer.py: 프로그래밍 기술을 가진 Employee를 확장한 Engineer 클래스를 구축하세요.
  • 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())

Object Oriented Programming의 모든 레슨