1.
Swing Make Over Java
Swing Java
adalah
salah satu pemograman berbasis
GUI(Graphical User Interface) di Java. Sesungguhnya di Java terdapat dua macam
pemrograman berbasis GUI(Graphical User Interface) yaitu : AWT dan Swing.
Namun dalam perkembangannya AWT sudah tidak dianjurkan untuk digunakan dikarenakan faktor keamanan. Banyak sekali fitur yang terdapat di Swing, namun dalam kesempatan ini kita hanya akan mengganti icon saja.
Walaupun Swing jarang di gunakan di aplikasi desktop base, karena kebanyakan developer lebih memilih menggunakan VB, Delphi ataupun .NET yang lebih ringan dan tidak makan banyak resource memory karena sifatnya yang native.
Namun penggunaan java bisa untuk lintas platform sehingga kita tidak perlu membuat aplikasi dua kali.
Namun dalam perkembangannya AWT sudah tidak dianjurkan untuk digunakan dikarenakan faktor keamanan. Banyak sekali fitur yang terdapat di Swing, namun dalam kesempatan ini kita hanya akan mengganti icon saja.
Walaupun Swing jarang di gunakan di aplikasi desktop base, karena kebanyakan developer lebih memilih menggunakan VB, Delphi ataupun .NET yang lebih ringan dan tidak makan banyak resource memory karena sifatnya yang native.
Namun penggunaan java bisa untuk lintas platform sehingga kita tidak perlu membuat aplikasi dua kali.
merupakan teknik memanipulasi tampilan User Interfaces (Java Swing). Teknik ini dilakukan dengan menggunakan penggambaran agar tampilan komponen-komponen Java Swing seperti TextField, Button dan lain-lain menjadi kelihatan lebih cantik .
Jadi tampilan komponen-komponen Java Swing tidak monoton seperti itu saja , yang bentuknya selalu persegi panjang atau pun persegi . namun jika kita menggunakan Swing Makeover nanti tampilan komponen-komponen pada Java Swing akan lebih cantik dan menarik . Di bawah ini adalah contoh tampilan project yang menggunakan Java Swing Make Over. Ada juga yang menyebut SwingMakeover dengan sebutan SwingX
Kelebihannya antara lain adalah
sebagai berikut :
- Terdapat fungsi addHighlighter() yang digunakan untuk memberi highlight pada sel tertentu (bisa berupa warna background berbeda dan sebagainya).
- SwingX juga menawarkan komponen baru, seperti JXDatePicker. Ini adalah contoh komponen yang sering dibutuhkan oleh aplikasi, tetapi tidak disediakan oleh Swing secara langsung.
- SwingX juga memiliki kotak dialog siap pakai, seperti JXTipOfTheDay, yang umum dipakai untuk menampilkan tips di program.
2.
Konsep MVC dan Framework
pada JAVA!
MVC
adalah arsitektur aplikasi yang
memisahkan kode-kode aplikasi
dalam tiga lapisan, Model, View dan Control. MVC termasuk dalam
arsitektural design pattern yang menghendaki organisasi kode yang
terstruktur dan tidak bercampur aduk. Ketika aplikasi sudah sangat
besar dan menangani struktur data yang kompleks, harus ada
pemisahan yang jelas antara domain model, komponen view dan
kontroler yang mengatur penampilan model dalam view.
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.
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.
Menurut arsitektur MVC, semua modul
perangkat lunak terpisah menjadi tiga bagian yang berbeda: model, view, dan
controller.
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.
Model
dalam Komponen Swing
Sebagaian besar komponen swing
mempunyai model. JButton mempunyai
model yaitu
ButtonModel yang memegang ‘state’ dari JButton
– apa keyboard mnemonicnya, apakah
JButton tersebut sedang
dipilih atau tidak dan seterusnya. Ada pula komponen swing
yang
mempunyai lebih dari satu model. JList mempunyai ListModel
yang memegang isi dari JList dan
ListSelectionModel untuk
mencatat item JList yang sedang dipilih. Pada banyak kasus normal
kita tidak perlu pusing memikirkan model ini. Semisal
kita tidak perlu memikirkan model dari
JButton karena pada kasus
umum kita tidak perlu memodifikasi model dari JButton.
Keuntungan dari MVC
●
Fleksibilitas dan
reuseability.
●
Hubungan dinamis antara
potongan-potongan model dan view yang memungkinkan
untuk perubahan yang terjadi pada saat run-time daripada selama kompilasi.
●
Pemisahan program ke modul
memungkinkan untuk masalah yang harus dihadapi
lebih mudah.
●
Merancang bagian dari
program tersebut secara terpisah pada saat runtime dapat
membantu modifikasi dan pengelolaan
●
Masa depan perubuhan dapat
dilakukan lebih mudah dengan mengubah segmen
program.
MVC and Java Swing
●
MVC diimplementasikan di
Java pada komponen Swing UI kelas JFC.
● Java menggunakan view yang berbeda dari pola MVC. Di sini, bagian model yang
tetap sementara bagian view dan controler digabungkan menjadi satu komponen.
●Semua komponen di Java Swing
telah didefinisikan model data. Ini dapat berupa
built-in kelas atau kelas yang ditetapkan pengguna.
Keuntungan MVC in Java
●Menerapkan pola MVC dalam
Java untuk pembentukan sebuah toolkit pengguna higly
fleksibel antarmuka.
●Oleh karena itu, komponen
Swing seperti tombol, tabel atau scrollbar dapat
dimodifikas secara bersamaan saat mereka sedang digunakan.
Beberapa alasan
pokok mengapa model MVC menjadi sangat bermanfaat yaitu :
- ü Penggunaan ulang komponen-komponen antarmuka pengguna.
- ü Kemampuan untuk mengembangkan aplikasi dengan antarmuka pengguna secara terpisah.
- ü Kemampuan untuk melakukan pewarisan dari berbagai bagian yang berbeda pada suatu hierarki kelas.
- ü Kemampuan untuk mendefinisikan kelas-kelas pengaturan tampilan yang menyediakan fitur-fitur umum secara terpisah dengan bagimana fitur-fitur itu akan ditampilkan oleh aplikasi yang kita kembangkan.
FRAMEWORK
Framework biasanya bersifat object-oriented dan merupakan
suatu desain sistem yang dapat digunakan kembali .Tujuannya untuk mengurangi
pembuatan kembali kode yang sama sehingga programmer dapat lebih fokus
mengerjakan bagian lain .
Keuntungan
menggunakan framework :
· Menggunakan
kembali kode yang telah dibuat dan diuji sehingga meningkatkan keandalan dari
aplikasi baru dan mengurangi programming
dan usaha pengujian .
· Framework
membantu menciptakan latihan pemrograman yang lebih baik dan penggunaan pola
desain yang sesuai serta alat pemrograman yang baru .
Kekurangan framework:
· Membuat
sebuah framework tidaklah mudah dan memakan waktu serta biaya
· Seiring
berjalannya waktu , framework yang dibuat dapat menjadi lebih kompleks
Beberapa
framework JAVA :
- ü Hibernate
Merupakan framework yang bekerja pada bagian model
(sebagai penghubung antara model dengan database). Hibernate merupakan framework Object
Relational Mapping, dimana dengan framework ini kita bisa lebih mudah melakukan
proses Persistence.
- ü JPA <Java Persistent Api>
- ü EJB <Enterprise JavaBeans>
- ü Struts1 dan Struts2
Merupakan framework yang bekerja pada bagian controller.
- ü JSF <Java Server Faces>
- ü Spring
Merupakan framework yang menghubungkan antara bagian
model dengan view. Framework ini
memperkenalkan konsep IoC (Injection of Controll) adan dikenal dengan nama
Dependency Injection. selain itu Spring juga terus berkembang sampai2 Spring
bisa dibilang framework Enterprise, karena bisa ditempatkan dimana saja dan
dapat diintegrasikan dengan berbagai framework seperti Hibernate contohnya
- ü Apache Wicket
Merupakan implementasi dari JMS paling populer di jagad
raya. Activemq sangat bagus jika kita membangun aplikasi yang membuatuhkan
fasilitas JMS. Namun jika kita menggunakan Enterprise Server seperti GlassFish,
JBoss, Geronimo, Websphere. ActiveMQ jadi tidak perlu digunakan, tapi jika kita
akan membangun sebuah sistem yang perlu JMS tanpa menggunakan Enterprise
Server, ActiveMQ wajib dipake.
1.
SPRING
1. Definisi Spring
Spring
adalah framework pengembangan aplikasi ysang dikembangkan oleh Rod Johnson,
muncul karena spesifikasi EJB yang memaksakan pengembangan komponen harus
mengikuti aturan EJB agar dapat berjalan dalam aplikasi server SJAS dan Jboss.
Dengan Spring, pengembangan komponen dapat dilakukan dengan teknik pemrograman
yang lebih sederhana.
2.
Sejarah Spring
Spring merupakan open source framework yang
diciptakan oleh Rod Johnshon, Pada akhir tahun 1996, Sun menerbitkan
spesifikasi Java Beans 1.00A. spesifikasi ini menjelaskan tentang peraturan –
peraturan coding java yang memperbolehkan suatu objek yang bisa menjadi
komponen yang bisa dipakai berulang – ulang ke dalam suatu aplikasi java yang
lebih kompleks. selanjutnya pada tahun 1998, Sun kembali menerbitkan
policiesnya tentang EJB(Enterprise Java Beans) yang merupakan elemen yang
reusable namun dengan kelebihan – kelebihan seperti server side dan menyediakan
banyak kemampuan untuk enterprise service. EJB dibuat tentunya untuk
mempermudah para developer untuk membuat aplikasi enterprise, namun para
developer merasa tidak demikian. EJB sulit dan sangat rumit sehingga justru
membuat para developer justru kehilangan minat terhadap EJB ini.
Untungnya sekarang pemrograman JAVA lebih
berkembang, seperti adanya AOP(Aspect Oriented Programming) dan
IoC(Inversion of Control) sehingga memberikan Java Beans kekuatan yang lebih,
dibandingkan EJB yang sangat rumit.
3.
Keuntungan Spring
· IoC
Sebagai sebuah framework, spring menawarkan loosely
coupling dengan teknik yang dinamakan IoC. jadi dengan menggunakan IoC, objek
memberikan dependenciesnya saat pembuatan dengan menggunakan entity luar yang
mengkoordinir setiap objek di system. Untuk lebih jelasnya akan dijelaskan pada
bagian Dependency Injection.
· AOP
AOP merupakan salah satu paradigma
pemrograman dengan tujuan untuk meningkatkan modularitas dengan memfokuskan
pada pemisahan-pemisahan modul dengan tujuan-tujuan khusus yang biasa disebut
dengan "Crosscutting Concerns".
· Bersifat Container
Spring
juga merupakan sebuah Container yang mengatur daur hidup dan konfigurasi dari
objek. Dalam spring Anda dapat mendeklarasi bagaimana setiap objek tersebut
seharusnya dibuat, bagaimana seharusnya di konfigurasikan dan bagaimana objek
tersebut dapat berasosiasi dengan yang lain.
· Lightweight container
Beberapa container
aplikasi seperti, EJB Container memaksa kita mengikuti suatu aturan (EJB-spec)
untuk membuat komponen interface atau model. EJB merupakan standar pengembangan
komponen dalam java yg berjalan disisi server dengan suatu kontrak terhadap
aplikasi server seperti SJAS dan JBoss. Namun dengan konsep lightweight tidak
diperlukan lagi suatu spesifikasi khusus dalam pembuatan komponen (POJO),
berikut ciri lightweight container :
- POJO
- Life-cycle
management
- Dependency
Injection
- Consistent
Configuration
- Service
Attachment
·
Merupakan
Framework
Spring
merupakan sebuah framework, maksudnya spring memungkinkan untuk membangun dan
mengkonfigurasi sebuah aplikasi yang kompleks dari komponen-komponen yang
sederhana. Dalam Spring, objek didefinisikan dalam file XMLFitur
inti dari Spring Framework dapat digunakan oleh
setiap aplikasi Java, tetapi ada
ekstensi untuk membangun aplikasi web di atas
platform Java EE. Meskipun Spring Framework tidak memaksakan model pemrograman tertentu,menjadi populer
di Java Community sebagai
alternatif, pengganti, atau
bahkan selain model Enterprise JavaBean (EJB).
Fitur-fitur
dari Spring Framework :
Transaction
Management :
Spring
framework menyediakan sebuah layer abstrak yang generik untuk manajemen
transaksi, sehingga memudahkan para developer dalam melakukan manajemen transaksi.
JDBC
Exception Handling :
layer
abstrak JDBC menawarkan exception yang bersifat hierarki sehingga memudahkan
penanganan error.
Integration
with Hibernate, JDO, and iBatis :
Spring
menawarkan layanan integrasi terbaik dengan Hibernate, JDO dan iBatas
AOP
Framework :
Spring
merupakan framework AOP Terbaik yang pernah ada.
MVC
Framework :
Spring
hadir
dengan framework aplikasi web MVC, yang dibangun di atas inti Spring. Spring
merupakan framework yang sangat fleksibel dalam pengaturan strategi interface,
dan mengakomodasi beberapa teknologi view seperti JSP, Velocity, Tiles, iText,
dan POI
Arsitektur Spring :
Spring
AOP
Salah
satu komponen utama Spring adalah AOP Framework,
AOP
framework digunakan untuk :
ü
Untuk menyediakan layanan Enterprise,
terutama sebagai pengganti EJB. Layanan terpenting dalam layanan ini adalah
untuk mendekralitf manajemen transaksi, yang telah disediakan dalam abstraksi
spring transaction.
ü
Untuk memungkinkan pengguna dalam menerapkan
AOP dalam penggunaan OOP.
Spring
ORM
Spring
ORM berhubungan dengan akses database dan menyediakan lapisan layer
terintegrasi dengan ORM yang populer termasuk JDO, Hibernate dan iBatis.
Spring
Web
Merupakan
bagian dari modul pengembangan Web Spring termasuk Spring Web MVC.
Spring
DAO
DAO
(Data Access Object) mendukung standarisasi akses data yang menggunakan
teknologi seperti JDBC, Hibernate dan JDO.
Spring
Context
Paket
ini didasari pada paket beans untuk menambah dukungan sumber pesan dan untuk
pola desain Observer, dan kemampuan untuk mendapatkan sumber daya yang
konsisten dengan menggunakan API.
Spring
Web MVC
Menyediakan
implementasi MVC untuk aplikasi web.
Spring
Core
Paket
Spring Core ini merupakan komponen paling penting dari Spring Framework.
Komponen ini menyediakan fitur Dependency Injection. BeanFactory memisahkan
dependensi seperti inisialisasi, pembentukan dan akses object dari logika
program anda
4.
KESIMPULAN
Sebenarnya penerapan
Swing Make Over ini tidak terlalu rumit. Hanya agar membuat suatu tampilan
program yang kita buat lebih menarik.
Swing Make Over / Swing
X sendiri memiliki keunggulan dibandingkan Swing sendiri, misalnya: adanya
tampilan untuk membuat tanggal, dan tampilan tanggal ini juga cukup lumayan
menarik.
Dalam JAVA juga ada yang
namanya Framework, yang jenisnya cukup banyak, dan salah satunya yaitu SPRING,
yang punya kelebihan : Mudah
dipelajari, Tidak terlalu invasif,Helper
class yang banyak, Mendukung AOP, Menyediakan
integrasi dengan framework lain. Dengan adanya framework ini, maka programer
akan lebih mudah untuk memaintain programnya.
Manfaat Framework
Beberapa manfaat yang dapat kita peroleh dengan menggunakan framework dalam pengembangan aplikasi :
#> Penggunaan komponen-komponen reusable, waktu pengembangan lebih singkat penerapan design patterns memudahkan dalam rancangan, pengembangan dan pemeliharaan sistem.
#> Stability dan reliability, aplikasi yang kita bangun lebih stabil dan handal karena berbasis pada framework yang sudah teruji stabilitas dan kehandalannya.
#> Coding style konsisten, memudahkan dalam membaca kode dan dalam menemukan bugs.
#> Security concern, framework mengantisipasi dan memasang perisai terhadap adanya berbagai masalah keamanan yang mungkin timbul.
#> Dokumentasi, framework dapat mendisiplinkan kita untuk menulis dokumentasi untuk apa yang kita tulis.
Beberapa manfaat yang dapat kita peroleh dengan menggunakan framework dalam pengembangan aplikasi :
#> Penggunaan komponen-komponen reusable, waktu pengembangan lebih singkat penerapan design patterns memudahkan dalam rancangan, pengembangan dan pemeliharaan sistem.
#> Stability dan reliability, aplikasi yang kita bangun lebih stabil dan handal karena berbasis pada framework yang sudah teruji stabilitas dan kehandalannya.
#> Coding style konsisten, memudahkan dalam membaca kode dan dalam menemukan bugs.
#> Security concern, framework mengantisipasi dan memasang perisai terhadap adanya berbagai masalah keamanan yang mungkin timbul.
#> Dokumentasi, framework dapat mendisiplinkan kita untuk menulis dokumentasi untuk apa yang kita tulis.
Tidak ada komentar:
Posting Komentar