Konsep MVC dalam Java
MVC (Model View Controller) merupakan
cara atau konsep yang biasa digunakan oleh para programmer dalam pembuatan
program yang terstruktur. Konsep MVC sendiri mempunyai tiga bagian, yaitu
Model, View dan controller.
Ø Berikut penjelasan konsep MVC:
Model digunakan sebagai tempat core suatu program. Model yang akan memproses semua inputan yang dimasukkan oleh user.
Model digunakan sebagai tempat core suatu program. Model yang akan memproses semua inputan yang dimasukkan oleh user.
Ø View sebagai tempat untuk tampilan yang
secara langsung berhubungan dengan user. Atau dengan kata lain sebagai tempat
inputan bagi user.
Ø Controller, merupakan suatu (klas)
pengendali yang akan mengendalikan inputan user. Controller akan mengambil
inputan yang dimasukkan oleh user dan akan mengirimkannya ke klas model untuk
diproses lebih lanjut.
Arsitektur MVC
Arsitektur MVC ini memungkinkan
adanya perubahan dalam domain model tanpa harus mengubah code untuk menampilkan
domain model tersebut. Hal ini sangat bermanfaat ketika aplikasi mempunyai
domain model dan view komponen sangat besar dan kompleks.
Model adalah representasi dari
object yang sedang diolah oleh aplikasi, dalam Java, model ini biasanya
direpresesentasikan sebagai Java Bean. Java Bean adalah class Java biasa atau
POJO (Plain Old Java Object). Syarat sebuah POJO dianggap sebagai Java Bean
adalah :
1.Mempunyai constructor default, constructor yang tidak mempunyai parameter.
2.Semua field-field yang bisa diakses dilengkapi dengan getter dan setter method.
Pendekatan terbaik adalah memisahkan
kode untuk melakukan akses sumber data ke dalam lapisan tersendiri, lapisan ini
biasanya disebut sebagai service. Service diimplementasikan dalam bentuk
class-class yang disebut sebagai manager, misalnya SQLManager, PrintManager,
ReportManager, XMLManager, WebServiceManager dan seterusnya. Dengan begitu kode
akan menjadi lebih rapi dan terstruktur. Manfaat paling terasa adalah kemudahan
pencarian kesalahan dan penambahan modul-modul baru tidak harus merombak
seluruh struktur aplikasi.
View adalah komponen untuk
merepresentasikan Model dalam bentuk visual. Semisal komponen swing, seperti :
JTable, JList, JComboBox dan sebagainya. View juga bertanggung jawab untuk
menangkap interaksi user terhadap sistem, semisal : klik mouse, penekanan
tombol keyboard, barcode scanning dan sebagainya. Controller sebenarnya hanya
sekumpulan kode-kode untuk mensinkronisasi keadaan Model dan View. Jika ada
perubahan data dari Model, Controller harus mengupdate tampilan View. Dan
sebaliknya jika user memberikan event terhadap View, Controller harus
mengupdate Model sesuai dengan hasil interaksi user terhadap View.
Document Object Model (DOM )
Document
Object Model (DOM) adalah object
model standar untuk HTML dan XML yang bersifat platform independent. Sebuah web
browser tidak harus menggunakan DOM untuk menampilkan dokumen HTML. Namun DOM
diperlukan oleh JavaScript yang akan mengubah tampilan sebuah website secara
dinamis. Dengan kata lain, DOM adalah cara JavaScript melihat suatu halaman
HTML.
W3C mulai mengembangkan DOM pada awal 1990-an. Pada bulan
Oktober 1998, DOM 1 diluncurkan. Spesifikasi DOM W3C terbagi
menjadi beberapa tingkat. Sebuah halaman yang mendukung suatu level harus
menerapkan semua persyaratan level tersebut dan di bawahnya.
Sebelum
ada standar DOM dari W3C, masing-masing web browser memiliki DOM
sendiri. Akibatnya, bila suatu website ingin ditampilkan secara cross-browser
compatible, ia harus dirancang untuk setiap web browser yang akan didukung. DOM
standar mempermudah pengembangan aplikasi web.
DOM dibagi dalam 3 Level :
1. Core DOM, Model Standar untuk Dokumen terstruktur.
2. HTML DOM, Model Standar untuk Dokumen HTML.
3. XML DOM, Model Standar untuk Doukumen XML.
HTML DOM
§ Model Objek Standar untuk HTML
§ Standar Interface programming untuk HTML
§ Platform dan Bahasa Bebas/independent
§ Standard W3C
Definisi
: objek dan properti dari semua elemen HTML dan ada mehod2 untuk mengakses
semua elemen tersebut.
Bagan HTML DOM :
Objek HTML DOM!
Document object
Anchor object
Area object
Base object
Body object
Button object
Event object
Form object
Frame object
Frameset object
IFrame object
Image object
Input Button object
Input Checkbox object
Input File object
Input Hidden object
Input Password object
Input Radio object
Input Reset object
Input Submit object
Input Text object
Link object
Meta object
Object object
Option object
Select object
Style object
Table object
TableCell object
TableRow object
Textarea object
2. XML DOM
Definisi
: Sebuah standar untuk mengakses dan memanipulasi XML.
View dari Dokumen XML adalah seperti
Struktur pohon.semua elemen dapat diakses melalui DOM tree. konten dari XML
berupa teks dan atribut2 dapat dimodifikasi dan dihapus atau dapat dibuat
elemen baru. Elemen2nya, Teks dan atribut dikenal dengan Node.
contoh untuk mendapatkan suatu teks
dari <to> sebuah elemen :
xmlDoc.getElementsByTagName(“to”)[0].childNodes[0].nodeValue
§ xmlDoc –
the XML document created by the parser.
§ getElementsByTagName(“to”)[0] – the first <to> element
§ childNodes[0] –
the first child of the <to> element (the text node)
§ nodeValue –
the value of the node (the text itself)
Untuk mengetahui secara pasti coba
aja skrip ini :
<html>
<body>
<h1>W3Schools Internal Note</h1>
<p><b>To:</b> <span id=”to”></span><br />
<b>From:</b> <span id=”from”></span><br />
<b>Message:</b> <span id=”message”></span>
<body>
<h1>W3Schools Internal Note</h1>
<p><b>To:</b> <span id=”to”></span><br />
<b>From:</b> <span id=”from”></span><br />
<b>Message:</b> <span id=”message”></span>
<script
type=”text/javascript”>
if (window.XMLHttpRequest)
{
xhttp=new XMLHttpRequest()
}
else
{
xhttp=new ActiveXObject(“Microsoft.XMLHTTP”)
}
xhttp.open(“GET”,”note.xml”,false);
xhttp.send(“”);
xmlDoc=xhttp.responseXML;
if (window.XMLHttpRequest)
{
xhttp=new XMLHttpRequest()
}
else
{
xhttp=new ActiveXObject(“Microsoft.XMLHTTP”)
}
xhttp.open(“GET”,”note.xml”,false);
xhttp.send(“”);
xmlDoc=xhttp.responseXML;
document.getElementById(“to”).innerHTML=
xmlDoc.getElementsByTagName(“to”)[0].childNodes[0].nodeValue;
document.getElementById(“from”).innerHTML=
xmlDoc.getElementsByTagName(“from”)[0].childNodes[0].nodeValue;
document.getElementById(“message”).innerHTML=
xmlDoc.getElementsByTagName(“body”)[0].childNodes[0].nodeValue;
</script>
xmlDoc.getElementsByTagName(“to”)[0].childNodes[0].nodeValue;
document.getElementById(“from”).innerHTML=
xmlDoc.getElementsByTagName(“from”)[0].childNodes[0].nodeValue;
document.getElementById(“message”).innerHTML=
xmlDoc.getElementsByTagName(“body”)[0].childNodes[0].nodeValue;
</script>
</body>
</html>
</html>
0 comments:
Post a Comment