Pada postingan kali ini saya akan membahas tentang OOP (Object Oriented Programming) yang ada pada PHP. Bicara tentang OOP, jenis pemrograman ini secara dominan telah digunakan di Java Programming. Karena PHP tidak mau kalah dengan java, dia menyediakan fasilitas untuk bisa menggunakan OOP tidak hanya pada java saja, namun juga bisa menggunakannya di PHP. Lalu apa kelebihan dari penggunaan jenis pemrograman OOP?
OOP yang merupakan kependekan kata Object Oriented Programming adalah suatu metode pemrograman yang menggunakan objek. Objek yang dimaksud adalah suatu benda. Anda bisa menggunakan benda-benda yang ada di sekitar Anda sebagai objek seperti komputer, HP, kursi, meja, gitar, gelas, dan bahkan Anda sendiri adalah objek. Lalu apa yang membedakan antara objek dengan yang bukan objek?
Setiap objek memiliki karakteristik atau sifat sendiri yang membedakan antara objek yang satu dengan objek yang lainnya. Coba bandingkan Anda dengan saya, kita memang sama-sama manusia, namun belum tentu kalau kita memiliki sifat yang sama, belum tentu kita memiliki wajah yang sama, belum tentu memiliki jenis kelamin yang sama, dan yang lainnya. Jadi sudah paham dengan yang dimaksud dengan objek? Oke, mari kita lanjutkan…
Dalam OOP selalu ada yang namanya class, method (behavior), property (attribute). Masih asing dengan istilah-istilah tersebut? Class bisa dikatakan sebagai cetakan untuk membuat objek. Method bisa dikatakan sebagai aksi yang dimiliki oleh class. Sedangkan attribute adalah karakteristik atau sifat-sifat yang dimiliki oleh objek yang dibuat nantinya. Pendeklarasian suatu class selalu terdapat sintak class yang kemudian diikuti dengan nama class dan setelah itu diikuti oleh body class. Body class selalu berada diantara kurung kurawal atau berada diantara tanda { dan }.
1
2
3
4
5
6
7
| // deklarasi class Orang class Orang { // start body class // attributes class // methods class // end body class } |
var
yang kemudian diikuti dengan nama atributnya yang kemudian diakhiri dengan tanda semicolon ;
.
1
2
3
4
5
6
7
8
9
10
11
| class Orang { // start body class // attributes class var $nama ; var $jenis_kelamin ; var $pekerjaan ; // methods class // end body class } |
Setelah atribut-atribut yang dibutuhkan telah kita tentukan, sekarang kita buat method-method class tersebut. Pendeklarasian method pada OOP di PHP menggunakan sintak function. Pendeklarasian method ini mirip dengan pendeklarasian fungsi-fungsi yang ada di PHP pada umumnya. Misalnya saja kita buat agar objek yang kita buat nantinya bisa menyapa, makan, dan minum.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
| class Orang { // start body class // attributes class var $nama ; var $jenis_kelamin ; var $pekerjaan ; // methods class function menyapa() { echo '<p>Halo, nama saya adalah ' . $this ->nama . '<br />' ; echo 'Saya adalah seorang ' . $this ->jenis_kelamin . ' ' ; echo 'yang memiliki pekerjaan sebagai ' . $this ->pekerjaan . '</p>' ; } function makan() { echo '<p>' . $this ->nama . ' sedang makan.</p>' ; } function minum() { echo '<p>' . $this ->nama . ' sedang minum.</p>' ; } // end body class } |
$this
, sudah tahu maksud dari keyword $this ini? Keyword $this
menandakan kalau sedang mengakses atribut class itu sendiri. Penggunaanya dengan cara menuliskan keyword $this
yang diikuti dengan tanda ->
dan setelah itu diikuti dengan nama atribut yang ada dalam kelas tersebut tanpa tanda dollar $
.Nah, selanjutnya mau diapakan class yang sudah dibuat tersebut? Apakah Anda sudah bisa menggunakan method-method yang ada dalam class tersebut? Saya yakin Anda belum bisa menggunakannya. Ingat, class adalah cetakan untuk membuat objek, lalu sudahkah Anda membuat objeknya? Method yang ada didalam class hanya bisa digunakan oleh objek, hal pertama yang perlu Anda lakukan setelah membuat cetakan objeknya adalah membuat objeknya.
Sisipkan kode berikut dibawah pendeklarasian class Orang di atas.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| $aga = new Orang(); $aga ->nama = 'Aga' ; $aga ->jenis_kelamin = 'Laki-laki' ; $aga ->pekerjaan = 'Mahasiswa' ; // memanggil method yang ada dalam class $aga ->menyapa(); $aga ->makan(); $aga ->minum(); $ina = new Orang(); $ina ->nama = 'Ina' ; $ina ->jenis_kelamin = 'Perempuan' ; $ina ->pekerjaan = 'Mahasiswa' ; // memanggil method yang ada dalam class $ina ->menyapa(); $ina ->makan(); $ina ->minum(); |
Orang()
?Di dalam class selalu terdapat method yang selalu dijalankan ketika objek dibuat. Method ini disebut dengan constructor. Jadi ketika Anda membuat suatu object, sebenarnya Anda juga menjalankan method constructor ini. Apa itu constructor? Constructor adalah method yang akan dijalankan ketika objek dibuat. Secara umum constructor adalah method yang memiliki nama yang sama dengan nama class tersebut.
Lalu apakah Anda melihat ada method
Orang()
dalam class
Orang? Walaupun constructor tidak Anda tuliskan, class secara otomatis
akan membuat constructornya sendiri. Pada PHP versi 5.3, pendeklarasian constructor tidak dengan cara menuliskan nama method yang sama dengan nama class tetapi dengan menuliskan nama method __construct()
yang menandakan suatu constructor.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
| class Orang { // start body class // attributes class var $nama ; var $jenis_kelamin ; var $pekerjaan ; // methods class function __construct( $nama , $jenis_kelamin , $pekerjaan ) { $this ->nama = $nama ; $this ->jenis_kelamin = $jenis_kelamin ; $this ->pekerjaan = $pekerjaan ; } function menyapa() { echo '<p>Halo, nama saya adalah ' . $this ->nama . '<br />' ; echo 'Saya adalah seorang ' . $this ->jenis_kelamin . ' ' ; echo 'yang memiliki pekerjaan sebagai ' . $this ->pekerjaan . '</p>' ; } function makan() { echo '<p>' . $this ->nama . ' sedang makan.</p>' ; } function minum() { echo '<p>' . $this ->nama . ' sedang minum.</p>' ; } // end body class } |
1
2
3
4
5
6
7
8
9
10
11
12
| $aga = new Orang( 'Aga' , 'Laki-laki' , 'Mahasiswa' ); $ina = new Orang( 'Ina' , 'Perempuan' , 'Mahasiswa' ); // memanggil method yang ada dalam class $aga ->menyapa(); $aga ->makan(); $aga ->minum(); // memanggil method yang ada dalam class $ina ->menyapa(); $ina ->makan(); $ina ->minum(); |
Nah, dari sini apakah ada yang tidak dipahami? Saya sudah menyediakan file yang bisa Anda coba sendiri dirumah, silakan download saja, link downloadnya ada di bawah. Dan silakan komentar saja kalau ada yang kurang dimengerti…
Download Dasar Object Oriented Programming di PHP (160)
Tidak ada komentar:
Posting Komentar