3/08/2012

JAVA GUI

Sejarah Singkat JAVA

Pada 1991, sekelompok insinyur Sun dipimpin oleh Patrick Naughton dan James Gosling ingin merancang bahasa komputer untuk perangkat konsumer seperti cable TV Box. Karena perangkat tersebut tidak memiliki banyak memori, bahasanya harus berukuran kecil dan mengandung kode yang liat. Juga karena manufaktur – manufaktur berbeda memilih processor yang berbeda pula, maka bahasa harus bebas dari manufaktur manapun. Proyek diberi nama kode ”Green”.

Kebutuhan untuk fleksibilitas, kecil, liat dan kode yang netral terhadap platform mengantar tim mempelajari implementasi Pascal yang pernah dicoba. Niklaus Wirth, pencipta bahasa Pascal telah merancang bahasa portabel yang menghasilkan intermediate code untuk mesin hipotesis.

Mesin ini sering disebut dengan mesin maya (virtual machine). Kode ini kemudian dapat digunakan di sembarang mesin yang memiliki interpreter. Proyek Green menggunakan mesin maya untuk mengatasi isu utama tentang netral terhadap arsitektur mesin. Karena orang – orang di proyek Green berbasis C++ dan bukan Pascal maka kebanyakan sintaks diambil dari C++, serta mengadopsi orientasi objek dan bukan prosedural.



Mulanya bahasa yang diciptakan diberi nama "Oak" oleh James Gosling yang mendapat inspirasi dari sebuah pohon yang berada pada seberang kantornya, namun dikarenakan nama Oak sendiri merupakan nama bahasa pemrograman yang telah ada sebelumnya, kemudian SUN menggantinya dengan JAVA.

Nama JAVA sendiri terinspirasi pada saat mereka sedang menikmati secangkir kopi di sebuah kedai kopi yang kemudian dengan tidak sengaja salah satu dari mereka menyebutkan kata JAVA yang mengandung arti asal bijih kopi. Akhirnya mereka sepakat untuk memberikan nama bahasa pemrograman tersebut dengan nama Java.

Pengertian GUI

Kalau dilihat pengertian tentang GUI secara umum adalah Interaksi yang dapat dilaksanakan oleh user melalui menu dan icon yang diperlihatkan dalam modus grafik. Contoh implementasi GUI-based shell ini adalah pada sistem operasi Microsoft Windows.


Kesimpulan JAVA GUI (Graphical User Interface)

Selang hanya beberapa tahun, Java kini sudah mendukung dan dikerahkan di berbagai perangkat. Ada yang digunakan untuk mainframe, midrange server, PC, dan perangkat genggam. Bahkan ada sebuah kelompok yang sedang mengerjakan real-time embedded Java untuk aplikasi pengendalian.

Selain dari embedded environment sebagian besar pengembang Java membuat beberapa jenis user interface untuk aplikasi mereka. Untuk hal-hal seperti alat konfigurasi mereka buat sebuah antarmuka berupa baris perintah (command-line) dan sudah cukup bagus digunakan. Namun java juga mendukung aplikasi ke berbagai pengguna atau untuk aplikasi yang diperlukan untuk menampilkan data kepada antarmuka pengguna berbentuk grafis yang terbaik.

Java GUI mendukung pembangunan melalui Abstract Windowing Toolkit, atau AWT. AWT adalah Java yang setara dengan Microsoft Windows Common Control Library atau Motif widget toolkit. Ini termasuk pendukung untuk pemrograman grafik sederhana serta sejumlah komponen seperti tombol, menu, daftar, dan kelas check box.

Java AWT Dasar
Java AWT memungkinkan para pengembang untuk segera membangun applet dan aplikasi Java menggunakan sekelompok komponen antarmuka pengguna prebuilt. Sejumlah Java IDE yang tersedia mendukung pembuatan user interface menggunakan AWT dengan menyeret-dan-menjatuhkan komponen dari toolbar. Perlu dicatat bahwa sebenarnya IDE ini menghasilkan kode Java saat ditempelkan yang didasarkan pada apa yang Anda lakukan dalam lingkungan desain grafis.

Ini berbeda dengan toolsets seperti Microsoft Visual Basic yang memisahkan desain antarmuka pengguna dari kode aplikasi. Keuntungan dari pendekatan Java adalah bahwa Anda dapat mengedit GUI baik melalui grafis IDE atau dengan hanya memodifikasi kode Java dan mengkompilasi ulang.

Tiga langkah yang umum untuk semua aplikasi Java GUI adalah:

1. Pembentukan Container
2. Tata letak komponen GUI
3. Penanganan event.

