Swing (1) : Pengantar

Oleh : Reza Ervani

بسم الله الرحمن الرحيم

API Swing adalah serangkaian komponen extensible GUI yang mempermudah pengembang untuk membuat aplikasi GUI/Front End berbasis JAVA. Dibangun diatas API AWT dan bertindak sebagai pengganti API AWT karena memiliki hampir seluruh kontrol yang berhubungan dengan kontrol AWT. Komponen Swing mengikuti arsitektur Model-View-Controller untuk memenuhi kriteria-kriteria berikut ini :

  • Sebuah API tunggal cukup untuk mendukung beragam tampilan dan gaya
  • API adalah sebuah model driven sehingga API dengan level yang lebih tinggi tidak diperlukan untuk memiliki data
  • API menggunakan model Java Bean sehingga Builder Tool dan IDE dapat menyediakan layanan yang lebih baik bagi pengembang.

Arsitektur MVC

Arsitektur API Swing mengikuti arsitektur MVC seperti berikut :

  • Sebuah model mewakili data komponen
  • View mewakili visual dari data komponen
  • Controller mengambil input dari pengguna pada view dan menyebabkan perubahan pada data Komponen
  • Komponen Swing memiliki Model sebagai suatu elemen terpisah, sementara View dan Controller adalah bagian dari element yang ada di User Interface. Menggunakan cara ini, Swing memiliki arsitektur look-and-feel yang bersifat pluggable.

Fitur-Fitur Swing

  • Light Weight – Komponen Swing tidak terikat pada API Sistem Operasi, karena kontrol API Swing dirender sebagian besar menggunakan kode JAVA murni bukan bergantung pada panggilan dari Sistem Operasi.
  • Rich controls – Swing menyediakan serangkaian kontrol yang kaya seperti Tree, TabbedPane, Slider, Colorpicker, table control dll
  • Highly Customizable – Kontrol-kontrol Swing dapat dikustomisasi dengan cara yang mudah dikarenakan tampilan visual bersifat tidak terikat pada kondisi internal
  • Pluggable look-and-feel– Aplikasi GUI berbasis SWING dapat dirubah di runtime based pada nilai-nilai yang tersedia
About Reza Ervani 426 Articles
Adalah pendiri programming.rezaervani.com -

Be the first to comment

Leave a Reply

Your email address will not be published.


*


This site uses Akismet to reduce spam. Learn how your comment data is processed.