Anda di halaman 1dari 11

TUGAS INDIVIDU RESUME

PEMROGRAMAN BERIORENTASI OBYEK


DI PYTHON

Disusun Oleh :
Riyan Maulana 170411100065

PROGRAM STUDI TEKNIK INFORMATIKA


UNIVERSITAS TRUNOJOYO
MADURA
BANGKALAN 2019

Bab 1
Pembahasan

1. OOP (Object Oriented Programming)


Pemrograman berorientasi objek, atau OOP singkatnya, adalah
paradigma pemrograman yang menyediakan sarana untuk menyusun program
sehingga sifat dan perilaku digabungkan menjadi objek individual. Misalnya,
objek bisa mewakili seseorang dengan nama properti, umur, alamat, dll, dengan
perilaku seperti berjalan, berbicara, bernafas, dan berlari. Atau email dengan
properti seperti daftar penerima, subjek, badan, dll., Dan perilaku seperti
menambahkan lampiran dan pengiriman.
Paradigma pemrograman beriorentasi Object memiliki field berupa
variable object dan method berupa fungsi object. Keduanya disebut atribut object.
Class juga dapat memiliki field class (variable class) dan method class. class
didefinisikan dengan keyword class.

2. Self
Dalam deklarasi method pada class terdapat perbedaan yaitu ada
parameter pertama yang harus ditambahkan pada parameter fungsi. Parameter ini
diberi nama self, nilai dari parameter ini menunjuk ke obyek atau instance itu
sendiri. Contoh program :

class student:
def funcStudent(self):
print("Hello, I am a student,")

person = student()
person.funcStudent()

3. Class
Class adalah struktur data yang bisa kita gunakan untuk mendefinisikan
objek yang menyimpan data bersama-sama nilai-nilai dan perilaku (behavior).
Kelas adalah suatu entitas yang merupakan bentuk program dari suatu
abstraksi untuk permasalahan dunia nyata, dan instance dari class merupkan
realisasi dari beberapa objek. Jika dianalogikan, kelas itu merupakan blueprint
(cetak biru) dari sebuah objek (instance).

print()
class Orang:
pass
org = Orang()
print(org)

<__main__.Orang object at 0x7f879e3d6780>


menunjukkan variabel org adl instance class ORANG pada alamat
memory 0x7f879e3d6780

4. Method
Method merupakan fungsi yang melekat pada sebuah objek atau instance
kelas. Contoh berikut menunjukkan penggunaan method dalam kelas.

class person:
def said(self):
print("halo, apa kabar")
person = person()
person.said()

5. Method Constructor
Method constructor merupakan sebuah method yang akan otomatis
dipanggil ketika objek di instantiasi. Constructor umumnya digunakan untuk
melakukan inisialisasi terhadap suatu variabel atau method.

class PersonOrang:
def __init__(self, nama):
self.nama = nama

def katakanHalo(self):
print("Halo, nama saya %s, apa kabar "%(self.nama))

orang2 = PersonOrang("maulana")
orang2.katakanHalo()

6. Variabel class dan object variabel


Method constructor merupakan sebuah method yang akan otomatis
dipanggil ketika objek di instantiasi. Constructor umumnya digunakan untuk
melakukan inisialisasi terhadap suatu variabel atau method.

class Siswa:
# var class, u/ menghitung jumlah siswa
total = 0
def __init__(self, nama):
# inisialisasi data, data yg dibuat pada self merupakan var
object
self.nama = nama
Siswa.total +=1

def __del__(self):
# kurangi total orang jika object dihapus
Siswa.total -=1

def katakanHalo(self):
print("Halo, nama saya %s, apa kabar ? " %self.nama)

def totalPopulasi(clss):
print("Total orang %s" % clss.total)

# method class
totalPopulasi = classmethod(totalPopulasi)

personal = Siswa("budi")
personal.katakanHalo()
personal.totalPopulasi()

personal2 = Siswa("andi")
personal2.katakanHalo()
personal2.totalPopulasi()

print("object dihapus")

del personal
del personal2
Siswa.totalPopulasi()

