Apa itu Java Foundation Class?

Java Foundation Classes (JFC) adalah komponen perangkat lunak yang dapat digunakan kembali yang dapat digunakan untuk membangun antarmuka pengguna grafis dalam aplikasi Java®. Mereka adalah peningkatan pada toolkit yang dikirimkan dengan versi awal Java®. Mereka dimaksudkan untuk menyederhanakan pengembangan perangkat lunak, mempersingkat waktu pemrograman dan memenuhi tujuan menciptakan aplikasi yang terlihat dan bertindak sama tidak peduli jenis komputer yang dijalankan.

JFC adalah satu set komponen antarmuka pengguna yang diperluas pada Abstract Window Toolkit (AWT) yang awalnya disediakan dengan bahasa pemrograman Java®. Mereka adalah komponen JavaBeans™ yang merupakan bagian dari Java 2® dan dirancang untuk lintas platform dan dapat disesuaikan. Mereka dimaksudkan untuk mengurangi waktu pemrograman dengan menyediakan komponen yang dapat digunakan kembali dari aplikasi ke aplikasi dan dari platform ke platform. Kelas Java Foundation sebenarnya tidak menggantikan Toolkit Jendela Abstrak tetapi merupakan bagian darinya. Namun, mereka memungkinkan Java® ideal “menulis sekali, jalankan di mana saja” lebih lengkap daripada AWT asli.

AWT memungkinkan desain antarmuka pengguna, tetapi melakukannya menggunakan sistem windowing dari sistem operasi yang dijalankannya. Hal ini membuat sulit untuk membuat aplikasi yang terlihat dan berperilaku sama pada platform apa pun, karena perbedaan fitur yang melekat di antara sistem operasi. AWT juga sangat terbatas karena rangkaian kontrol yang diberikannya tidak cukup luas untuk membuat antarmuka pengguna yang kompleks dan aplikasi perangkat lunak tingkat lanjut. Komponen AWT adalah apa yang Sun Microsystems sebut “kelas berat” karena mereka menggunakan sistem windowing host.

Menyadari keterbatasan AWT, pengembang Netscape menciptakan satu set komponen yang disebut Kelas Dasar Internet. Ini adalah satu set komponen “ringan”, komponen yang ditulis secara native di Java®. Ini memperluas fungsionalitas AWT dan memungkinkan pengembang untuk membuat antarmuka pengguna yang mempertahankan penampilan mereka saat dijalankan pada platform yang berbeda. JavaSoft kemudian memulai proyek bersama dengan Netscape, yang disebut proyek Swing. Proyek ini menghasilkan satu set kontrol antarmuka pengguna dengan variasi yang sebanding dengan yang tersedia dari platform sistem operasi mana pun.

Swing adalah sekumpulan komponen ringan yang dirilis Sun ke publik dalam kombinasi dengan beberapa peningkatan fitur lainnya yang ditujukan untuk Java Development Kit (JDK) versi 1.2. Paket Swing plus peningkatan fitur lainnya inilah yang dinamai JavaSoft sebagai Java Foundation Classes. Kontrol antarmuka pengguna Swing adalah bagian utama dari Java Foundation Class, yang juga mencakup, antara lain, fungsi pencetakan, clipboard, dan aksesibilitas. JDK 1.2 menyertakan versi lengkap JFC, meskipun tersedia versi terbatas yang dapat digunakan dengan JDK 1.1 saat itu.