Entri Populer

Sabtu, 25 Juni 2011

jurnal java

Andry Azam Akbar
30108440
IS-162 M4
Jurnal pemenuhantugas bonus

PemrogramanBerorientasi ObjekDalam PHP dan pengenalan J2ME
Pengenalanmengenai :
 Konsep pemograman Berorientasi
 Pengenalan J2ME
 PengantarBerorientasiobjek
 Object dan class
 Properties dan method
 Mendefenisikan class

PEMROGRAMAN JAVA : KONSEP PEMROGRAMAN BERORIENTASI
Untuk dapat menguasai pemrograman Java, harus mengerti dengan baik konsep pemrograman berorientasi objek, karena Java merupakan bahasa pemrograman berorientasi objek. Pada bagian ini akan dibahas konsep-konsep penting dalam pemrograman berorientasi objek, sehingga diharapkan kita akan lebih mudah dalam mempelajari bahasa Java. A. Objek Pada dasarnya semua benda yang ada di dunia nyata dapat dianggap sebagai sebuah objek. Jika perhatikan lebih lanjut, pada dasarnya ada dua karakteristik yang utama pada sebuah objek , yaitu :
• Setiap objek memiliki atribut sebagai status yang kemudian akan disebut sebagai state.
• Setiap objek memiliki tingkah laku yang kemudian akan disebut sebagai behaviour.
Contoh sederhananya adalah : objek sepeda
• Sepeda memiliki atribut ( state ) : pedal, roda, jeruji, dan warna.
• Sepeda memiliki tingkah laku ( behaviour ) : kecepatannya menaik, kecepatannya menurun, dan perpindahan gigi sepeda.
Dalam pengembangan perangkat lunak berorientasi objek, objek dalam perangkat lunak akan menyimpan state-nya dalam variabel dan menyimpan informasi tingkah laku ( behaviour ) dalam method-method atau fungsi-fungsi/prosedur. B. Class
Class berbeda dengan objek. Class merupakan prototipe yang mendefinisikan variabel-variabel dan method-method secara umum. Sedangkan objek pada sisi yang lain merupakan instansiasi dari suatu kelas.


Latihan 10. Class.java class Buku { String pengarang; String judul; void Isi(String isi1,String isi2) { judul = isi1; pengarang = isi2; }void CetakKeLayar() { if(judul==null && pengarang==null) return; System.out.println("Judul : " + judul + ", pengarang : " + pengarang); } }class Karangan { public static void main(String[] args) { Buku a,b,c,d; a = b = c = d = new Buku(); a.Isi("Pemrograman Java","Asep Herman Suyanto"); a.CetakKeLayar(); b.Isi(null,null); b.CetakKeLayar(); c.Isi(null,"Johan Prasetyo Hendriyanto"); c.CetakKeLayar(); d.Isi("Pemrograman Web",null); d.CetakKeLayar(); } }


C. Enkapsulasi Dalam sebuah objek yang mengandung variabel-variabel dan method-method, dapat ditentukan hak akses pada sebuah variabel atau method dari objek. Pembungkusan variabel dan method dalam sebuah objek dalam bagian yang terlindungi inilah yang disebut dengan enkapsulasi. Jadi, enkapsulasi dapat diartikan sebagai bungkusan ( wrapper ) pelindung program dan data yang sedang diolah. Pembungkus ini mendefinisikan perilaku dan melindungi program dan data yang sedang diolah agar tidak diakses sembarangan oleh program lain. Manfaat dari proses enkapsulasi adalah :
• Modularitas
Kode sumber dari sebuah objek dapat dikelola secara independen dari kode sumber objek yang lain.
• Information Hiding
Karena kita dapat menentukan hak akses sebuah variabel/method dari objek, dengan demikian kita bisa menyembunyikan informasi yang tidak perlu diketahui objek lain. D. Inheritance Class dapat didefinisikan dengan referensi pada class yang lain yang telah terdefinisi. Inheritance merupakan pewarisan atribut dan method pada sebuah class yang diperoleh dari class yang telah terdefinisi tersebut. Setiap subclass akan mewarisi state ( variabel-variabel ) dan behaviour ( method-method ) dari superclass-nya. Subclass kemudian dapat menambahkan state dan behaviour baru yang spesifik dan dapat pula memodifikasi ( override ) state dan behaviour yang diturunkan oleh superclass-nya. Keuntungan dari inheritance adalah :

