Indonesian (Bahasa Indonesia) translation by Imam Firmansyah (you can also view the original English article) Show
Pada artikel ini, kita akan mengeksplorasi dasar-dasar pemrograman berorientasi objek dalam PHP. Kita akan mulai dengan pengantar kelas (class) dan objek(object), dan kita akan membahas beberapa konsep canggih seperti pewarisan (inheritance) dan polimorfisme di bagian akhir artikel ini. Apa itu Pemrograman Berorientasi Objek (OOP)?Pemrograman berorientasi objek, yang biasa disebut sebagai OOP, adalah pendekatan yang membantu Anda mengembangkan aplikasi yang kompleks dengan cara yang mudah dipelihara dan terukur dalam jangka panjang. Dalam dunia OOP, entitas
dunia nyata seperti Di OOP, ada konsep "class", yang digunakan untuk memodelkan atau memetakan entitas dunia nyata ke templat data(properti) dan fungsionalitas
(method). "Object" adalah turunan dari sebuah class, dan Anda dapat membuat banyak instance dari class yang sama. Sebagai contoh, ada class Class mendefinisikan properti. Misalnya, untuk class Person, Kami mungkin memiliki Anda juga dapat mendefinisikan method di class yang memungkinkan Anda untuk memanipulasi nilai properti object dan melakukan operasi pada object. Sebagai contoh, Anda bisa menentukan method Apa itu Class pada PHP?Class adalah template yang mewakili entitas dunia nyata, dan mendefinisikan properti dan method entitas. Pada bagian ini, kita akan membahas tipikal anatomi dasar class pada PHP. Cara
terbaik untuk memahami konsep baru adalah dengan sebuah contoh. Jadi mari kita lihat class <?php class Employee { private $first_name; private $last_name; private $age; public function __construct($first_name, $last_name, $age) { $this->first_name = $first_name; $this->last_name = $last_name; $this->age = $age; } public function getFirstName() { return $this->first_name; } public function getLastName() { return $this->last_name; } public function getAge() { return $this->age; } } ?> Pernyataan Properti Class pada PHPAnda bisa menganggap properti class sebagai variabel yang digunakan untuk menyimpan informasi tentang object. Dalam
contoh di atas, kami telah menetapkan tiga properti — Properti ini bersifat Konstruktor untuk Kelas PHPKonstruktor adalah method class khusus yang dipanggil secara otomatis ketika Anda instantiate sebuah object. Kami akan melihat cara membuat instance object di beberapa bagian berikutnya, tetapi untuk sekarang Anda hanya perlu tahu bahwa konstruktor digunakan untuk menginisialisasi properti object ketika object sedang dibuat. Anda dapat mendefinisikan konstruktor dengan mendefinisikan method Method untuk Class PHPKita dapat menganggap method class sebagai fungsi yang melakukan tindakan spesifik yang terkait dengan object. Dalam kebanyakan kasus, mereka digunakan untuk mengakses dan memanipulasi properti object dan melakukan operasi terkait. Dalam contoh di atas, kami telah mendefinisikan method Jadi itu adalah pengantar singkat tentang struktur class pada PHP. Di bagian selanjutnya, kita akan melihat cara membuat instance object dari class Apakah object dalam PHP?Pada bagian sebelumnya, kita membahas struktur dasar sebuah class di PHP. Sekarang, ketika Anda ingin menggunakan class, Anda harus melakukan instantiate, dan hasil akhirnya adalah sebuah object. Jadi kita bisa menganggap class sebagai cetak biru, dan sebuah object adalah hal aktual yang dapat Anda kerjakan. Dalam konteks class <?php $objEmployee = new Employee('Bob', 'Smith', 30); echo $objEmployee->getFirstName(); // print 'Bob' echo $objEmployee->getLastName(); // prints 'Smith' echo $objEmployee->getAge(); // prints '30' ?> Anda harus menggunakan kata kunci Jika kelas telah mendefinisikan method Selanjutnya, kami telah memanggil method class pada object <?php $objEmployeeOne = new Employee('Bob', 'Smith', 30); echo $objEmployeeOne->getFirstName(); // prints 'Bob' echo $objEmployeeOne->getLastName(); // prints 'Smith' echo $objEmployeeOne->getAge(); // prints '30' $objEmployeeTwo = new Employee('John', 'Smith', 34); echo $objEmployeeTwo->getFirstName(); // prints 'John' echo $objEmployeeTwo->getLastName(); // prints 'Smith' echo $objEmployeeTwo->getAge(); // prints '34' ?> Gambar berikut ini adalah representasi grafis dari class Employee dan beberapa instance-nya. Sederhananya, class adalah cetak biru yang dapat Anda gunakan untuk membuat object yang terstruktur. EnkapsulasiDi bagian sebelumnya, kami membahas cara membuat instance objek dari class Enkapsulasi adalah aspek penting dari OOP yang memungkinkan Anda untuk membatasi akses ke properti atau method dari object tertentu. Dan itu membawa kita ke topik lain untuk didiskusikan: tingkat akses. Tingkat AksesSaat Anda mendefinisikan properti atau method dalam sebuah class, Anda dapat mendeklarasikannya memiliki salah satu dari tiga level akses ini — Akses PublicSaat Anda mendeklarasikan properti atau method sebagai public, properti dapat diakses dari mana saja di luar class. Nilai properti public dapat dimodifikasi dari mana saja dalam kode Anda. Mari kita lihat contoh untuk memahami tingkat akses public. <?php class Person { public $name; public function getName() { return $this->name; } } $person = new Person(); $person->name = 'Bob Smith'; echo $person->getName(); // prints 'Bob Smith' ?> Seperti yang Anda lihat pada contoh di atas, kami telah melakukan deklarasi properti Akses PrivateKetika Anda mendeklarasikan properti atau method sebagai Sekali lagi, mari kita revisi contoh sebelumnya untuk memahami tingkatan akses private. <?php class Person { private $name; public function getName() { return $this->name; } public function setName($name) { $this->name = $name; } } $person = new Person(); $person->name = 'Bob Smith'; // Throws an error $person->setName('Bob Smith'); echo $person->getName(); // prints 'Bob Smith' ?> Jika Anda mencoba mengakses properti private dari luar class, itu akan menimbulkan kesalahan yang fatal Ada alasan bagus mengapa Anda mungkin ingin menjadikan properti private. Misalnya, mungkin beberapa tindakan harus diambil (memperbarui basis data, mengatakan, atau merender ulang template) jika properti itu berubah. Dalam hal ini, Anda dapat mendefinisikan method setter dan menangani logika khusus ketika properti diubah. Akses ProtectedAkhirnya, ketika Anda mendeklarasikan properti atau method sebagai InheritanceInheritance adalah aspek penting dari paradigma pemrograman berorientasi objek yang memungkinkan Anda mewarisi properti dan method class lain dengan melakukan extend. class yang diwariskan disebut parent class (class induk), dan class yang mewarisi kelas lain disebut child class. Ketika Anda melakukan instantiate sebuah object dari child class, itu akan mewarisi properti dan method dari parent class juga. Mari kita lihat screenshot berikut untuk memahami konsep dari pewarisan (inheritance). Dalam contoh di atas, class Mari kita coba melalui contoh dunia nyata untuk memahami cara kerjanya. <?php class Person { protected $name; protected $age; public function getName() { return $this->name; } public function setName($name) { $this->name = $name; } private function callToPrivateNameAndAge() { return "{$this->name} is {$this->age} years old."; } protected function callToProtectedNameAndAge() { return "{$this->name} is {$this->age} years old."; } } class Employee extends Person { private $designation; private $salary; public function getAge() { return $this->age; } public function setAge($age) { $this->age = $age; } public function getDesignation() { return $this->designation; } public function setDesignation($designation) { $this->designation = $designation; } public function getSalary() { return $this->salary; } public function setSalary($salary) { $this->salary = $salary; } public function getNameAndAge() { return $this->callToProtectedNameAndAge(); } } $employee = new Employee(); $employee->setName('Bob Smith'); $employee->setAge(30); $employee->setDesignation('Software Engineer'); $employee->setSalary('30K'); echo $employee->getName(); // prints 'Bob Smith' echo $employee->getAge(); // prints '30' echo $employee->getDesignation(); // prints 'Software Engineer' echo $employee->getSalary(); // prints '30K' echo $employee->getNameAndAge(); // prints 'Bob Smith is 30 years old.' echo $employee->callToPrivateNameAndAge(); // produces 'Fatal Error' ?> Yang penting untuk diperhatikan di sini adalah bahwa class Dalam contoh di atas, objek Selanjutnya, kami telah mengakses method Di sisi lain, Anda dapat menggunakan object Jadi itu pengantar singkat tentang pewarisan (inheritence). Ini membantu Anda mengurangi duplikasi kode, dan dengan demikian mendorong konsep reusability (penggunaan kembali kode). PolimorfismePolimorfisme adalah konsep penting lainnya dalam dunia pemrograman berorientasi objek yang mengacu pada kemampuan untuk memproses objek secara berbeda berdasarkan tipe datanya. Misalnya, dalam konteks pewarisan, jika child class ingin mengubah perilaku (behavior) dari method class parent, itu dapat menggantikan metode tersebut. Ini disebut metode overriding. Mari kita segera melihat contoh yang sesungguhnya untuk memahami konsep dari method overriding. <?php class Message { public function formatMessage($message) { return printf("<i>%s</i>", $message); } } class BoldMessage extends Message { public function formatMessage($message) { return printf("<b>%s</b>", $message); } } $message = new Message(); $message->formatMessage('Hello World'); // prints '<i>Hello World</i>' $message = new BoldMessage(); $message->formatMessage('Hello World'); // prints '<b>Hello World</b>' ?> Seperti yang Anda lihat, kami telah mengubah perilaku dari method (Beberapa bahasa berorientasi objek juga memiliki semacam kelebihan method yang memungkinkan Anda mendefinisikan beberapa method class dengan nama yang sama tetapi jumlah argumen yang berbeda. Ini tidak didukung secara langsung dalam PHP, tetapi ada beberapa solusi untuk mencapai yang serupa fungsionalitasnya) KesimpulanPemrograman berorientasi objek adalah subjek yang luas, dan kami hanya menggores permukaan kompleksitasnya. Saya berharap tutorial ini membantu Anda memulai dengan dasar-dasar OOP dan memotivasi Anda untuk terus belajar topik OOP yang lebih tinggi. Pemrograman berorientasi objek merupakan aspek penting dalam pengembangan aplikasi, terlepas dari teknologi yang Anda gunakan. Hari ini, dalam konteks PHP, kami membahas beberapa konsep dasar OOP, dan kami juga mengambil kesempatan untuk memperkenalkan beberapa contoh dalam kehidupan nyata. Jangan ragu untuk mengirimkan pertanyaan Anda menggunakan kolom komentar di bawah ini! Apa itu property pada PHP?Property atau disebut dengan atribut adalah data-data yang terdapat didalam class, datanya itu biasanya berupa sifat. Contohnya seperti yang sudah saya jelaskan sebelumnya tentang pengertian class dan object pada artikel yang sebelumnya yaitu penjelasan sifat dari class.
Apa itu property dalam pemrograman?Property merupakan istilah lain dari Ciri dari suatu objek. Pada banyak bahasa pemrograman istilah property digunakan untuk menjelaskan atribut yang berkaitan dengan suatu struktur data. Property (atau disebut juga dengan atribut) adalah data yang terdapat dalam sebuah class.
Apa yang dimaksud dengan properties pada sebuah objek?Pengertian Property dalam Pemrograman Berbasis Objek
Property (atau disebut juga dengan atribut) adalah data yang terdapat dalam sebuah class. Melanjutkan analogi tentang laptop, property dari laptop bisa berupa merk, warna, jenis processor, ukuran layar, dan lain-lain.
Apakah perbedaan property dan method dalam pemrograman berorientasi objek?Property menjabarkan sifat-sifat yang dimiliki objek sedangkan method menjabarkan kemampuan objek melakukan sesuatu.
|