SlideShare a Scribd company logo
1 of 4
Download to read offline
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/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/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
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

More Related Content

What's hot

Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)
Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)
Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)Melina Krisnawati
 
Jeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan Interface
Jeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan InterfaceJeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan Interface
Jeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan InterfaceIndividual Consultants
 
istilah inheritance pada Pemrograman Berorientasi Object
istilah inheritance pada Pemrograman Berorientasi Objectistilah inheritance pada Pemrograman Berorientasi Object
istilah inheritance pada Pemrograman Berorientasi ObjectAjat Sudrajat
 
Pewarisan, Polimorfisme, dan Interface
Pewarisan, Polimorfisme, dan InterfacePewarisan, Polimorfisme, dan Interface
Pewarisan, Polimorfisme, dan InterfaceIbrahim Naki
 
12. tambahan polymorphisme
12. tambahan polymorphisme12. tambahan polymorphisme
12. tambahan polymorphismeSaprudin Eskom
 
12. keuntungan pemograman dengan menggunakan polymorphism
12. keuntungan pemograman dengan menggunakan polymorphism12. keuntungan pemograman dengan menggunakan polymorphism
12. keuntungan pemograman dengan menggunakan polymorphismSaprudin Eskom
 
Mobile Application 2 Pertemuan 3 Dasar Kotlin Object Oriented Programming
Mobile Application 2 Pertemuan 3 Dasar Kotlin Object Oriented ProgrammingMobile Application 2 Pertemuan 3 Dasar Kotlin Object Oriented Programming
Mobile Application 2 Pertemuan 3 Dasar Kotlin Object Oriented ProgrammingAkhmad Khanif Zyen
 
Java (Netbeans) - Abstract & Interface - Object Oriented Programming
Java (Netbeans) - Abstract & Interface - Object Oriented ProgrammingJava (Netbeans) - Abstract & Interface - Object Oriented Programming
Java (Netbeans) - Abstract & Interface - Object Oriented ProgrammingMelina Krisnawati
 
Pengantar Pemrograman Berorientasi Objek
Pengantar Pemrograman Berorientasi ObjekPengantar Pemrograman Berorientasi Objek
Pengantar Pemrograman Berorientasi Objekwawanext01
 
10. konsep enkapsulasi
10. konsep enkapsulasi10. konsep enkapsulasi
10. konsep enkapsulasiSaprudin Eskom
 

What's hot (17)

Pemrograman desktop
Pemrograman desktopPemrograman desktop
Pemrograman desktop
 
Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)
Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)
Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)
 
Pemrograman desktop
Pemrograman desktopPemrograman desktop
Pemrograman desktop
 
Jeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan Interface
Jeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan InterfaceJeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan Interface
Jeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan Interface
 
istilah inheritance pada Pemrograman Berorientasi Object
istilah inheritance pada Pemrograman Berorientasi Objectistilah inheritance pada Pemrograman Berorientasi Object
istilah inheritance pada Pemrograman Berorientasi Object
 
Pewarisan, Polimorfisme, dan Interface
Pewarisan, Polimorfisme, dan InterfacePewarisan, Polimorfisme, dan Interface
Pewarisan, Polimorfisme, dan Interface
 
Modul praktikum PBO
Modul praktikum PBOModul praktikum PBO
Modul praktikum PBO
 
12. tambahan polymorphisme
12. tambahan polymorphisme12. tambahan polymorphisme
12. tambahan polymorphisme
 
12. keuntungan pemograman dengan menggunakan polymorphism
12. keuntungan pemograman dengan menggunakan polymorphism12. keuntungan pemograman dengan menggunakan polymorphism
12. keuntungan pemograman dengan menggunakan polymorphism
 
Mobile Application 2 Pertemuan 3 Dasar Kotlin Object Oriented Programming
Mobile Application 2 Pertemuan 3 Dasar Kotlin Object Oriented ProgrammingMobile Application 2 Pertemuan 3 Dasar Kotlin Object Oriented Programming
Mobile Application 2 Pertemuan 3 Dasar Kotlin Object Oriented Programming
 
Java (Netbeans) - Abstract & Interface - Object Oriented Programming
Java (Netbeans) - Abstract & Interface - Object Oriented ProgrammingJava (Netbeans) - Abstract & Interface - Object Oriented Programming
Java (Netbeans) - Abstract & Interface - Object Oriented Programming
 
Pengantar Pemrograman Berorientasi Objek
Pengantar Pemrograman Berorientasi ObjekPengantar Pemrograman Berorientasi Objek
Pengantar Pemrograman Berorientasi Objek
 
