Belajar OOP PHP : Part 1

  1. PENGENALAN OOP

Pemrograman Berbasis Objek atau Object Oriented Programming (OOP) adalah sebuah tata cara pembuatan program (programming paradigm) dengan menggunakan konsep “objek” yang memiliki data (atribut yang menjelaskan tentang objek) dan prosedur (function) yang dikenal dengan method.

Dalam pengertian sederhananya, OOP adalah konsep pembuatan program dengan memecah permasalahan program dengan menggunakan objek. Objek dapat diumpamakan dengan ‘fungsi khusus’ yang bisa berdiri sendiri. Untuk membuat sebuah aplikasi, berbagai objek akan saling bertukar data untuk mencapai hasil akhir.

Konsep Dasar OOP :

1. Class (Kelas) dan Object (Objek)

Class adalah ‘cetak biru’ atau ‘blueprint’ dari object. Class digunakan hanya untuk membuat kerangka dasar. Yang akan kita pakai nantinya adalah hasil cetakan dari class, yakni Object. Analoginya Seperti ini, Kita  Ibaratkan Class adalah Mahasiswa . Kita tahu bahwa Mahasiswa memiliki data seperti Nim,Nama,Kelas. Kita sudah memiliki kerangkanya dan untuk menggunakan maka kita membuat sebuah Objek, sehingga kita dapat membuat Objek seperti Mahasiswa Asvarizal dengan data Nim : 15.11.9292 , Nama: Asvarizal Filcha, Kelas : 15-S1IF-12. Dikarenakan kelas adalah kerangka dasar maka kita dapat membuat objek yang berbeda – beda sesuai dengan kebutuhan.

2. Encapsulation

Enkapsulasi (encapsulation) adalah sebuah metoda untuk mengatur struktur class dengan cara menyembunyikan alur kerja dari class tersebut.

