Perbedaan AWT & SWING

Dalam membangun objek GUI di Java, Kita bisa menggunakan AWT atau Swing, perbedaan keduanya adalah, bahwa AWT adalah tampilan dasar dari setiap target platform (Windows, Macintosh, Solaris) atau berdiri sesuai dengan mekanisme sebuah platform, seperti slogan Java (Write once run everywhere), hal tersebut bagus untuk sebuah program yang simpel, tetapi menjadi sulit ketika mengimplementasikan sebuah program yang lebih kompleks dan harus sesuai dengan target platform. Setiap User Interface elemen seperti Button, TextField, ScrollBar memiliki tingkah laku (behavior) yang berbeda di setiap platform. Yang lebih parah lagi, AWT User Interface Library memiliki bug yang berbeda di setiap platform, hal ini mengubah slogan Java menjadi (Write once, Debug everywhere).

Maka hadirlah Swing yang menawarkan tampilan yang lebih kaya dan bagus. Swing tidak berdasarkan platform yang dituju tetapi menggunakan metode “Painted” yaitu, setiap User Interface Elemen di Gambar ke dalam window/frame kosong. Sehingga setiap User Interface Elemen akan tampil dan berprilaku sama di setiap platform.

Swing bukan pengganti dari AWT, dan tidak bisa berdiri sendiri, karena setiap program butuh berkomunikasi dengan mekanisme dasar dari target platform seperti Event Handling yang ada di AWT, jadi Swing akan selalu berdampingan dengan AWT.

Sayangnya Swing lebih lambat tampil di layar. Dan ketika User Interface tampak sama di setiap platform, maka juga akan tampak berbeda untuk tampilan standar sebuah platform. Dan Java mengatasinya dengan baik sekali, yaitu Swing menyediakan theme specific (Windows theme, Motif Theme, Ocean Theme), yang bisa disesuaikan dengan platform.

Sehingga Swing mengembalikan slogan java (Write Once, Run Everywhere).

http://compirates.wordpress.com/2009/01/22/perbedaan-awt-swing/

About these ads

One thought on “Perbedaan AWT & SWING

  1. agak geli juga baca slogan Java jadi (Write once, Debug everywhere) :D

    tapi makasih buat infonya, sebelumnya saya sering bingung antara perbedaan kedua paket ini..

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s