Modul Object Oriented Programming
Modul Object Oriented ProgrammingModul Object Oriented Programming
Modul Object Oriented Programming
 
Java Class
Java ClassJava Class
Java Class
 
Materi delphi
Materi delphiMateri delphi
Materi delphi
 
11. inheritance
11. inheritance11. inheritance
11. inheritance
 
10. konsep enkapsulasi
10. konsep enkapsulasi10. konsep enkapsulasi
10. konsep enkapsulasi
 

Similar to penjelasan konsep oop object oriented programming

Modul oop with java application mauludin
Modul oop with java application   mauludinModul oop with java application   mauludin
Modul oop with java application mauludinMauludin Ahmad
 
516206149-Solid-Principle-Dan-Design-Pattern.pptx
516206149-Solid-Principle-Dan-Design-Pattern.pptx516206149-Solid-Principle-Dan-Design-Pattern.pptx
516206149-Solid-Principle-Dan-Design-Pattern.pptxAdityaSuryani1
 
Part 8 - Object Oriented Programming
Part 8 - Object Oriented ProgrammingPart 8 - Object Oriented Programming
Part 8 - Object Oriented ProgrammingRolly Yesputra
 
Pbo inheritance, polymorphism, dan inte
Pbo inheritance, polymorphism, dan intePbo inheritance, polymorphism, dan inte
Pbo inheritance, polymorphism, dan inteSmkn-2 Pekanbaru
 
Panduan Java sebagai Pemrograman Berorientasi Objek dan Implementasi Thread
Panduan Java sebagai Pemrograman Berorientasi Objek dan Implementasi ThreadPanduan Java sebagai Pemrograman Berorientasi Objek dan Implementasi Thread
Panduan Java sebagai Pemrograman Berorientasi Objek dan Implementasi ThreadHary HarysMatta
 
PRAKTIKUM PBO PERTEMUAN 5 (3).pptx
PRAKTIKUM PBO PERTEMUAN 5 (3).pptxPRAKTIKUM PBO PERTEMUAN 5 (3).pptx
PRAKTIKUM PBO PERTEMUAN 5 (3).pptxannikarimatulf
 
Modul pratikum pbo - ENCAPSULATION
Modul pratikum pbo - ENCAPSULATIONModul pratikum pbo - ENCAPSULATION
Modul pratikum pbo - ENCAPSULATIONrahmantoyuri
 
Asep java-01-konsep-oop-050608
Asep java-01-konsep-oop-050608Asep java-01-konsep-oop-050608
Asep java-01-konsep-oop-050608Jamil Jamil
 
Konsep Pemrograman Berorientasi Objek
Konsep Pemrograman Berorientasi ObjekKonsep Pemrograman Berorientasi Objek
Konsep Pemrograman Berorientasi Objekaseprm
 
JENI-Intro1-Bab11-Pewarisan, Polimorfisme, dan interface.pdf
JENI-Intro1-Bab11-Pewarisan, Polimorfisme, dan interface.pdfJENI-Intro1-Bab11-Pewarisan, Polimorfisme, dan interface.pdf
JENI-Intro1-Bab11-Pewarisan, Polimorfisme, dan interface.pdfJurnal IT
 
Resume tentang oop dalam php
Resume tentang oop dalam phpResume tentang oop dalam php
Resume tentang oop dalam phphendrajuniarto
 
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)Rakhmat Dedi Gunawan
 
Modul 3 object oriented programming dalam php
Modul 3   object oriented programming dalam phpModul 3   object oriented programming dalam php
Modul 3 object oriented programming dalam phpAbrianto Nugraha
 
Konsep oop pada php dan mvc pada php framework, 1200631047 1200631018 1200631028
Konsep oop pada php dan mvc pada php framework, 1200631047 1200631018 1200631028Konsep oop pada php dan mvc pada php framework, 1200631047 1200631018 1200631028
Konsep oop pada php dan mvc pada php framework, 1200631047 1200631018 1200631028iis dahlia
 

Similar to penjelasan konsep oop object oriented programming (20)

Modul oop with java application mauludin
Modul oop with java application   mauludinModul oop with java application   mauludin
Modul oop with java application mauludin
 
516206149-Solid-Principle-Dan-Design-Pattern.pptx
516206149-Solid-Principle-Dan-Design-Pattern.pptx516206149-Solid-Principle-Dan-Design-Pattern.pptx
516206149-Solid-Principle-Dan-Design-Pattern.pptx
 
