Langsung ke konten utama

OOP dengan PHP || Praktikum 5




Assalamualaikum wr. wb..


Hallo Berjumpa lagi di Blog Praktikum..


Pembahsan kali ini ada OOP PHP, Atau OOP dengan Php..

Tujuan dari OOP diciptakan adalah untuk mempermudah pengembangan program dengan cara mengikuti model yang telah ada di kehidupan sehari-hari.


Basic Class pada PHP


Definisi class dasar (basic class) dimulai dengan kata kunci class, diikuti oleh nama class,
kemudian diikuti oleh sepasang kurung kurawal yang melampirkan definisi properties dan method milik class tersebut.


Kata apapun bisa dijadikan nama class kecuali nama /
kata yang sudah menjadi kata kunci pada PHP class dapat berisi class nya sendiri, 
(yaitu "propertieses"), & fungsi (yaitu "methods"). constants, variables.


Contoh Simple Class nya


<?php
class SimpleClass
{
    // property Deklarasi
    public $var = 'a default value';

    // method Deklarasi    

    public function displayVar() {
        echo $this->var;
    }
}
?>


Instansiasi Class


Untuk membuat instance class, kata kunci “new” harus digunakan.
Objek akan selalu dibuat kecuali objek memiliki konstruktor yang ditentukan untuk melempar exception pada error.
Class harus didefinisikan sebelum instantiasi (dan dalam beberapa kasus ini adalah persyaratan).
Jika string yang berisi nama class digunakan dengan kata kunci “new”, instance baru dari class tersebut akan dibuat.
Jika class ada di namespace, nama class secara keseluruhan harus digunakan agar memenuhi syarat .



Contohnya : 


<?php
$instance = new SimpleClass();

// This can also be done with a variable:
$className = 'SimpleClass';
$instance = new $className(); // new SimpleClass()

var_dump($instance);
?>


Objek



Dalam konteks class, kita dapat membuat objek baru dengan objek atau parent baru


Saat menetapkan instance class yang sudah dibuat ke variabel baru,

variabel baru akan mengakses instance yang sama dengan objek yang ditugaskan.

Hal ini sama ketika menyampaikan instance ke suatu fungsi. Salinan objek yang sudah dibuat dapat dipakai dengan mengkloningnya.



 Extends


class dapat mewariskan method dan properties class lain dengan menggunakan kata kunci yang diperluas dalam deklarasi class.
Tidak mungkin untuk memperpanjang beberapa class; suatu class hanya dapat mewarisi dari satu class dasar
method dan properties yang diwarisi dapat diganti dengan mendeklarasikannya dengan nama yang sama yang didefinisikan di class induk.


Namun, jika class induk telah mendefinisikan method sebagai final, method itu mungkin tidak diganti.
Dimungkinkan untuk mengakses method yang diganti atau properties statis dengan mereferensikannya dengan parent :: .
Saat mengganti method, tanda parameter harus tetap sama atau PHP akan menghasilkan kesalahan level E_STRICT.
Ini tidak berlaku untuk konstruktor, yang memungkinkan penggantian dengan parameter yang berbeda.


 Contohnya :




<?php
class ExtendClass extends SimpleClass
{
    // Redefine the parent method
    function displayVar()
    {
        echo "Extending class\n";
        parent::displayVar();
    }
}

$extended = new ExtendClass();
$extended->displayVar();
?>


::Class


Sejak PHP 5.5, kata kunci class juga digunakan untuk resolusi nama class.
Anda bisa mendapatkan string yang berisi nama kualifikasi penuh dari class ClassName dengan menggunakan ClassName :: class.
Ini sangat berguna dengan class namespace.



<?php
namespace NS {
    class ClassName {
    }

    echo ClassName::class;
}
?>


Contoh kasus :



Buat class baru dengan nama HewanPeliharaan yang terdiri dari atribut nama dan jenis, dan metode bersuara.
HewanPeliharaan bersuara sesuai dengan jenis nya. Jika jenisnya Kucing maka bersuara Mengeong, jika jenisnya Kambing maka bersuara Mbe
Pastikan kelompokan HewanPeliharaan berdasarkan jenis makananya juga  


yang pertama ada

Class dengan Sebagai berikut ini :


HewanPeliharaan

KelompokMakanan

dan

Main classnya


pertama ada :

<?php 
class KelompokMakanan{
    public $makanan;
    public function jenisMakanan()
    {
        $makanan = $this->makanan;
        switch($makanan){
            case 'Daging':
                return'Karnivora';
            case 'Rumput':
                return'Herbivora';    
        }
    }
}
 ?>



Pada Class KelompokMakanan Ini ada atributnya makann dan methodnya JenisMakanan yang dis esuaikand engan hewan yang akan di peliharaan..



Kedua : Class HewanPeliharaan


<?php 
include 'KelompokMakanan.php';
class HewanPeliharaan extends KelompokMakanan {
    public $nama;
    public $jenis;
    
    public function namahewan(){
        return $this->nama;
    }
    public function jenishewan(){
        return $this->jenishewan;
    }
    public function Bersuara(){
        if ($this->jenishewan == 'kucing') {
            return "meong";
        }
        elseif ($this->jenishewan == 'Kambing') {
            return "mbeeeee";
        }
    }
}
 ?>




Tiga : MainClassnya

