Modul+9 +Class,+Object
Modul+9 +Class,+Object
Modul Praktikum
Algoritma dan
Pemrograman
9.1 Tujuan
1. Dapat menjelaskan class dan object pada bahasa python.
2. Dapat mengimplementasikan class dan object pada pemrograman bahasa
python
9.2 Pengantar
Pemrograman Berorientasi Object (PBO) merupakan salah satu paradigma yang
diterapkan hampir di seluruh bahasa pemrograman. Konsep dasar dari PBO adalah
mengumpulkan data dan fungsi yang memiliki hubungan kedalam suatu pulau
informasi. Pulau ini disebut dengan object.
Jika dibandingkan dengan bahasa pemrograman prosedural, PBO akan melihat suatu
masalah secara keseluruhan. Dalam bahasa pemrograman prosedural suatu masalah
akan dipecahkan dengan cara memanggil prosedur yang biasa disebut dengan
function. Dalam PBO, alih-alih berurusan dengan data secara langsung PBO akan
memahami data mana yang akan digunakan dengan cara melakukan modeling. Untuk
melakukan modeling ini ada beberapa istilah yang perlu dipahami yaitu class dan
object
9.2.1 Pengenalan Class dan Object
Class merupakan sebuah blueprint dari object yang akan kita buat. Class berarti
cetakannya sedangkan object (instance) adalah hasil dari cetakan tersebut. Untuk
memahami secara lebih jelas perhatikan tabel berikut ini.
Tabel 8.1 Contoh Class dan Object
Class Object/Instance
Car Honda Jazz, Toyota Avanza, Suzuki Jimny
Cat Persia, Siam, Kucing Bengal
Coffe Americano, Capucino, Late
Dog Labrador, Husky, Buldog, Doberman
Untuk membuat sebuah class kita dapat menggunakan kode berikut ini. Nama sebuah
kelas harus diawali dengan huruf kapital.
1. class NamaKelas:
2. # atribut atau metode yang digunakan di class ini
2
Contoh dalam pembuatan class sebuah Dog
1. class Dog:
2. def __init__(self, nama, umur):
3. self.nama = nama
4. self.umur = umur
5.
6. def duduk(self):
7. print(f"{self.nama} sekarang duduk")
8.
9. def berdiri(self):
10. print(f"{self.nama} sekarang berdiri")
11.
3
9.2.4 Membuat Objeck/Instance dari class Dog
Jika sebuah class adalah blueprint maka object adalah hasil cetakannya. Mari kita buat
object dari class Dog
1. class Dog:
2. def __init__(self, nama, umur):
3. self.nama = nama
4. self.umur = umur
5.
6. def duduk(self):
7. print(f"{self.nama} sekarang duduk")
8.
9. def berdiri(self):
10. print(f"{self.nama} sekarang berdiri")
11.
12. my_dog = Dog("Labrador",6)
13.
14. print(f"anjingku bernama {my_dog.nama}")
15. print(f"anjingku berumur {my_dog.umur} tahun ")
1. {my_dog.nama}
4
Dengan bantuan titik (.) disini maka python akan mencari objek dengan nama my_dog
kemudian mencari atribute nama di objeck my_dog tersebut. Jika baris 14 dan 15
dijalankan maka akan menghasilkan output seperti berikut
anjingku bernama Wili
anjingku berumur 6 tahun
1. class Dog:
2. def __init__(self, nama, umur):
3. self.nama = nama
4. self.umur = umur
5.
6. def duduk(self):
7. print(f"{self.nama} sekarang duduk")
8.
9. def berdiri(self):
10. print(f"{self.nama} sekarang berdiri")
11.
12. my_dog = Dog("Wili",6)
13.
14. print(f"anjingku bernama {my_dog.nama}")
15. print(f"anjingku berumur {my_dog.umur} tahun")
16.
17. my_dog.duduk()
18. my_dog.berdiri()
Perhatikan baris ke 17 dan 18, hampir mirip seperti pengaksesan atribut, pemanggilan
method juga menggunakan bantuan titik (.) Kita tulis nama object terlebih dahulu,
beri tanda titik, diakhiri dengan nama method yang akan dipanggil. Jika kode tersebut
dijalankan maka akan menghasilkan output seperti berikut :
anjingku bernama Wili
anjingku berumur 6 tahun
Wili sekarang duduk
Wili sekarang berdiri
5
9.3 Kegiatan Praktikum
9.3.1 Kegiatan Praktikum 1 : Class dengan default Attribute
1. Buat sebuah file program baru, kemudian tuliskan kode berikut ini
1. class Car:
2. def __init__(self, merk, model, tahun):
3. self.merk = merk
4. self.model = model
5. self.tahun = tahun
6. self.odometer = 0
7.
8. def keterangan(self):
9. print(f"Mobil baru saya {self.merk} {self.model} tahun
{self.tahun} kilometernya masih {self.odometer}")
10.
11. mobil_baru = Car('Honda','City',2021)
12. mobil_baru.keterangan()
1. class Kucing():
2. def __init__(self, ras, umur):
3. self.ras = ras
4. self.umur = umur
5.
6. def tampil(self):
7. print(f"Kucingku berjenis {self.ras} dengan umur
{self.umur} bulan")
8.
9. kucing_saya = Kucing("persia",2)
10. kucing_dia = Kucing("anggora",3)
11.
12. kucing_saya.tampil()
13. kucing_dia.tampil()
6
2. Amati hasilnya kemudian tulis analisis singkat mengenai kegiatan 2 ini
9.3.3 Kegiatan Praktikum 3 : Attribute Class yang merupakan Instance dari Class
lain
1. Buat sebuah file program baru, kemudian tuliskan kode berikut ini
1. class Kucing():
2. def __init__(self, ras, umur):
3. self.ras = ras
4. self.umur = umur
5.
6.
7. class Pemilik():
8. def __init__(self,nama,alamat, kucing):
9. self.nama = nama
10. self.alamat = alamat
11. self.kucing = kucing
12.
13. def tampil(self):
14. print(f"Halo, aku {self.nama} berasal dari
{self.alamat}")
15. print(f"Kucingku berjenis {self.kucing.ras} dengan umur
{self.kucing.umur} bulan")
16.
17.
18. arif = Pemilik(
19. nama = "Arif",
20. alamat = "Solo",
21. kucing = Kucing(
22. ras = "Persia",
23. umur = 7
24. )
25. )
26.
27. arif.tampil()
9.4 Tugas
1. Buatlah sebuah class dengan nama Mahasiswa. Buat 4 atribute dengan nama
"nim", "nama", "angkatan", dan "prodi" . Buatlah sebuah method dengan nama
7
"kartu_mahasiswa" yang akan menampilkan data mahasiswa tersebut dan
method "selamat" yang menampilkan ucapan " Selamat datang {nama} di
kampus UMS".
Buatlah minimal 3 objek dari class tersebut dan panggil 2 method tersebut
untuk tiap objeknya
8
DAFTAR PUSTAKA
Python File Handling Tutorial: How to Create, Open, Read, Write, Append. (n.d.).
Retrieved September 7, 2020, from
https://www.softwaretestinghelp.com/python/python-file-reading-writing/
Learn Python the Hard Way. (n.d.). Retrieved September 2, 2020, from
https://learnpythonthehardway.org/book/
Laporan Praktikum
Laporan ditulis dalam kertas putih ukuran A4. Sedangkan urutan susunan laporan
adalah sebagai berikut:
1. Cover depan: Berwarna sama dengan cover modul praktikum
2. Halaman Cover: Contoh dapat di-download di http://bit.ly/lap-alpro
3. Kata Pengantar
4. Daftar isi
5. Laporan tiap modul (1-10) sesuai dengan format terlampir
6. Penulis: berisi biodata penulis (disertai foto), pesan dan kesan, kritik dan saran
demi kemajuan praktikum berikutnya.
Format Laporan Tiap Bab
BAB I
Judul
1. Dasar Teori
300 sampai dengan 350 kata
2. Tujuan
3. Analisa Hasil
4. Penyelesaian Tugas
Jika terdapat tugas yang dikerjakan, tuliskan disini langkah pengerjaan dan hasilnya.
5. Kesimpulan
Berikan kesimpulan yang didapatkan setelah anda menyelesaikan praktikum