Resume aplinet
Resume aplinetResume aplinet
Resume aplinet
 
Part 8 - Object Oriented Programming
Part 8 - Object Oriented ProgrammingPart 8 - Object Oriented Programming
Part 8 - Object Oriented Programming
 
Pbo inheritance, polymorphism, dan inte
Pbo inheritance, polymorphism, dan intePbo inheritance, polymorphism, dan inte
Pbo inheritance, polymorphism, dan inte
 
Panduan Java sebagai Pemrograman Berorientasi Objek dan Implementasi Thread
Panduan Java sebagai Pemrograman Berorientasi Objek dan Implementasi ThreadPanduan Java sebagai Pemrograman Berorientasi Objek dan Implementasi Thread
Panduan Java sebagai Pemrograman Berorientasi Objek dan Implementasi Thread
 
PRAKTIKUM PBO PERTEMUAN 5 (3).pptx
PRAKTIKUM PBO PERTEMUAN 5 (3).pptxPRAKTIKUM PBO PERTEMUAN 5 (3).pptx
PRAKTIKUM PBO PERTEMUAN 5 (3).pptx
 
9150 8 interface
9150 8  interface9150 8  interface
9150 8 interface
 
Modul pratikum pbo - ENCAPSULATION
Modul pratikum pbo - ENCAPSULATIONModul pratikum pbo - ENCAPSULATION
Modul pratikum pbo - ENCAPSULATION
 
Moduloop
ModuloopModuloop
Moduloop
 
Asep java-01-konsep-oop-050608
Asep java-01-konsep-oop-050608Asep java-01-konsep-oop-050608
Asep java-01-konsep-oop-050608
 
Konsep Pemrograman Berorientasi Objek
Konsep Pemrograman Berorientasi ObjekKonsep Pemrograman Berorientasi Objek
Konsep Pemrograman Berorientasi Objek
 
4 c4c0d01
4 c4c0d014 c4c0d01
4 c4c0d01
 
JENI-Intro1-Bab11-Pewarisan, Polimorfisme, dan interface.pdf
JENI-Intro1-Bab11-Pewarisan, Polimorfisme, dan interface.pdfJENI-Intro1-Bab11-Pewarisan, Polimorfisme, dan interface.pdf
JENI-Intro1-Bab11-Pewarisan, Polimorfisme, dan interface.pdf
 
Konsep dasar oop
Konsep dasar oopKonsep dasar oop
Konsep dasar oop
 
Resume tentang oop dalam php
Resume tentang oop dalam phpResume tentang oop dalam php
Resume tentang oop dalam php
 
Tugas aplinet meresum
Tugas aplinet meresumTugas aplinet meresum
Tugas aplinet meresum
 
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
 
Modul 3 object oriented programming dalam php
Modul 3   object oriented programming dalam phpModul 3   object oriented programming dalam php
Modul 3 object oriented programming dalam php
 
Konsep oop pada php dan mvc pada php framework, 1200631047 1200631018 1200631028
Konsep oop pada php dan mvc pada php framework, 1200631047 1200631018 1200631028Konsep oop pada php dan mvc pada php framework, 1200631047 1200631018 1200631028
Konsep oop pada php dan mvc pada php framework, 1200631047 1200631018 1200631028
 

More from softscients

belajar statistik
belajar statistikbelajar statistik
belajar statistiksoftscients
 
neural network training dan particle swarm optimization
neural network training dan particle swarm optimizationneural network training dan particle swarm optimization
neural network training dan particle swarm optimizationsoftscients
 
pengolahan sinyal digital dengan matlab
pengolahan sinyal digital dengan matlabpengolahan sinyal digital dengan matlab
pengolahan sinyal digital dengan matlabsoftscients
 
pengolahan citra digital dengan java
pengolahan citra digital dengan javapengolahan citra digital dengan java
pengolahan citra digital dengan javasoftscients
 
tutorial algoritma genetika bagian 1
tutorial algoritma genetika bagian 1tutorial algoritma genetika bagian 1
tutorial algoritma genetika bagian 1softscients
 
cara membuat aplikasi gui di matlab
cara membuat aplikasi gui di matlabcara membuat aplikasi gui di matlab
cara membuat aplikasi gui di matlabsoftscients
 
setup widget dan work directory matlab
setup widget dan work directory matlabsetup widget dan work directory matlab
setup widget dan work directory matlabsoftscients
 
Belajar Pemrograman Matlab
Belajar Pemrograman MatlabBelajar Pemrograman Matlab
Belajar Pemrograman Matlabsoftscients
 