<?php 
 include 'HewanPeliharaan.php';

 $peliharaan = new HewanPeliharaan();
 $peliharaan2 = new HewanPeliharaan();

 $peliharaan ->nama = 'Beni';
 $peliharaan ->jenishewan ='kucing'
 $peliharaan ->makanan ='Daging';


 $peliharaan2 ->nama = 'Jajang';
 $peliharaan2 ->jenishewan ='Kambing'
 $peliharaan2 ->makanan ='Rumput';

 ?>
 <style type="text/css" >
    table{
        margin-left25%;
        margin-top7%;
        width50%;
        height20%;
        border-radius5px;
    }
    tr{
        border-radius5px;
        text-aligncenter;
    }
    td
        text-overflowinherit;
        border-radius5px;
    }
    th{
        background:steelblue;    
    }
    div{
        margin-left45%;
        margin-top5%;
    }
 </style>
<div>
    <h4>Data Hewan Peliharaan</h4>
</div>
 <table border="1">
     <thead>
    <tr>
        <th>Nama Hewan</th>
        <th>Jenis Hewan</th>
        <th>Suaranya</th>
        <th>Makananya</th>
    </tr>
    </thead>
    <tr>
        <td><?= $peliharaan ->namahewan(); ?></td>
        <td><?= $peliharaan ->jenishewan(); ?></td>
        <td><?= $peliharaan ->Bersuara(); ?></td>
        <td><?= $peliharaan ->jenisMakanan(); ?></td>
    </tr>
    <tr>
        <td><?= $peliharaan2 ->namahewan(); ?></td>
        <td><?= $peliharaan2 ->jenishewan(); ?></td>
        <td><?= $peliharaan2 ->Bersuara(); ?></td>
        <td><?= $peliharaan2 ->jenisMakanan(); ?></td>
    </tr
 </table>




Hasilnya :





Terimakasihh Telah Berkunjungg...













Komentar

Postingan populer dari blog ini

Pemograman Berorientasri Objek dan Interaksi User Pada JS || Praktikum 16

Assalamualaikum wr wb.. Selamat datang di blog Praktikum.. kali ini saya akan menjelaskan  bagai mana PBO (Pemograman Berorientasri Objek) dan interaksi user pada java script. PBO adalah sebuah pradigama dalam pemograman yang mengelompokan fungsi prosedur variable atau konstanta  terkait  dalam kesatuan. dalam Java script objek utamanya memiliki banyak bawaan seperti Math, Array, String dan Objek interaksi user adanya iteraksifitas dalam aplikasi akan membantu menarik minat pengguna untuk menggunakan aplikasi yang di kembangkan. untuk mengelolah interaksi user ini banyak sekali atribut untk mengolah nya contoh nya berikut penjelasnya  salah satu macam nya : onChange: event ini muncul apabila sebuah elemen ( select , text , atau textarea ) telah diubah nilainya sebelum elemen tersebut kehilangan fokusnya. onClick: event ini muncul apabila terjadi aksi klik terhadap suatu elemen, seperti elemen button . onContextMenu:  event ini muncul apabi...

JAVA SCRIPT : PERULANGAN DAN FUNGSI || Praktikum 15

Assalamualaikum wr wb.. Selamat datang di blog Praktikum.. kali ini saya akan menjelaskan  bagai mana penggunaan Perulangan dan Fungsi Di java Script. Berikut ini adalah Penjelasanya Struktur Kontrol Perulangan Perulangn merupakan struktur yang memungkinkan menjalankan kode  program yang sama beberapa kali perulang di java script memiliki 3 bentuk yaitu : for while do-while a. perulangn for for(inisialisai; kondisi; peubah;){ baris program } b. perulangan while (kondisi){ kode program yang inigin di jalankan beberapa kali } c. perulangan Do-While do{ kode program yang ingin di jalan kan bebebrpa kali;  }while(kondisi); contoh programnya 1.Buat perulangan ini kodinganya : ini hasilnya : 2.Perulangan For ini kodinganya : ini hasil nya : seperti yang di lihat di kodingan bahwa  kodisinya menunjukan <=5 maka kata atau kalimat yang ingin kita ulang akan di ulang sebanyak 5x; 3.perulangan While ini kodin...

Introducing Framework Laravel || Praktikum

  Hallo Selamt Datang.. Kali ini Pembahsan Tentang FrameWork  Laravel Aadalah pengembangan website berbasis MVP yang ditulis dalam PHP yang dirancang untuk meningkatkan kualitas perangkat lunak dengan mengurangi biaya pengembangan awal dan biaya pemeliharaan, dan untuk meningkatkan pengalaman bekerja dengan aplikasi dengan menyediakan sintaks yang ekspresif, jelas dan menghemat waktu.  Sebenarnya Framwork Php banyak jenisnya dan mempunyai berbagai keunggulan masing masing akan tetapi laravel menurut saya lebih mudah digunakan. Beberapa fitur yang terdapat di Laravel : Bundles, yaitu sebuah fitur dengan sistem pengemasan modular dan tersedia beragam di aplikasi. Eloquent ORM, merupakan penerapan PHP lanjutan menyediakan metode internal dari pola “active record” yang menagatasi masalah pada hubungan objek database. Application Logic, merupakan bagian dari aplikasi, menggunakan controller atau bagian Route. Reverse Routing, mendefinisikan r...