Ringkasan: Hierarki Karyawan
Termasuk bagian Pemrograman Berorientasi Objek dalam perjalanan Python di Coddy. Pelajaran 22 dari 64.
Tantangan
SulitDalam tantangan ini, kamu akan menerapkan sistem hierarki karyawan.
Kamu perlu melengkapi file berikut:
person.py: Terapkan class dasarPersondengan nama, usia, dan method perkenalanemployee.py: Buat classEmployeeyang mewarisiPersondengan employee_id dan gajimanager.py: Terapkan classManageryang memperluasEmployeedengan pengelolaan departemenengineer.py: Buat classEngineeryang memperluasEmployeedengan keterampilan pemrogramantechnical_manager.py: BuatTechnicalManagermenggunakan pewarisan bergandahierarchy_utils.py: Terapkan fungsi utilitas untuk menampilkan hierarki class
Setiap file berisi komentar TODO terperinci yang memandumu dalam penerapan.
Coba sendiri
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
# Uji implementasimu. JANGAN UBAH KODE PENGUJIAN INI
# Buat instance
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")
# Uji method dasar
print(person.introduce())
print(employee.introduce())
print(f"Monthly pay: ${employee.calculate_paycheck():.2f}")
print(manager.manage_team())
print(engineer.code())
# Uji hierarki pewarisan
print("\nHierarchy demonstrations:")
show_hierarchy(TechnicalManager)
# Uji urutan penyelesaian method dalam pewarisan berganda
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())Semua pelajaran di Pemrograman Berorientasi Objek
1Dasar-Dasar OOP
File EksternalPengantar OOPclass vs objectParameter selfmethodAtributMethod Konstruktor (__init__)Rangkuman: Kalkulator Sederhana4Pewarisan
Pewarisan DasarFungsi super()Penimpaan MethodPewarisan BergandaUrutan Resolusi MethodRingkasan: Hierarki Karyawan5Polimorfisme
Meninjau Ulang Method OverridingDuck Typingclass dan method AbstrakDesain InterfaceRingkasan: Kalkulator Bentuk8Konsep OOP Lanjutan
Komposisi vs PewarisanMixinsMetode Statis dan Metode ClassDecorator ClassPengelola Konteks11Pola Desain Bagian 2
Pola PerintahPola AdapterPola DecoratorPola Template MethodPola StatePola Composite3Property class
Variabel instance vs variabel classDekorator propertyAtribut privatRangkuman: Pengelola Rekening Bank6Enkapsulasi
Anggota Public, Protected, PrivateModifier AksesPenyembunyian InformasiDecorator Property Tingkat LanjutUlasan: Sistem Catatan Siswa12Proyek: Manajemen Perpustakaan
Ikhtisar Proyekclass Buku dan PenggunaSistem PeminjamanFitur PencarianAntarmuka AdminPengujian dan IntegrasiLatihan sendiri: Compiler Python online