konversi warna dengan matlab
konversi warna dengan matlabkonversi warna dengan matlab
konversi warna dengan matlabsoftscients
 
scikit-learn cheat sheet untuk data science
scikit-learn cheat sheet untuk data sciencescikit-learn cheat sheet untuk data science
scikit-learn cheat sheet untuk data sciencesoftscients
 
kriptografi metode hill cipher
kriptografi metode hill cipherkriptografi metode hill cipher
kriptografi metode hill ciphersoftscients
 
mengapa customer churn rate penting
mengapa customer churn rate pentingmengapa customer churn rate penting
mengapa customer churn rate pentingsoftscients
 
pengantar metode numerik
 pengantar metode numerik pengantar metode numerik
pengantar metode numeriksoftscients
 
cara hitung manual uji normalitas dengan uji kolmogorov-smirnov
 cara hitung manual uji normalitas dengan uji kolmogorov-smirnov cara hitung manual uji normalitas dengan uji kolmogorov-smirnov
cara hitung manual uji normalitas dengan uji kolmogorov-smirnovsoftscients
 
pengenalan huruf dengan pca
 pengenalan huruf dengan pca pengenalan huruf dengan pca
pengenalan huruf dengan pcasoftscients
 
steganografi gambar dan teks
steganografi gambar dan tekssteganografi gambar dan teks
steganografi gambar dan tekssoftscients
 

More from softscients (16)

belajar statistik
belajar statistikbelajar statistik
belajar statistik
 
neural network training dan particle swarm optimization
neural network training dan particle swarm optimizationneural network training dan particle swarm optimization
neural network training dan particle swarm optimization
 
pengolahan sinyal digital dengan matlab
pengolahan sinyal digital dengan matlabpengolahan sinyal digital dengan matlab
pengolahan sinyal digital dengan matlab
 
pengolahan citra digital dengan java
pengolahan citra digital dengan javapengolahan citra digital dengan java
pengolahan citra digital dengan java
 
tutorial algoritma genetika bagian 1
tutorial algoritma genetika bagian 1tutorial algoritma genetika bagian 1
tutorial algoritma genetika bagian 1
 
cara membuat aplikasi gui di matlab
cara membuat aplikasi gui di matlabcara membuat aplikasi gui di matlab
cara membuat aplikasi gui di matlab
 
setup widget dan work directory matlab
setup widget dan work directory matlabsetup widget dan work directory matlab
setup widget dan work directory matlab
 
Belajar Pemrograman Matlab
Belajar Pemrograman MatlabBelajar Pemrograman Matlab
Belajar Pemrograman Matlab
 
konversi warna dengan matlab
konversi warna dengan matlabkonversi warna dengan matlab
konversi warna dengan matlab
 
scikit-learn cheat sheet untuk data science
scikit-learn cheat sheet untuk data sciencescikit-learn cheat sheet untuk data science
scikit-learn cheat sheet untuk data science
 
kriptografi metode hill cipher
kriptografi metode hill cipherkriptografi metode hill cipher
kriptografi metode hill cipher
 
mengapa customer churn rate penting
mengapa customer churn rate pentingmengapa customer churn rate penting
mengapa customer churn rate penting
 
pengantar metode numerik
 pengantar metode numerik pengantar metode numerik
pengantar metode numerik
 
cara hitung manual uji normalitas dengan uji kolmogorov-smirnov
 cara hitung manual uji normalitas dengan uji kolmogorov-smirnov cara hitung manual uji normalitas dengan uji kolmogorov-smirnov
cara hitung manual uji normalitas dengan uji kolmogorov-smirnov
 
pengenalan huruf dengan pca
 pengenalan huruf dengan pca pengenalan huruf dengan pca
pengenalan huruf dengan pca
 
steganografi gambar dan teks
steganografi gambar dan tekssteganografi gambar dan teks
steganografi gambar dan teks
 

Recently uploaded

REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdf
REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdfREFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdf
REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdfirwanabidin08
 
Materi Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptxMateri Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptxRezaWahyuni6
 
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdfContoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdfCandraMegawati
 
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptx
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptxSesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptx
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptxSovyOktavianti
 
Dampak Pendudukan Jepang.pptx indonesia1
Dampak Pendudukan Jepang.pptx indonesia1Dampak Pendudukan Jepang.pptx indonesia1
Dampak Pendudukan Jepang.pptx indonesia1udin100
 