Struktur class yang dimaksud adalah property dan method. Dengan enkapsulasi, kita bisa membuat pembatasan akses kepada property dan method, sehingga hanya property dan method tertentu saja yang bisa diakses dari luar class. Enkapsulasi juga `dikenal dengan istilah ‘information hiding’.

3. Inheritance (Turunan)

Turunan merupakan suatu karakteristik OOP dimana class (parent class/ base class) dapat diturunkan ke class lain (child class / derived class) sehingga class anak dapat memiliki data atau perilaku class orang tua nya.

4. Polymorphism (Banyak Bentuk)

Dari segi bahasa, Polimorfisme (bahasa inggris: Polymorphism) berasal dari dua kata bahasa latin yakni poly dan morph. Poly berarti banyak, dan morph berarti bentuk. Polimorfisme berarti banyak bentuk (wikipedia).

Di dalam pemrograman objek, polimorfisme adalah konsep dimana terdapat banyak class yang memiliki signature method yang sama. Implementasi dari method-method tersebut diserahkan kepada tiap class, akan tetapi cara pemanggilan method harus sama. Agar kita dapat ‘memaksakan’ signature method yang sama pada banyak class, class tersebut harus diturunkan dari sebuah abstract class atau object interface.

LET’S START CODE OOP PHP

Class
Class bisa diibaratkan pembungkus untuk property dan method dalam OOP. Berikut contoh penulisan class :

    <?php 
        Mahasiswa{ 
            // Property dan Method ditulis disini 
        }  
    ?>
    

      Pada kode diatas, kita membuat class bernama Mahasiswa yang akan menjadi tempat property dan method yang akan dibuat, cara penulisan class adalah dengan menggunakan huruf besar diawal.

      Object
      Setelah membuat class, kita akanmenggunakan nya dengan membuat object. Object digunakan untuk suatu objectberdasarkan class. Contoh class adalah Mahasiswa, maka object adalah mahasiswa itu, contohnya nama mahasiswa.

        <?php 
            Mahasiswa {
                //Property dan Method di tulis disini 
            } 
            $rizal= new Mahasiswa(); //Object 
        ?>
        

        Cara menuliskan objek adalah dengan sintak new dan dilanjutkan nama kelas.

        • Access Modifier

        Access Modifier adalah hak akses yang ada di OOP. Ada 3 Access Modifier yaitu

        • Public
          Ketika property atau method memiliki akses Public, maka property atau method tersebut bisa di akses dari luar class atau bisa di akses langsung oleh object.
        • Protected
        • Ketika property atau method memiliki akses Protected, maka property atau method tersebut hanya bisa di akses dari luar class atau bisa di akses langsung class turunannya, property atau method tidak dapat diakses langsung dari object atau luar class.
        • Private

        Ketika property atau method memiliki akses Private, maka property atau method tersebut hanya bisa di akses dalam class itu sendiri dan tidak bisa di akses  dari luar class atau dari class turunannya. Property Property adalah variable yang ada didalam class. Kalau di ibaratkan sebagai Mahasiswa, property adalah segala sesuatu yang berhubungan dengan mahasiswa, seperti Nama, Nim, Kelas, Jenis Kelamin, Jurusan dan sebagainya. Cara penulisan property adalah denganmenuliskan Access Modifier lalu membuat nama variable (property). Contoh :

        <?php
            class Mahasiswa{
                public $nama='Asvarizal Filcha'; //Property 
                public $jurusan; //Property
            }
            $rizal=new Mahasiswa(); //Object
            echo $rizal->nama;
        ?>
        


        $nama  $jurusan adalah property dengan hak akses public, artinya bisa langsung di akses melalui object. echo $rizal->nama; ini adalah contoh menampilkan data dari property melaui object maka hasilnya :

        Asvarizal Filcha

        • Method

        Method adalah fungsi yang ada dalam class. Method bila di ibaratkan dari class Mahasiswa, method adalah apa saja yang dapat dilakukan oleh mahasiswa, contohnya seperti MelihatBiodataMahasiswa, MembayarSPP, MengambilKRS dan sebagainya.

        Cara penulisan method adalah dengan menuliskan Access Modifier lalu membuat nama fungsi. Contoh :

        <?php
            class Mahasiswa{
                public $nama='AsvarizalFilcha'; //Property 
                public $jurusan='Informatika'; //Property
                public function bayarSPP(){ //Method
                    echo "Anda membayar SPP";
                }
            }
            $rizal=new Mahasiswa(); //Object
            $rizal->bayarSPP();
        ?>
        

          bayarSPP()  adalah method dengan hak akses public, artinya bisa langsung di akses melalui object. $rizal->bayarSPP(); ini adalah contoh memangil method melaui object maka hasilnya :

          Anda membayar SPP

          Variable this
          Variable this yg dituliskan $this adalah sebuah variable yang menandakan kalau property atau method berada dalam class tersebut. Contoh:

            <?php 
                class Mahasiswa{
                    public $nama='AsvarizalFilcha'; //Property
                    public function tampilkanNama(){ //Method
                        echo $this->nama; //Contoh dari penggunaan $this
                    }
                }
                $rizal=new Mahasiswa(); //Object
                $rizal->tampilkanNama();
            ?>
            

              Hasil :

              Asvarizal Filcha

              Setter and Getter
              Setter adalah method yang digunakan untuk memasukkan data kedalam property, sedangkan Getter adalah method yang digunakan untuk mendapakan data dari property.

              Fungi dari setter dangetter adalah untuk mengolah property yang memiliki hak akses private atatu protected. Contoh setter dan getter :

              <?php 
                  class Mahasiswa{
                      private $nama; //Property 
                      public function setNama($nama){ //Contoh Setter 
                          $this->nama=$nama;
                      }
                      public function getNama(){ //Contoh Getter
                          return $this->nama;
                      }
                  }
                  $rizal=new Mahasiswa(); //Object
                  $rizal->setNama("Asvarizal"); //Memanggil Setter
                  echo $rizal->getNama(); //Memanggil getter
              ?>
              

              Hasil :

              Asvarizal

              Leave a Reply

              Your email address will not be published. Required fields are marked *