Pembangunan desktop Java dengan Qt Jambi

Qt Jambi adalah alternatif baru dan patut diperhatikan untuk Swing dan Java 2D untuk mengembangkan antara muka aplikasi desktop yang lintas platform yang kaya. Dalam artikel ini, penyumbang JavaWorld, Jeff Hanson memperkenalkan Qt Jambi yang baru dikeluarkan, menerangkan bagaimana ia berfungsi di bawah tudung, dan menyajikan contoh pengaturcaraan yang akan membiasakan anda dengan drag-and-drop framework dan alat pembangunan bersepadu.

Qt Jambi, yang dirilis pada awal Juni 2007, adalah kerangka pengembangan yang mengintegrasikan bahasa pengaturcaraan Java dengan kerangka pengembangan C ++ GUI Trolltech yang popular, Qt. Dikeluarkan di bawah lesen sumber terbuka / komersial ganda, Qt Jambi membolehkan pemaju Java menggunakan Java Standard Edition 5.0 (JSE 5.0) dan kemudian untuk memanfaatkan fitur kerangka Qt. Bersama dengan sokongan merentas platform yang diuji oleh industri, Qt Jambi memberikan sokongan untuk asas pengembangan GUI seperti grafik 2D dan 3D, pemesejan peristiwa interobjek drag-and-drop, pengantarabangsaan, akses pangkalan data SQL, protokol rangkaian XML dan TCP / IP. Plugin Qt Jambi Eclipse juga memberi anda pilihan untuk mengakses ciri Qt Jambi menggunakan Eclipse.

Muat turun Qt Jambi
Qt Jambi ditawarkan di bawah lesen sumber terbuka / komersial berkembar. Anda boleh memuat turun salah satu versi dari laman utama Trolltech. Versi sumber terbuka disediakan di bawah Lesen Awam Umum GNU dan hadir tanpa sokongan atau jaminan. Projek komersial diperlukan untuk menggunakan versi komersial Qt Jambi.

Qt Jambi menggunakan asas C ++ GUI lintas platform Qt untuk meringankan tugas mengembangkan antara muka pengguna yang kelihatan dan terasa untuk kebanyakan platform desktop menggunakan kod Java. Oleh itu, ini adalah alternatif yang menarik untuk Swing dan Java 2D untuk pengembangan desktop Java. Dalam pengenalan langsung mengenai Qt Jambi ini, anda akan mengetahui tentang API pembangunan Qt Jambi dan alat pembangunan bersepadu. Anda akan diperkenalkan dengan kerangka GUI berbasis widget Qt Jambi dan belajar bagaimana membuat projek menggunakan Qt Designer. Anda juga akan membandingkan mekanisme pengendalian peristiwa dan slot Qt Jambi dengan kerangka pendengar acara Java, lihat pertama sistem rendering grafik Qt Jambi, dan lihat sendiri bagaimana ia berintegrasi dengan Eclipse melalui pemalam Qt Jambi Eclipse.

Muat turun Qt Jambi sekarang jika anda ingin mengikuti contohnya.

Tinjauan Qt Jambi

Qt Jambi adalah kerangka kerja berbasis Java yang mengintegrasikan kerangka lintas platform C ++ Trolltech untuk pengembangan GUI dengan bahasa pengaturcaraan Java. Fitur berikut tersedia ketika mengembangkan aplikasi desktop Java dengan Qt Jambi:

  • Sokongan lintas platform yang sangat baik untuk grafik 2D dan 3D
  • Mekanisme komunikasi peristiwa interobjektif yang unik
  • Pengantarabangsaan
  • Akses pangkalan data SQL
  • Sokongan untuk XML
  • Sokongan untuk protokol rangkaian TCP / IP

Anda boleh menggunakan Qt Jambi dengan kebanyakan JVM (mesin virtual Java) setelah Java Standard Edition (JSE) 5.0 dan Java Enterprise Edition (JEE) 5.0. Integrasi OS Qt Jambi yang ketat membolehkan anda menghasilkan aplikasi desktop Java yang meniru tampilan dan nuansa OS asli.

Qt memenuhi bahasa pengaturcaraan Java

API Qt Jambi menyediakan lapisan tipis kod Java yang berinteraksi dengan perpustakaan C ++ Trolltech yang disusun secara asli. Lapisan kod Java ini berjalan di mana-mana Java Runtime Environment (JRE) dan menggunakan kerangka Java Native Interface (JNI) untuk berkomunikasi dengan perpustakaan C ++ asli.

Pada dasarnya, Qt Jambi meletakkan lapisan abstraksi Java di atas perpustakaan Ct + Qt. Untuk mengatasi persamaan dan pertindihan antara kelas Ct ++ Qt dan kelas teras Java, Qt Jambi memetakan kelas C ++ yang bertindih dengan kelas Java yang sesuai. Hasilnya, anda mungkin menggunakan konstruk dan operator Java standard dengan abstraksi asli Qt. Anda juga dapat menggabungkan API Qt Jambi dengan API Java bukan Qt.

Jadual 1 menunjukkan kelas Qt yang dipetakan ke kelas teras Java yang setara.

Jadual 1. Kelas Qt dipetakan ke kelas Java yang setara

Kelas Qt Kelas Java
QChar char dan java.lang.Karakter
QHash java.util.HashMap
QList java.util.Daftar
QMap java.util.SortedMap
QString java.lang.String
Q Thread java.lang.Tali
QVector java.util.Daftar

API Qt C ++ bergantung pada jenis nilai abstrak QVariantuntuk merangkum banyak jenis nilai Qt. Kerana bahasa Java sudah menyediakan jenis abstrak umum untuk semua kelas (kelas dasar umum Object), Qt Jambi API bergantung pada Objectkelas di mana sahaja Qt C ++ bergantung QVariant. Qt Jambi memetakan enum C ++ ke enum Java untuk menegakkan keselamatan jenis untuk enum Qt-Java dan bendera bit.

Qt Jambi merangkumi kerangka kerja GUI berasaskan widget yang memanfaatkan peluasan khusus platform seperti ActiveX, OpenGL, dan ClearType. Rangka kerja ini memberikan keupayaan melihat dan merasakan asli untuk tema Windows, Mac OS X dan Linux.

Widget di Qt Jambi mengikuti sintaks helaian gaya yang serupa dengan Helaian Gaya Cascading HTML (CSS), sehingga anda dapat melakukan penyesuaian kecil atau meluas dengan mengubah tag dan sifat gaya CSS. Anda juga boleh subclass widget Qt untuk penyesuaian dan kawalan penampilan dan nuansa yang lebih hebat.

Rangka kerja GUI Qt Jambi merangkumi kelas pengurusan susun atur yang disajikan dalam alat Qt Designer untuk mempermudah susun atur ketika membuat komponen dan aplikasi desktop. Gambar 1 menunjukkan tetingkap Layouts pada alat Qt Designer.

Rangka kerja GUI Qt Jambi menyediakan API untuk membina aplikasi dengan komponen yang dapat disambungkan. Antara lain, anda boleh menggunakan ciri ini untuk membuat aplikasi desktop dengan bar alat dok penampilan dan nuansa asli.