Teknologi Java SWING dan AWT
BAB
I
PENDAHULUAN
1.1. Latar Belakang
Java adalah
bahasa pemrograman tingkat tinggi yang berorientasi objek dan program java
tersusun dari bagian yang disebut kelas. Kelas terdiri atas metode-metode yang
melakukan pekerjaan dan mengembalikan informasi setelah melakukan tugasnya.
Para pemrogram Java banyak mengambil keuntungan dari kumpulan kelas di pustaka
kelas Java, yang disebut dengan Java Application
Programming Interface (API). Kelas-kelas ini diorganisasikan
menjadi sekelompok yang disebut paket (package).
Java API telah menyediakan fungsionalitas yang memadai untuk menciptakan applet dan aplikasi canggih. Jadi
ada dua hal yang harus dipelajari dalam Java, yaitu mempelajari bahasa Java dan
bagaimana mempergunakan kelas pada Java API. Kelas merupakan satu-satunya cara
menyatakan bagian eksekusi program, tidak ada cara lain. Pada Java program
javac untuk mengkompilasi file kode sumber Java menjadi kelas-kelas bytecode. File kode sumber
mempunyai ekstensi *.java. Kompilator javac menghasilkan file bytecode kelas dengan ekstensi
*.class. Interpreter merupakan modul utama sistem Java yang digunakan aplikasi
Java dan menjalankan program bytecode
Java.
Grafical User
Interface (GUI) adalah salah satu kemampuan Java dalam mendukung dan
manajemen antarmuka berbasis grafis. Tampilan grafis yang akan ditampilkan
terhubung dengan program serta tempat penyimpanan data. Elemen dasar di Java
untuk penciptan tampilan berbasis grafis adalah dua paket yaitu AWT dan Swing. Abstract Windowing Toolkit (AWT),
atau disebut juga “Another
Windowing Toolkit”, adalah pustaka windowing
bertujuan umum dan multiplatform
serta menyediakan sejumlah kelas untuk membuat GUI di Java. Dengan AWT, dapat
membuat window, menggambar, manipulasi gambar, dan komponen seperti Button, Scrollbar, Checkbox, TextField, dan
menu pull-down.
Penggunaan
komponen AWT ditandai dengan adanya instruksi : import
java.awt.*; Swing merupakan perbaikan kelemahan di AWT. Banyak
kelas swing menyediakan komponen alternatif terhadap AWT. Contohnya kelas
JButton swing menyediakan fungsionalitas lebih banyak dibanding kelas Button. Selain itu komponen swing
umumnya diawali dengan huruf “J”, misalnya JButton, JTextField, JFrame, JLabel,
JTextArea, JPanel, dan sebagainya. Teknologi swing menggunakan dan memperluas
gagasan-gagasan AWT. Sementara, penggunaan komponen Swing ditandai dengan
adanya instruksi : import
javax.swing.*;
Untuk selanjutnya
kita dapat melihat penjelasan pada Bab 2 mengenai Swing dan AWT itu sendiri.
1.2. Rumusan Masalah
Adapun
rumusan masalah yang ada berdasarkan topik diatas adalah sebagai berikut:
a. Jelaskan tentang Java Swing!
b. Jelaskan tentang AWT!
1.3. Manfaat Penulisan
Manfaat
dari pembuatan malakah ini adalah untuk mengetahui dan memahami lebih jauh
tentang Teknologi Java Swing dan AWT.
BAB
II
I S I
I S I
2.1. Jelaskan
tentang SWING
Pengertian Java Swing
Java Swing adalah
librari java yang digunkan untuk menciptakan Grafik User Interface (GUI).
Dengan Java Swing kita dapat membuat user interface yang cross platform atau OS
independent. Artinya user interface yang kita buat dapat dijalankan pada system
operasi apa saja (OS yang suport Java) dengan tampilan yang relative sama. Bahkan
kita dapat membuat user interface yang menyerupai Windows XP, Mac OS atau Linux
tanpa tergantung dari OS yang kita gunakan. SWING, adalah salah satu bagian
dari Java Foundation Classes (JFC). Pada JFC ini juga terdapat fasilitas untuk
menambahkan Rich Graphic Functionality.
Komponen Swing
Package dari Swing
menyediakan banyak kelas untuk membuat aplikasi GUI. Package tersebut dapat
ditemukan di javax.swing. Komponen Swing ditulis menyeluruh menggunakan
Java. Kesimpulannya, program GUI ditulis menggunakan banyak kelas dari package
Swing yang mempunyai tampilan look and feel yang sama meski dijalankan
pada beda paltform. Lebih dari itu, Swing menyediakan komponen yang lebih
menarik seperti color chooser dan option pane.
Nama dari komponen GUI
milik Swing hampir sama persis dengan komponen GUI milik AWT. Perbedaan jelas
terdapat pada penamaan komponen. Pada dasarnya, nama komponen Swing sama dengan
nama komponen AWT tetapi dengan tambahan huruf J pada prefixnya. Sebagai
contoh, satu komponen dalam AWT adalah button class. Sedangkan pada
Swing, nama komponen tersebut menjadi Jbutton class.
Dalam
ranah antarmuka pengguna, komponen merupakan
bagian fundamental di Java. Pada prinsipnya,
segala sesuatu yang kita lihat di tampilan
aplikasi Java adalah suatu komponen—misalnya window, menu, dan button.
Di sisi
lain, container adalah jenis komponen yang
“menampung” dan mengelola komponen-komponen lainnya.
Idealnya, suatu komponen harus diletakkan di sebuah container agar
ia dapat digunakan.
Secara umum ada lima bagian dari Swing yang akan sering kita gunakan. Komponen atau
bagian – bagian itu adalah:
1.
Top-level Container, merupakan container dasar di mana komponen lainnya
diletakan. Contoh Top-level container ini adalah Frame, Dialog dan Applet yang
diimplementasi dalam class JFrame, Jdialog, dan JApplet.
2.
Intermediate Container, merupakan komponen perantara di mana komponen
lainnya akan diletakan. Salah satu contoh container ini adalah class JPanel.
3.
Atomic Component, merupakan komponen yang memiliki fungsi spesifik dan
biasanya user berinteraksi langsung dengan komponen jenis ini. Contohnya adalah
JButton, JLabel, JTextField, dan JTextArea.
4.
Layout Manager, berfungsi untuk mengatur bagaimana posisi dari komponen –
komponen yang diletakan pada container. Secara default terdapat 5 macam layout
yaitu berupa class BorderLayout, BoxLayout, FlowLayout, GridBagLayout, dan
GridLayout.
5.
Event Handling, untuk menangani event yang dilakukan oleh user misalnya
menekan tombol, mengkilik mouse dan lain – lain.
Features pada Swing
diantaranya:
1. Swing GUI Component
Swing Toolkit memiliki beragam komponen GUI, mulai dari komponen sederhana (button, check boxes) hingga komponent komplex seperti tabel dan text. Anda pun dapat membuat komponen anda sendiri.
1. Swing GUI Component
Swing Toolkit memiliki beragam komponen GUI, mulai dari komponen sederhana (button, check boxes) hingga komponent komplex seperti tabel dan text. Anda pun dapat membuat komponen anda sendiri.
2. Java 2D API
Dengan Java 2D API , kita dapat dengan mudah menambahkan images, drop shadow, dan lain lain kedalam aplikasi GUI kita.
3. Pluggable Look and Feel Support
Setiap program yang menggunakan Swing Component, dapat diubah tampilannya. Banyak sekali pilihan tampilan yang nantinya dapat kita gunakan dalam pembuatan GUI ini.
4. Data Transfer
Anda dapat menerapkan Data Transfer (Copy, Paste, Drag and Drop pada Swing)
5. Internationalization
Dengan adanya Internationalization, developer dapat membuat software sesuai dengan bahasa negaranya sendiri-sendiri, juga mensupport character dari berbagai negara seperti Japanese, Chinese, Korean.
6. Undo Framework API
Dengan Swing Undo Framework, maka developer dapat menggunakan undo dan redo seperti pada text component. Java Swing mensupport unlimited undo dan redo.
7. Flexible Deployment Support
Swing dapat dideploy ke dalam Applet yang dijalankan via browser. Dapat juga dideploy ke dalam standalone application dengan Java Web Start sebagai Standard Destop Application.
Dengan Java 2D API , kita dapat dengan mudah menambahkan images, drop shadow, dan lain lain kedalam aplikasi GUI kita.
3. Pluggable Look and Feel Support
Setiap program yang menggunakan Swing Component, dapat diubah tampilannya. Banyak sekali pilihan tampilan yang nantinya dapat kita gunakan dalam pembuatan GUI ini.
4. Data Transfer
Anda dapat menerapkan Data Transfer (Copy, Paste, Drag and Drop pada Swing)
5. Internationalization
Dengan adanya Internationalization, developer dapat membuat software sesuai dengan bahasa negaranya sendiri-sendiri, juga mensupport character dari berbagai negara seperti Japanese, Chinese, Korean.
6. Undo Framework API
Dengan Swing Undo Framework, maka developer dapat menggunakan undo dan redo seperti pada text component. Java Swing mensupport unlimited undo dan redo.
7. Flexible Deployment Support
Swing dapat dideploy ke dalam Applet yang dijalankan via browser. Dapat juga dideploy ke dalam standalone application dengan Java Web Start sebagai Standard Destop Application.
2.2. Jelaskan
tentang AWT
Pengertian Abstract Windows Toolkit
AWT atau Abstract
Window Toolkit adalah salah satu platform-independent
Java untuk windowing, graphics,
dan user-interface widget toolkit.
Saat ini, AWT sudah termasuk ke dalam bagian dari Java Foundation Classes (JFC), yaitu standar API untuk
pemrograman Java berbagis GUI. AWT merupakan GUI toolkit untuk beberapa profile Java ME, seperti konfigurasi alat
yang terhubung meliputi Java runtimes
pada mobile telephone untuk
mendukung AWT.
Ketika Java pertama kali dirilis oleh Sun Microsystems
pada tahun 1995, komponen AWT memberikan tingkat abstraksi yang tipis yang
mendasari interface pengguna. Contohnya, menciptakan checkbox AWT akan
menyebabkan pemanggilan langsung subroutine yang mendasari pembuatan checkbox.
Program GUI yang ditulis dengan menggunakan AWT tampak seperti aplikasi asli
ketika dijalankan pada sistem operasi yang menjalankan aplikasi tersebut.
Arsitektur AWT
AWT menyediakan dua tingkat API, yaitu :
1. Interface umum
antara Java dengan sistem asli, digunakan untuk windowing, layout
manager. API ini merupakan inti dari pemrograman Java GUI dan juga
digunakan oleh Swing dan Java 2D yang berisi :
a. Interface antara sistem windowing
asli dan aplikasi Java.
b. Inti dari event subsistem
GUI.
c. Beberapa layout manager.
d. Interface untuk perangkat input
seperti mouse dan keyboard.
e. Paket java.awt.datatransfer untuk
digunakan dengan clipboard dan Drag and Drop.
2. Satu set dasar
komponen GUI seperti button, textbox, dan menu juga menyediakan interface
dasar AWT, yang memingkinkan librari reader dikompilasi ke kode asli untuk
langsung menarik ke AWT canvas permukaan objek gambar.
AWT juga membuat beberapa fungsionalitas tinggi yang
tersedia untuk aplikasi, seperti :
a. Akses ke sistem tray pada sistem pendukung.
b. Kemampuan untuk meluncurkan
beberapa fasilitas aplikasi desktop seperti browser web dan klien email dari
aplikasi.
Baik AWT ataupun Swing secara inherent aman, karena
kode yang meng-update GUI harus dijalankan pada thread event pengirim.
Kegagalan untuk mengatasi masalah inni, kelas utilitas bernama SwingWorker memingkinkan
aplikasi untuk melakukan tugas-tugas yang memakan waktu mengikuti acara-interaksi
pengguna di thread acara pengirim.
AWT (Abstract Windows Toolkit) ini adalah GUI Toolkit
pertama pada bahasa pemrograman java, sayangnya AWT ini sangat-sangat
kekurangan komponen yang biasa digunakan untuk membangun sebuah aplikasi
desktop secara lengkap. Terlepas dari kurangnya komponen GUI yang terdapat pada
AWT, aplikasi yang dibangun menggunakan AWT akan tampak seperti aplikasi
native. Maksudnya yaitu, jika aplikasi yang dibangun menggunakan AWT ini
dijalankan pada Sistem Operasi Windows, maka aplikasi ini akan terlihat seperti
aplikasi Windows pada umunya dan begitu juga jika dijalankan pada Sistem
Operasi Mac ataupun GNU/Linux, itu dikarenakan AWT ini benar-benar memanggil
native subrutin untuk menggambar setiap komponennya ke layar.
BAB
III
PENUTUP
3.1. Kesimpulan
Berdasarkan
pembahsan masalah diatas maka saya dapat menyimpulkan bahwa: Beberapa
perbedaan AWT dan Swing, AWT merupakan komponen heavyweight
(kelas berat) sedangkan Swing lightweight (kelas
ringan). Swing memiliki lebih banyak komponen. Fasilitas Swing Look and Feel : Metal, Windows,
Motif. Komponen Swing berdasar model-view,
yaitu suatu cara pengembangan komponen dengan pemisahan penyimpanan dan
penanganan data dari representasi visual data.
3.2. Saran
Sebaikanya dalam
membuat sebuah program aplikasi, programmer harus memperhatikan dengan baik dan
dapat menggunakan teknologi Java Swing dan AWT dengan sebaik mungkin.
Makasih infonya
BalasHapus