• Subclass menyediakan state/behaviour yang spesifik yang membedakannya dengan superclass, hal ini akan memungkinkan programmer Java untuk menggunakan ulang source code dari superclass yang telah ada.
• Programmer Java dapat mendefinisikan superclass khusus yang bersifat generik, yang disebut abstract class, untuk mendefinisikan class dengan behaviour dan state secara umum.
Istilah dalam inheritance yang perlu diperhatikan :
• Extends
Keyword ini harus kita tambahkan pada definisi class yang menjadi subclass.
• Superclass
Superclass digunakan untuk menunjukkan hirarki class yang berarti class dasar dari subclass/class anak.
• Subclass
Subclass adalah class anak atau turunan secara hirarki dari superclass.
• Super
Keyword ini digunakan untuk memanggil konstruktor dari superclass atau menjadi variabel yang mengacu pada superclass.
• Methode Overriding
Pendefinisian ulang method yang sama pada subclass. Dalam inheritance, method overriding berbeda dengan method overloading. Kalau method overriding adalah mendefinisikan kembali method yang sama, baik nama method maupun signature atau parameter yang diperlukan dalam subclass, kalau method overloading adalah mendefinisikan method yang memiliki nama yang sama, tetapi dengan signature yang berbeda dalam definisi class yang sama. Latihan 11. Inheritance.java class A { int x; int y; void TampilkanNilaixy() { System.out.println("Nilai x : " + x + ", y : " + y); }

}class B extends A { int z; void TampilkanJumlah() { //subclass dapat mengakses member dari superclass System.out.println("Jumlah : " + (x+y+z)); } }class Inheritance { public static void main(String[] args) { A VarsuperOb = new A(); B VarsubOb = new B(); System.out.println("SuperClass"); VarsuperOb.x = 10; VarsuperOb.y = 20; VarsuperOb.TampilkanNilaixy(); System.out.println("SubClass"); //member superclass dapat diakses dari subclass nya VarsubOb.x = 5; VarsubOb.y = 4; VarsubOb.TampilkanNilaixy(); System.out.println("SubClass Jumlah"); //member tambahan yang hanya ada dalam subclass VarsubOb.z = 30; VarsubOb.TampilkanJumlah(); System.out.println("SubClass"); VarsubOb.x = 15; VarsubOb.y = 14;
VarsubOb.TampilkanNilaixy();
Copyright © 2010 www.jurnalkomputer.com

System.out.println("SuperClass"); VarsuperOb.x = 10; VarsuperOb.y = 20; //super.x = 100; error //super.y = 200; error VarsuperOb.TampilkanNilaixy(); System.out.println("SubClass Jumlah"); VarsubOb.z = 60; VarsubOb.TampilkanJumlah(); } }


E. Polimorfisme Kata polimorfisme yang berarti satu objek dengan banyak bentuk yang berbeda, adalah konsep sederhana dalam bahasa pemrograman berorientasi objek yang berarti kemampuan dari suatu variabel referensi objek untuk memiliki aksi berbeda bila method yang sama dipanggil, dimana aksi method tergantung dari tipe objeknya. Kondisi yang harus dipenuhi supaya polimorfisme dapat diimplementasikan adalah :
• Method yang dipanggil harus melalui variabel dari basis class atau superclass.
• Method yang dipanggil harus juga menjadi method dari basis class.
• Signature method harus sama baik pada superclass maupun subclass.
• Method access attribute pada subclass tidak boleh lebih terbatas dari basis class.

Latihan 12. Polimorfisme.java abstract class Bentuk { protected int panjang; protected int lebar; public String getBentuk() { return "Bentuk Dasar"; }public abstract int hitungLuas(); }class BujurSangkar extends Bentuk { public BujurSangkar(int panjang1, int lebar1) { this.panjang = panjang1; this.lebar = lebar1; }public String getBentuk() { return "Bentuk Bujur Sangkar"; }public int hitungLuas() { return panjang*lebar; } }class SegiTiga extends Bentuk { public SegiTiga(int panjang2, int lebar2) { this.panjang = panjang2; this.lebar = lebar2; }//public String getBentuk() { //return "Bentuk Segi Tiga"; //return ""; //} public int hitungLuas() {
return this.panjang*this.lebar/2;

} }class Polimorfisme { public static void cetakLuasBentuk(Bentuk btk) { System.out.println(btk.getBentuk() + " dengan luas " + btk.hitungLuas()); }public static void main(String[] args) { BujurSangkar bs = new BujurSangkar(10,20); BujurSangkar bs1 = new BujurSangkar(10,20); SegiTiga st = new SegiTiga(5,10); SegiTiga st1 = new SegiTiga(50,100); cetakLuasBentuk(bs); cetakLuasBentuk(bs1); cetakLuasBentuk(st); cetakLuasBentuk(st1); } } F. Interface Pada Java juga dikenal konsep interface, yang merupakan device yang digunakan untuk komunikasi antar objek berbeda yang tidak memiliki hubungan apapun. Interface bisa dikatakan sebagai protokol komunikasi antar objek tersebut. Latihan 13. Interface.java interface Control { public void pindahChannel(int channel); public void PerbesarVolume(int intensitas); public void PerkecilVolume(int intensitas);

}class TelevisiA implements Control { String[] channelTv = {"RCTI","SCTV","INDOSIAR","TRANS TV","TPI"}; public void pindahChannel(int channel) { System.out.println("Pindah channel pada tv A ke : " + channelTv[channel]); }public void PerbesarVolume(int intensitas) { System.out.println("Perbesar intensitas volume pada tv A sebanyak : " + intensitas); }public void PerkecilVolume(int intensitas) { System.out.println("Perkecil intensitas volume pada tv A sebanyak : " + intensitas); } }class TelevisiB implements Control { String[] chanTv = {"TVRI","LA TV","TV 7","RCTI","SCTV"}; public void pindahChannel(int channel) { System.out.println("Perintah pindah channel pada tv B ke : " + chanTv[channel]); }public void PerbesarVolume(int intensitas) { System.out.println("Perbesar intensitas volume pada tv B sebanyak : " + intensitas); }public void PerkecilVolume(int intensitas) { System.out.println("Perkecil intensitas volume pada tv B sebanyak : " + intensitas); } }class RemoteControl { public static final int PINDAH_CHANNEL = 1; public static final int PERBESAR_VOLUME = 2; public static final int PERKECIL_VOLUME = 3; public void kirimPerintahKeTv(int aksi,Control tv,int tombol) {
switch(aksi) {

case PINDAH_CHANNEL: tv.pindahChannel(tombol); break; case PERBESAR_VOLUME: tv.PerbesarVolume(tombol); break; case PERKECIL_VOLUME: tv.PerkecilVolume(tombol); } } }class Interface { public static void main(String[] args) { TelevisiA tvA = new TelevisiA(); TelevisiB tvB = new TelevisiB(); RemoteControl rc = new RemoteControl(); //Kirim perintah ke tvA rc.kirimPerintahKeTv(RemoteControl.PINDAH_CHANNEL,tvA,2); rc.kirimPerintahKeTv(RemoteControl.PERBESAR_VOLUME,tvA,5); //Kirim perintah ke tvB rc.kirimPerintahKeTv(RemoteControl.PINDAH_CHANNEL,tvB,1); rc.kirimPerintahKeTv(RemoteControl.PERKECIL_VOLUME,tvB,3); } }



Pada saat ini pemrograman berkembang ke teknologiWireless internet atau disebut juga dengan internet tanpa kabel sehingga memungkinkan koneksi jaringan internet dengan perangkat mobil ( mobile devices ).Dengan tehnologi “write once run everywhere”aplikasi aplikasi semacam mobile devices dapatdikembangkan dalam Java.Java 2 Micro Edition (J2ME) digunakan untuk
menjalankan dan mengembangkan aplikasi-aplikasiJava pada perangkat semacam telepon genggam, PDA(Personal Digital Assistance) Palm, dan poket PC.Karena adanya J2ME, yang memungkinkan bagi parapengembang untuk bisa membuat aplikasi wireless yang
multi platform, yang dapat diimplementasikan padaberbagai merek telepon genggam, yang mendukungaplikasi Java.Penelitian ini membahas perancangan antar muka danpembuatan MIDlet atau MIDP (Mobile InformationDevice Profile) berupa data JADWAL UJIAN yang
sederhana dibuat dengan MySQL dikoneksikan denganJ2ME toolkit sebagai emulator compilernya dan librarilibrarijava.
Diharapkan dari simulasi ini Java dapat dikembangkanke arah wireless internet koneksi dengan internetdengan Java. Dengan J2ME (Java 2 Micro Edition)emulator platform java yang dibuat berbeda atau samadapat dikenali oleh handphone yang berbeda merek.Sehinggadata yang ditransfer maupun diterima padaproses networking tidak mengubah atau menghapus
keaslian data.
Teknologi Wireless Java
Secara konsep, teknologi wireless dapat dibagidalam dua katagori, pertama untuk local dan keduauntuk area yang luas. Peralatan yang termasuk dalamkatagori pertama misalnya adalah remote control untuk membuka atau mengunci mobil maupun garasi, teleponcordless 900Mhz, peralatan mainan dengan radiocontrol, atau jaringan wireless. Peralatan wireless jenispertama ini hanya bekerja untuk daerah denganjangkauan yang tidak terlalu jauh. Sedangkan peralatanjenis aplikasi yang kedua diantaranya adalah pager,handphone, pda, dan sejenisnya. Jangkauan dari\perangkat tersebut jauh lebih besar dari aplikasi jenispertama. Karena jaringan yang ada di permukaan bumiberupa cell-tower , peralatan komunikasi bergerak sepertihandphone menerima layanan dari sebuah wirelesscarrier atau perusahaan yang mengoperasikan celltowertersebut.Aplikasi komunikasi bergerak, dalamperkembangan awal masing-masing vendormenghasilkan platform aplikasi dan sistem operasisendiri. Sehingga sebuah peralatan handphone Nokiadan Siemens mempunyai platform aplikasi masingmasing.Perbedaaan aplikasi menyebabkan suatuplatform aplikasi maupun sistem operasi dalamhandphone Nokia tidak dapat dijalankan dalamperalatan handphone Siemens misalnya. Sehinggaberakibat memperburuk pengembangan aplikasiaplikasiyang baru.Standarisasi yang dilakukan untukmembuat suatu bahasa pemrograman yang memilikikebebasan platform atau platform independence.Salah satu teknologi Java adalah “write once runeverywhere”, sehingga protabilitas Java merupakansuatu kekuatan yang dimiliki Java. Java dijalankanpada sistem operasi apapun tanpa perlu kompilasiulang program Java yang dibuat. Untuk komunikasibergerak, Sun Microsystem mengenalkan Java 2Micro Edition (J2ME) yang merupakan salah satubagian teknologi Java yang digunakan untuk aplikasiJava yang berjalan pada perangkat mobile device danteknologi aplikasi wireless.
Java Application Programming Interface (Java
API)
Java API merupakan komponen-komponendan kelas Java yang sudah jadi, yang memiliki berbagaikemampuan. Kemampuan untuk menangani objek,string, angka dan sebagainya
1. Applet
Java Applet merupakan program Java yang
berjalan di atas browser. Penggunaan applet ini akan
membuat halaman HTML lebih dinamis dan
menarik.
2. Java Networking
3. Java Database Connectivity (JDBC)
JDBC API terdiri atas class dan interface yangditulis dalam bahasa Java untuk sebagai alat bantubagi pembuat program (developer) danmenyediakan sekumpulan API untuk mengaturkeamanan mengakses database seperti Oracle,MySQL, PostgreSQL, Microsoft SQL Server. Jadikeunggulan API JDBC dapat mengakses sumber data dan berjalan pada semua Platform yang mempunyai Java Viortual Machine (JVM).
4. Java Server Pages (JSP)
JSP adalah suatu teknologi web berbasis bahasa pemrograman Java dan berjalan pada platform Java.JSP merupakan pengembangan dari Servlet serta merupakan bagian dari teknologi Java 2 Platform,Enterprise Edition (J2EE).
5. Java Card


Java 2 Platform
Java 2 Platform, Standard Edition (J2SETM) Platform digunakan untuk menjalankan dan mengembangkan aplikasi Java pada level Personal Computer (PC). Platform ini berisi class-class inti pada Java dan Graphical User Interface (GUI).
Java 2 Platform, Micro Edition (J2METM)
Platform ini digunakan untuk menjalankan dan mengembangkan aplikasi-aplikasi Java pada handheld devices atau perangkat-perangkat semacam handphone, Personal Digital Assistance (PDA) dan PocketPC
Java 2 Platform, Enterprise Edition (J2EETM)
1. Platform ini ber upa paket yang berisi class - class dan interface -interface yang digunakan
untuk menjalankan dan mengembangkan aplikasi Java berbasis web, seperti class -class
Servlet, Java Server Pages (JSP) dan Enterprise
JavaBeans (EJB) serta Java CORBA.
MIDlets
Aplikasi yang berjalan pada sebuahperangkat yang mendukung MIDP disebut dengan
MIDlets, atau lebih singkatnya MIDlet merupakanaplikasi yang dibuat menggunakan Java 2 MicroEdition dengan profile Mobile Information Device
Profile (MIDP).Simulasi Aplikasi J2ME – Java MIDlet pada Jadual Ujian (Agung BP,Kodrat IS, Adji Wibowo)21MIDP dikhususkan untuk digunakan pada handsetdengan kemampuan CPU, memori, keyboard dan layeryang terbatas, seperti handphone, pager, PDA dan sebagainya.
Arsitektur aplikasi MIDPPada Gambar 2,6 Menunjukkan bahwa aplikasi yang mendukung perangkat MIDP adalah aplikasi MIDletyang juga termasuk bagian dari Java 2 Micro Edition.
Daur Hidup (LifeCycle) MIDlet
Lifecycle dari sebuah MIDlet ditangani oleh Application Management Software (AMS). AMS adalah sebuah lingkungan tempat siklus dari sebuah MIDlet,mampu untuk diciptakan, dijalankan, dihentikan maupundihilangkan. AMS sering pula disebut dengan Java Application Manager (JAM). MIDlet memiliki beberapastate, yaitu Pause, Active dan Destroy. Ketika masingmasingstate dipanggil, beberapa method yangbersesuaian dipanggil. Method-method tersebutmerupakan bawaan dari J2ME. Untuk menjelaskanproses MIDlet dalam Java Aplication Manager (JAM)adalah pada Gambar 2.7Status MIDlet
High Level API
Kelas-kelas yang menyediakan fungsionalitas untuk pembuatan GUI pada MIDP ada pada paket javax.microedition.lcdui. Pada paket tersebut terdapat tiga interface dan 21 kelas. Interface tersebut adalah Display, Screen dan Form.
Low Level API
Pada level pemrograman yang lebih rendah(low level), akan ditemukan fungsionalitas yang lebih spesifik ke jenis handheld yang digunakan. Kelas -kelas
untuk pemrograman GUI pada level yang lebih rendah ini diimplementasikan oleh kelas javax.microedition.lcdui.Canvas dan javax.microedition.lcdui.Graphics. Kelas Canvas ini
memungkinkan pengguna untuk menggambar garis, titik dan elemen-elemen dasar lain.


Pemrogramanberorientasi object
PHP padaawalnyahanyalahkumpulan script sederhana.Dalamperkembangannya, selanjutnyaditambahkanberbagaifiturpemrogramanberorientasiobjek.Hal inidimulaisejak PHP ke-4.Denganlahirnya PHP 5, fitur-fiturpemrogramanberorientasiobjeksemakinmantapdansemakincepat.Dengan PHP 5, script yang menggunakankonsep object-oriented akanlebihcepatdanlebihefisien.
Pemrogramanberorientasiobjekatau object oriented programming (OOP) merupakansuatupendekatanpemrograman yang menggunakan object dan class. Saatinikonsep OOP sudahsemakinberkembang.Hampirsetiapperguruantinggi di duniamengajarkankonsep OOP inipadamahasiswanya.Pemrograman yang banyakdipakaidalampenerapankonsep OOP adalah java danc++.
OOP bukanlahsekedarcarapenulisansintaks program yang berbeda, namunlebihdariitu OOP merupakancarapandangdalammenganalisasistemdanpermasalahnpemrograman. Dalam OOP setiapbagiandari program adalah object. Sebuah object mewakilisuatubagian program yang akandiselesaikan.
Beberapakonsep OOP dasarantaralain :
1. Encapsulation (class dan object)
2. Inheritance (penurunansifat), dan
3. Polymorphisme
PHP khususnya PHP 5 sudahmendukungbeberapakonsepOOP ,akantetapi PHP 5 tidakmendukungkonsep Multiple-inheritance danpolymorphisme.


Ojectdan class
Bagiandasardarisebuah program yang berorientasi object adalahobjects.Secaramudahkitadapatmemahamimengenaiobjectini. Sebagaicontoh, sebuahmobiladalah object yangmempunyai properties ataubagian-bagian di dalamnyasepertiwarna, mesin, roda, pintudsb.Sebuahmobiljugadapatmelakukansesuatu (adasesuatu yang bias dilakukandenganmobil), sepertimengisibensin,menyalakanmesin,berjalan,mengerem,dsb.
Biasanyaobjectadalahsebuah kata benda. Orangadalah object.Demikianjugapohon, bunga, buku, dsb.Namun object tidakselamanya object fisik. Bisasajasebuahbendaabstrak, seperti account bank, sebuah file di komputer , database, pesan email, acara TV , dsb.
Classmerupakanpenjelasanataudeskripsi object. Di dalam class terdapatpenjelasantentangsuatu object termasuk properties yang dimilikinyasertakelakuanatau method yang bias dilakukanoleh object. Sebagaicontoh, class Orang. Class Orang tentusetidaknyamemilikibebrapabagiansepertitangan, kaki, mata, telinga, dsb. Class Orang jugasetidaknyaharus bias jalan, lompat, lari, melihat, bicara, dsb.
Salah satukeuntungan program didefenisikandengankonsep OOP adalahadanyapengkapsulan (encapsulation) program dalamkelasdanobjek, dimana programmer yang menggunakan class tidakperlumengetahuiisidanjalannya class secara detail, hanyaperlutahubagaimanacaramenggunakannya. Samahalnyadengansebuahmobilmisalnya.Seorangpemilikmobiltentunyatidakperlumengetahuibagian-bagianmobilsecaramenyeluruh.Diatidakperlumengetahuibagaimanamesinmobilmelakukanpembakaran, menggearakkanrodadansebagainya.Diahanyaperlutahubagaimanacaramenjalankanmobil, menghentikanmobildan fungi mobillainnya.

PropertiesdanMethod
Setiap class memiliki properties yang kadangdisebutjuga attributes. Properties darisebuahmobilmisalnyawarna, ukuran, harga, dansebagainya.Di dalam class, properties dinyatakandalamsebuahvariabel.Misalnya $ warna, $ harga, dsb.
Method merupakansesuatu yang bias dilakukanoleh object. Method dalam PHP samaartinyadengansebuahfungsi. Method yang mungkindipunyaidarisebuahmobilmisalnya, method untukmenghidupkanmobil, menjalankanmobil, menghentikanmobil, dsb.
Penamaan properties dan method memilikiaturan yang samadenganpenamaansebuahvariabelataufungsi. Akan tetapiberdasarkankesepatan (convention), penamaan properties dan method harusmenggunakan camel Caps, dimanatiap kata diawalidenganhurufbesarkecuali kata pertama, setiap kata digabungtanpaspasiatau underscore (_).

Mendefinisikan Class
Bentukumummendefinisikansebuah class adalahsbb:
Class namaClass
{
Deklarasikandandefinisikan properties disini
Definisikansemua method disini
}

PenamaannamaClasspadadasarnyasamandenganpenamaanvariabel.Penamaanbebas, bolehapasaja, kecualistdClass. PHP sudahmenggunakannamastdClasssebagainama class built-in. Isi tubuh class terletakdiantaratandakurungkurawalbuka( { ) dankurawaltutup ( } ). Di tubuh class terdapatpendefinisian properties (variabel) dan method-method class.
Menambahkan Properties (Variabel)
Perhatikancontohpendefinisian class besertapropertiesnyasbb:
Class Mobil
{
var $warna;
var $merah;
var $harga;
//Tambahkanpendefinisan method disini
}

Pendeklarasianvariabeldalam class sepertipadacontoh di atas, bukanlahsuatukeharusan, karenadalam PHP variabeltidakperludideklarasikan, cukupdigunakansaja. Namundemikian, pendeklarasianvariabel yang digunakansangatdianjurkanuntukkemudahanpembacaandanpemahaman program.
Variabel class jugadapatlangsungdiinisialisasidengansebuahnilai.Namuninisialisasivariabeltidakbolehmengandungoperasiaritmatikamaupunoperasi yang lainnya.Perhatikancontohberikut:
class Mobil
{
var $warna = “Biru”;
var $merk = “BMW”;
var $harga = “10000000”;
//Tambahkanpendefinisian method disini
}

Menambahkan method
Untukmenambhakanmethod,tinggalmendefinisikan method serpertihalnyafungsibiasa. Misalnyakitaakanmenambahkanfungsiatau method untukmenggantiwarnamobildanuntukmenampilkanwarnamobil. Nama method padadasarnyaterserah (mengikutiaturannamavariabel). Namundemikian, janganmenggunakannama method yang diawalidenganduabuah under-score (_) yaitu _construct(), _destruct()dan_clone()karenaketigafungsitersebutmempunyaiartisendiri di PHP.

Lihatcontohmenambahkan method sbb:
Class Mobil
{
var $warna = “Biru”;
var $merk = “BMW”;
var $harga = “10000000”;

functiongantiwarna ($warnaBaru)
{
this->warna = $warnaBaru;
}
Function tampilWarna ()
{
Echo “Warnamobilnya : “ . $this->warna;
}
}

Pada listing program di atassudahditambahkanfungsiatau method gantiWarna()dantampilWarna(). Untukmengakses properties (variabel) bias menggunakan keyword $this. Keyword ini me-refer pada class tempatnyaberada. Method gantiWarna() mempunyaisatu parameter, yaitu $warnaBaru.

MenambahkanKontrukstor
Kontrukstormerupakansebuah method khusus yang akansecaraotomatisdijalankansaat object terbentuk. Konstruktortidakharusada, namundalamsatu class hanyabolehadasatukonstruktor.Method konstruktorbiasanyaberisipemberiannilai default darimasing-masing properties (variabel).
Untukmembuatkonstruktor, cukupdenganmendefinisikansuatufungsidengannama_construct(). Perhatikancontohsebagaiberikut:
Class Mobil
{
var $warna;
var $merk;
var $harga;

function _construct()
{
$this->warna = “Biru”;
$this->merk = “BMW”;
$this->harga = “10000000”;
}
Function gantiWarna ($warnaBaru)
{
$this->warna = $warnaBaru;
}
Function tampilWarna ()
{
echo “Warnamobilnya : “ . $this->warna;
}
}


MembentukObjek Class
Untukmembentuksebuahobjek, harusdibentukobjekdariclassnya.Dari sebuah class bisadibentukbeberapaobjeksekaligus.Bentukumumpembentukanobjekadalahsbb :
$namaObjek = new namaClass();
Sedangkanuntukmemanggilanggota (member) dari class dapatdengan format sbb :
$namaObjek->variabel;
$namaObjek->namaMethod();


Program 10.1
Namafile : pbo01.php
Deskripsi : Program sederhanapendefinisian class daripemanggilan class
warna = “Biru”;
$this->merk = “BMW”;
$this->harga = “10000000”;
}
functiongantiWarna ($warnaBaru)
{
$this->warna = $warnaBaru;
}
functiontampilWarna ()
{
echo “Warnamobilnya : “ . $this->warna;
}
}
$a = new Mobil();
$b = new Mobil();
echo “Mobil pertama
”;
$a->tampilWarna();
echo “
Mobil pertamagantiwarna

$a->gantiWarna(“Merah”);
$a->tampilWarna();
//
Echo “
Mobil kedua
”;
$b->gantiWarna(“Hijau”);
$b->tampilWarna();
?>


Program 10.2
Nama File : pbo02.inc.php
Dekripsi : Program class untukmembuatsebuah form inputansederhana.





action = $action;
$this->submit = $submit;
}
functiondisplayForm()
{
echo “
action. “ ‘ method=’POST’>”;
echo “fields); $j++) { echo “; echo “”;
}
echo “”;
echo “
”.$this->fields[$j][‘label].”fields[$j][‘name].” ‘>
”;
echo “submit.” ‘>
”;
}
functionaddField($name. $label)
{
$this->fields [$this->jumField][‘name’] = $name;
$this->fields [$this->jumField][‘label’] = $label;
$this->jumField ++;
}
}
?>