7. Inherintance (Pewarisan)
Pewarisan merupakan konsep dalam pemrograman berbasis objek yang
memungkinkan untuk membuat suatu kelas dengan didasarkan pada kelas yang
sudah ada sehingga mewarisi semua method dan atributnya. Pewarisan
merupakan suatu mekanisme yang memungkinkan seorang pemrogram
menciptakan suatu kelas baru berdasarkan kelas yang sudah tersedia tetapi tidak
perlu menuliskan kode dari nol. Dengan cara seperti ini, semua method dan
atribut yang terdapat pada kelas induk diturunkan ke kelas turunannya. Namun
kelas turunannya dapat menambah method baru atau atribut baru tersendiri.
Contoh program :

class AnggotaSekolah:
"representasi anggota sekolah"

def __init__(self, nama, umur):


self.nama = nama
self.umur = umur
print("Membuat anggota sekolah baru : %s" % self.nama)

def info(self):
"cetak info"
print("Nama : %s, Umur : %s" % (self.nama, self.umur))

class Guru(AnggotaSekolah):
"representasi guru"
def __init__(self, nama, umur, gaji):
AnggotaSekolah.__init__(self, nama, umur)
self.gaji = gaji

print("Membuat guru : %s" % self.nama)

def info(self):
AnggotaSekolah.info(self)
print("Gaji : %s" %self.gaji)
class Siswa(AnggotaSekolah):
"representasi siswa"
def __init__(self, nama, umur, nilai):
AnggotaSekolah.__init__(self, nama, umur)
self.nilai = nilai

print("Membuat siswa : %s" % self.nama)

def info(self):
AnggotaSekolah.info(self)
print("Nilai : %s" % self.nilai)

guru = Guru("Budi", 30, 3000000)


siswa = Siswa("Andi", 25, 80)
anggota = [guru, siswa]
for manusia in anggota:
manusia.info()

8. Method overriding
Sebuah method dikatakan method overriding jika method dengan nama
yang sama terdapat pada class induk dan kelas anaknya.
Contoh program :

class Parent:
def cobaOverride(self):
print("Hi.. saya method override di class parent")
class Child(Parent):
def cobaOverride(self):
print("Hi, saya method override di class child")

# deklarasi object class induk


objParent = Parent()
objParent.cobaOverride()

# deklarasi object class child


objChild = Child()
Parent.cobaOverride(objChild)

Contoh class inherintance dengan overriding:

class Pegawai:
def __init__(self, nama, gaji = 0):
self.nama = nama
self.gaji = gaji

def tunjangan(self, persen):


self.gaji = self.gaji + (self.gaji * persen)

def kerja(self):
print(self.nama, "Pekerjaannya")

def __repr__(self):
return "<Pegawai : nama = %s, gaji = %s>" % (self.nama,
self.gaji)

class Koki(Pegawai):
def __init__(self, nama):
Pegawai.__init__(self, nama, 100000)
def kerja(self):
print(self.nama, "Membuat makanan")

class Pelayan(Pegawai):
def __init__(self, nama):
Pegawai.__init__(self, nama, 50000)
def kerja(self):
print(self.nama, "Melayani costumer")

class PizzaRobot(Koki):
def __init__(self, nama):
Koki.__init__(self, nama)
def kerja(self):
print(self.nama, "Membuat pizza")

# program utama
if __name__ == "__main__":
agus = PizzaRobot("Agus")
print(agus)
agus.kerja()
agus.tunjangan(0.20)
print(agus)

for kelas in Pegawai, Koki, Pelayan, PizzaRobot:


objek = kelas(kelas.__name__)
objek.kerja()

9. Method destructor
Method destructor dalam python merupakan method yang menyediakan
proses khusus sebelum object dihancurkan / dealokasi. Method destructor
constructor disebut __del__(), Method ini tidak akan dilaksanakan sampai semua
referensi ke semua object telah dihapus.

class ContohClass:
def __init__(self):
print("Inisialisasi")
def __del__(self):
print("Object telah dihapus")

c1Class = ContohClass()
c2Class = c1Class
c3Class = c1Class
print(id(c1Class), id(c2Class), id(c3Class))
del c1Class
del c2Class
Bab II
Daftar Pustaka

1. Indocics 2016, E-books Workshop Python 101.

Anda mungkin juga menyukai