Menciptakan Container
Objek Container ini sebenarnya berasal dari kelas java.awt. Container merupakan salah satu atau warisan dari tiga kelas utama:
java.awt.Window, java.awt.Panel, java.awt.ScrollPane.

Mewakili kelas Jendela jendela standalone (baik jendela aplikasi dalam bentuk java.awt.Frame, atau kotak dialog dalam bentuk java.awt.Dialog).

Java.awt.Panel class yang bukan standalone window dalam dan dari dirinya sendiri, melainkan bertindak sebagai wadah latar belakang untuk semua komponen lain pada formulir. Misalnya, kelas java.awt.Applet adalah keturunan langsung java.awt.Panel.

Laying Out GUI Components
Komponen GUI dapat diatur pada sebuah Container menggunakan salah satu dari dua metode. Metode pertama melibatkan posisi yang tepat (dengan piksel) dari komponen-komponen pada Container. Metode kedua melibatkan penggunaan Java Manajer Layout. Jika Anda berpikir tentang itu, hampir semua komponen GUI mengatur didasarkan pada baris-kolom. Dengan kata lain, tombol, kotak teks, dan daftar umumnya tidak terletak di acak seluruh formulir. Sebaliknya, mereka biasanya rapi diatur dalam baris atau kolom dengan tombol OK atau Batal diatur di bagian bawah atau di samping.

Manajer layout memungkinkan Anda dengan cepat menambahkan komponen dan kemudian mengatur secara otomatis. AWT menyediakan enam layout manajer untuk Anda gunakan:

* Java.awt.BorderLayout
* Java.awt.FlowLayout
* Java.awt.CardLayout
* Java.awt.GridLayout
* Java.awt.GridBagLayout
* Java.awt.BoxLayout

Kelas Container berisi metode setLayout () sehingga Anda dapat mengatur LayoutManager default yang akan digunakan oleh GUI Anda. Untuk benar-benar menambahkan komponen ke container, tambahkan () method:

Panel p = new java.awt.Panel();
Button b = new java.awt.Button(“OK”);
p.add(b);


Penanganan Events
penanganan Event telah berubah, karena Java 1.0 pertama kali dirilis pada tahun 1995. Awalnya, JDK 1.0.2 peristiwa ditangani aplikasi menggunakan model warisan. Sebuah wadah subclassed the action() dan handleEvent () sebagai metode induknya dan menangani aktivitas untuk semua komponen di dalamnya. Sebagai contoh, kode berikut akan mewakili event handler untuk sebuah panel yang berisi OK dan sebuah tombol Cancel:

public boolean handleEvent(java.awt.Event e)
{
if (e.id == java.awt.Event.ACTION_EVENT)
{
if (e.target == buttonOK)
{
buttonOKPressed();
}
else if (e.target == buttonCancel)
(
buttonCancelPressed();
)
}
return super.handleEvent(e);
}

Masalah dengan metode ini adalah bahwa peristiwa tidak dapat dikirimkan ke objek tertentu. Sebaliknya, mereka harus diarahkan melalui penangan yang universal yang meningkatkan kompleksitas dan karenanya melemahkan desain Anda.

Java 1,1 memperkenalkan konsep acara delegation model. Model ini memungkinkan kelas khusus, dikenal sebagai "kelas adaptor" yang akan dibangun untuk didaftarkan dengan komponen dan menangani peristiwa-peristiwa tertentu. Event delegation model menggunakan model-view controller pola yang memisahkan pandangan dari suatu komponen dari datanya. Dengan menggunakan model ini memerlukan tiga langkah sederhana:
Mengimplementasikan antarmuka pendengar yang dikehendaki dalam kelas adaptor Anda. Tergantung pada peristiwa apa yang Anda tangani, sejumlah pendengar interface yang tersedia. Ini termasuk: ActionListener, WindowListener, MouseListener, MouseMotionListener, ComponentListener, FocusListener, dan ListSelectionListener.
Daftar adaptor pendengar dengan komponen yang diinginkan. Hal ini bisa dalam bentuk addXXXListener () metode didukung oleh komponen. Contohnya termasuk addActionListener (), addMouseListener (), dan addFocusListener ().
Mengimplementasikan metode antarmuka pendengar di kelas adaptor Anda. Dalam kode ini bahwa Anda akan benar-benar menangani acara.
Menggunakan model delegasi acara memungkinkan pengembang untuk memisahkan komponen tampilan (user interface) dari acara penanganan (data aplikasi) yang akan menghasilkan lebih bersih, lebih berorientasi objek desain.

No comments:

Post a Comment