Belajar Basic OOP di Python

By Budyks    Python

Melengkapi Series Basic Python sebelumnya, kali ini kita akan belajar OOP di Python. Sama Seperti hal nya OOP di bahasa pemrograman lain, OOP sudah tentu kita akan membahas

  • Class
  • Object
  • Constructor
  • Method
  • dsb. 

Penulisan (syntax)

class ClassName:            #....        #....

atau 

class Karyawan(object):

Di python kita bisa membuat Keterangan/Documentasi tentang Class yang kita buat dalam bentuk String

class Karyawan:    'Class ini untuk Urus Karyawan'    #akses di luar Classprint Karyawan.__doc__ 

#output : Class ini untuk Urus Karyawan

Class, Object, Constructor dan Method

Perhatikan contoh berikut : 

class Karyawan(object):
    'Class ini untuk data Karyawan'    jml_karyawan = 0 #Class variable        #constructor    def __init__(self,kid,nama,jabatan):                self.kid = kid        self.nama = nama        self.jabatan = jabatan        Karyawan.jml_karyawan += 1        #method    def infoKaryawan(self):            print "Karyawan baru masuk"        print "==================="        print "ID : %s " % self.kid        print "Nama : %s " % self.nama        print "Jabatan : %s " % self.jabatan

#cara mengakses/memakai class/membuat Object
obj = Karyawan("K001","Ganjar","Teknisi")obj.infoKaryawan()
#tambah karyawan baruobj2 = Karyawan("K002","Nadya","Akunting")obj2.infoKaryawan()
#tampilkan total Karyawanprint "-----------------------------"print "Total Karyawan : %d " % Karyawan.jml_karyawan

Program diatas outputnya adalah

Karyawan baru masuk===================ID : K001 Nama : Ganjar Jabatan : Teknisi Karyawan baru masuk===================ID : K002 Nama : Nadya Jabatan : Akunting -----------------------------Total Karyawan : 2 

Kita bedah satu-satu Kode diatas

__init__ , apa itu   ? __init__ adalah konstruktor . Method yang pertama akan di eksekusi saat kita pertamakali membuat Instance dari Class. Seperti pada bahasa lain kita bisa menambahkan Argumen pada __init__ . Instance dari Class akan di initialiasi di __init__ dan kita bisa memanggilnya dimana saja di dalam class itu. 

Self, apa itu ? self adalah Class Instance yang digunakan untuk mengakses Instance 

  self.kid = kid  self.nama = nama  self.jabatan = jabatan

bisa juga untuk memanggil Method dalam method lain 

def method1(self,arg):   print "Argumen %s " % arg
def method2():    self.method1("Argumen")

DIbahasa pemrograman lain juga ada self atau this.  parameter self  dituliskan di urutan pertama dalam Argument method

def method(self, arg1,arg2,arg3....)

Cara memangiil Class umumnya sama saja seperti Bahasa lain 

obj = Karyawan("K001","Ganjar","Teknisi")obj.infoKaryawan()

CLass variable ? perhatikan variable jml_karyawan   . kita bisa membuat dan mendefinisikan sebuah variable dalam Class . dan bisa di akses dimana saja baik didalam Class itu maupun di luar Class dengan cara Syntax 

ClassName.variable_name
#tampilkan total Karyawanprint "-----------------------------"print "Total Karyawan : %d " % Karyawan.jml_karyawan

Perlu diingat bahwa Python tidak seperti OOP layaknya bahasa Lain. karenanya kita tidak mendapati : private, protected dan public . Alasan nya banyak dan jujur saya sulit menerangkannya. yang jelas Pembuat python dan developer nya sudah sepakat bahwa mereka tidak perlu menambahkan fungsionalitas itu. 

Jika anda belajar lebih dalam untuk Tujuan apa, untuk ruang-lingkup seperti , cocok untuk sistem seperti apa Python itu. Mungkin kita akan lebih dalam mengetahui alasannya. 

Sekian pejelasan singkat OOP Python. masih banyak yang belum dijelaskan dari materi OOP di python. Namun tentu akan dibahas pada artikel OOP Python selanjutnya. 

Comments



    Follow Us