JAWAPAN BAB 1 DAN BAB 2 SAINS TINGKATAN 5
JAWAPAN BAB 1 DAN BAB 2 SAINS TINGKATAN 5JAWAPAN BAB 1 DAN BAB 2 SAINS TINGKATAN 5
JAWAPAN BAB 1 DAN BAB 2 SAINS TINGKATAN 5ssuserd52993
 
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptxKontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptxssuser50800a
 
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)MustahalMustahal
 
Keterampilan menyimak kelas bawah tugas UT
Keterampilan menyimak kelas bawah tugas UTKeterampilan menyimak kelas bawah tugas UT
Keterampilan menyimak kelas bawah tugas UTIndraAdm
 
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docx
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docxLK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docx
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docxPurmiasih
 
tugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SDtugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SDmawan5982
 
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdf
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdfMODUL 1 Pembelajaran Kelas Rangkap-compressed.pdf
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdfNurulHikmah50658
 
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..ikayogakinasih12
 
Aksi nyata disiplin positif Hj. Hasnani (1).pdf
Aksi nyata disiplin positif Hj. Hasnani (1).pdfAksi nyata disiplin positif Hj. Hasnani (1).pdf
Aksi nyata disiplin positif Hj. Hasnani (1).pdfDimanWr1
 
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdf
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdfBab 6 Kreatif Mengungap Rasa dan Realitas.pdf
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdfbibizaenab
 
Materi Strategi Perubahan dibuat oleh kelompok 5
Materi Strategi Perubahan dibuat oleh kelompok 5Materi Strategi Perubahan dibuat oleh kelompok 5
Materi Strategi Perubahan dibuat oleh kelompok 5KIKI TRISNA MUKTI
 
Aksi Nyata Modul 1.1 Calon Guru Penggerak
Aksi Nyata Modul 1.1 Calon Guru PenggerakAksi Nyata Modul 1.1 Calon Guru Penggerak
Aksi Nyata Modul 1.1 Calon Guru Penggeraksupriadi611
 
Modul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase CModul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase CAbdiera
 
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptxPPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptxdpp11tya
 
Refleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptx
Refleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptxRefleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptx
Refleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptxIrfanAudah1
 

Recently uploaded (20)

REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdf
REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdfREFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdf
REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdf
 
Materi Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptxMateri Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptx
 
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdfContoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
 
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptx
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptxSesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptx
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptx
 
Dampak Pendudukan Jepang.pptx indonesia1
Dampak Pendudukan Jepang.pptx indonesia1Dampak Pendudukan Jepang.pptx indonesia1
Dampak Pendudukan Jepang.pptx indonesia1
 
JAWAPAN BAB 1 DAN BAB 2 SAINS TINGKATAN 5
JAWAPAN BAB 1 DAN BAB 2 SAINS TINGKATAN 5JAWAPAN BAB 1 DAN BAB 2 SAINS TINGKATAN 5
JAWAPAN BAB 1 DAN BAB 2 SAINS TINGKATAN 5
 
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptxKontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
 
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)
 
Keterampilan menyimak kelas bawah tugas UT
Keterampilan menyimak kelas bawah tugas UTKeterampilan menyimak kelas bawah tugas UT
Keterampilan menyimak kelas bawah tugas UT
 
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docx
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docxLK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docx
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docx
 
tugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SDtugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SD
 
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdf
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdfMODUL 1 Pembelajaran Kelas Rangkap-compressed.pdf
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdf
 
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
 
Aksi nyata disiplin positif Hj. Hasnani (1).pdf
Aksi nyata disiplin positif Hj. Hasnani (1).pdfAksi nyata disiplin positif Hj. Hasnani (1).pdf
Aksi nyata disiplin positif Hj. Hasnani (1).pdf
 
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdf
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdfBab 6 Kreatif Mengungap Rasa dan Realitas.pdf
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdf
 
Materi Strategi Perubahan dibuat oleh kelompok 5
Materi Strategi Perubahan dibuat oleh kelompok 5Materi Strategi Perubahan dibuat oleh kelompok 5
Materi Strategi Perubahan dibuat oleh kelompok 5
 
Aksi Nyata Modul 1.1 Calon Guru Penggerak
Aksi Nyata Modul 1.1 Calon Guru PenggerakAksi Nyata Modul 1.1 Calon Guru Penggerak
Aksi Nyata Modul 1.1 Calon Guru Penggerak
 
Modul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase CModul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase C
 
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptxPPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
 
Refleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptx
Refleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptxRefleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptx
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