Refleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptx
penjelasan konsep oop object oriented programming
1. 1/4
November 21, 2021
Penjelasan Konsep OOP object oriented programming
softscients.com/2021/11/21/penjelasan-konsep-oop-object-oriented-programming/
14 Views
— Penjelasan Konsep OOP object oriented programming – OOP adalah singkatan
object oriented programming yang merupakan perkembangan bahasa dari sebelumnya
berbasis procedure yaitu bahasa C dan Pascal. Bahasa OOP merupakan bahasa mesin
yang lebih manusia alias mendekati real sehari-hari. Bahasa pemgroraman yang murni
OOP yaitu Java, untuk bahasa yang masih berbasis procedure / hibrid antara gabungan
OOP dan procedure yaitu C++ dan Python.
Membangun aplikasi yang besar dengan konsep OOP akan membuat maintance menjadi
lebih mudah karena OOP menawarkan 3 fitur utama yaitu Pemodulan/pengkapsulan
(encapsulation); Penurunan/pewarisan (Inheritance); Polimorfisme (Polimorphism).
Pewarisan / inheritance
Contents
1 Pewarisan / inheritance
2 Pembungkusan/ encapsulation
3 Polimorfisme (Polymorphism)
4 Contoh OOP
5 Attribut Class
5.1 Penerapan Inheritance
5.2 Penerapan Polimorfisme
2. 2/4
Dari konsep penurunan ini suatu kelas bisa diturunkan menjadi kelas baru yang masih
mewarisi sifat-sifat kelas orangtuanya. Hal ini dapat dianalogikan dengan kelas manusia.
Manusia merupakan turunan dari orang tuanya dan sifat-sifat orang tua diwarisi olehnya.
Bisa ditarik kesimpulan bahwa semua kelas di dunia selalu memiliki hirarki yang
menggambarkan silsilah kelas tersebut.
Pembungkusan/ encapsulation
Pemodulan adalah metode untuk menggabungkan data dengan fungsi. Dalam konsep ini
data dan fungsi digabung menjadi satu kesatuan yaitu kelas. Konsep ini erat kaitannya
dengan konsep penyembunyian informasi (information hiding). Untuk bahasa python
tidak mengenal konsep private, public, protected layakanya konsep OOP di java
Polimorfisme (Polymorphism)
Polimorfisme berarti kelas-kelas yang berbeda tetapi berasal dari satu orang tua dapat
mempunyai metode yang sama tetapi cara pelaksanaannya berbeda-beda. Atau dengan
kata lain, suatu fungsi akan memiliki perilaku berbeda jika dilewatkan ke kelas yang
berbeda-beda.
Contoh OOP
Contoh OOP dalam bahasa python sangat mudah, kalian bisa menggunakan konsep
procedure atau OOP dalam menulis kode di Python tidak seperti bahasa
R/Octave/Matlab yang masih berbasis procedure. Sesuai konvensi di pembahasan
sebelumnnya bahwa nama class diawali oleh huruf kapital
class Siswa:
pass
Class diatas tidak punya attribute dan methode/function apapun, untuk membuat instance
object class, lakukan hal berikut
a = Siswa()
Artinya kita membuat instance object class OOP dari class Siswa(), objek yang dimaksud
yaitu
<__main__.Siswa at 0x1b280692af0>
Tentu Siswa mempunyai attribut seperti NIM dan nama, maka dalam konsep OOP
method yang pertama kali dipanggil ketika object tersebut dibuat disebut dengan method
constructor. Kita perbaiki class OOP seperti berikut
class Siswa:
def __init__(self):
print('kamu panggil aku ya!')
a = Siswa()
3. 3/4
ketika dipanggil maka method __init__() akan langsung dipanggil
kamu panggil aku ya!
Konsep OOP object oriented programming maka setiap method harus diberikan kata
kunci self yang berarti method tersebut miliknya dirinya class tersebut. Untuk
memasukan argument sama seperti membuat method/function, contohnya sebagai
berikut
class Siswa:
def __init__(self,nama):
print('kamu panggil aku ya!',nama)
a = Siswa('bejo pamungkas')
hasilnya
kamu panggil aku ya! bejo pamungkas
Attribut Class
Attribut class disini berarti class tersebut mempunyai variabel yang bisa kita akses. Kita
lengkapi sebagai berikut Perhatikan self.NIM dan self.nama
class Siswa():
def __init__(self,NIM,nama):
self.NIM = NIM
self.nama = nama
def panggil(self):
print('namanya: ',self.nama)
a = Siswa(123,'bejo pamungkas')
a.panggil()
hasilnya
namanya: bejo pamungkas
ataupun kita bisa akses attibut secara langsung pada objek a dengan operator titik.
a.nama
Out[16]: 'bejo pamungkas'
Penerapan Inheritance
Penerapan konsep OOP bisa dimulai dari pembuatan class induk atau langsung tanpa
class induk. Biasanya class induk isinya abstrak saja. Kita akan membuat class Siswa
yang terdiri method constructor dengan argument input NIM dan nama
4. 4/4
class Siswa():
def __init__(self,NIM,nama):
self.NIM = NIM
self.nama = nama
def panggil(self):
print('namanya: ',self.nama)
Langkah selanjutnya kita akan inheritance, kalian bisa melihat class SMP adakah anak
dari class Siswa
class SMP(Siswa):
def __init__(self,NIM,nama):
Siswa.__init__(self,NIM,nama)
Sehingga ketika membuat objek class SMP dengan memanggil method panggil() itu bisa
saja karena mewarisi sifat2 induknya
bejo = SMP(123,'bejo pamungkas')
bejo.panggil()
hasilnya
namanya: bejo pamungkas
Penerapan Polimorfisme
dalam konsep OOP jika method induk tidak cocok menurut kita, maka bisa diubah koq
implementasinya
class SMP(Siswa):
def __init__(self,NIM,nama):
Siswa.__init__(self,NIM,nama)
def panggil(self):
print('nama ganteng: ',self.nama)
bejo = SMP(123,'bejo pamungkas')
bejo.panggil()
hasilnya
nama ganteng: bejo pamungkas
OOP object oriented programming akan banyak dijumpai kalau kalian sering
menggunakan library scikit-learn
See also Hilangkan Duplikasi Foto