Penjelasanm Program 10.3
Program 10.3 di atasmerupakancontohpemanggilan class yang didefenisikanpada Program 10.2 (pbo02.inc.php).Untukitupertama kali program pbo02.inc.phpharus di-include-kandenganmenggunakanfungsiinclude().
Perhatikan program baris ke-2.Untukmenambahkan form inputan text box, hanyaperludenganmemanggilfungsiaddField().

Memanfaatkan Class yang Tersedia
Denganadanyakonseppemogramanberorientasiobjek, pada programmer PHP di seluruhduniadapatlebihmudahberbagiteknik programming. Kita bisamembuatsuatu class dan programmer laindapatdenganmudahmenggunakannyatanpaperlumengetahuijalannya class tersebut. Di internet saatinibetebaranbegitubanyak class denganfungsinyamasing-masing yang tersediasecaracuma-Cumadandapatdimodifikasisecarabebas.Situs yang berisikumpulan-kumpulancalss PHP yang cukupterkenalantaralainhttp://www.phpclasses.org . Silahkanberkunjungdanambil class yang diinginkan.
Berikutinibeberapaaplikasi PHP yang dibuatdengankonsep OOP yang banyakdigunakandalamaplikasiberbasisweb :
1. PEAR
PEAR merupakansingkatandari PHP Extension and Applicatin Repository.PEAR beisikumpulan class PHP yang dapatdigunakansewaktu-waktu.Class yang cukupbanyakdigunakandarp PEAR adalahPEAR::DByang merupakanabstraction layerantaraaplikasi PHP dengan database.Dengan PEAR::DB program menjadilebihfleksibeldansecaramudahdapatbergantijenis database apapun (MySQL, PosgreSQL, Oracle dsb). PEAR dapat di-download dandilit di situshttp://pear.php.net
2. Smarty
3. Fpdf
4. PHPGraph
5. Dll (belumselesai)

Referensi :
http://www.docstoc.com
http://www.scribd.com
http://ipahipeh.blog.fisip.uns.ac.id
http://jurnalkomputer.com/



Tidak ada komentar:

Posting Komentar