Karena hari ini ga ada kerjaan di kantor, maka saya mencoba salah satu framework yang cukup dikenal di komunitas developer J2ME, namanya LWUIT.
LWUIT adalah singkatan dari Lightweight UI Toolkit. Framework ini dibuat oleh Sun, yang juga pengembang java sendiri. Jadi ekspektasinya framework ini akan “rapi”, dan mudah dipelajari.
Oke, setelah download library-nya, mencari tutorial-nya, download developer guide-nya, dan pusing buat cara pakainya di Eclipse (kebanyakan tutorial ngasih contohnya pakai Net Beans π ), akhirnya muncullah “Hello World”! Kemudian mulailah saya bereksperimen dengan komponen-komponen UI lainnya. XD
Kesan pertama dari buat code pakai ini sih, LWUIT itu ga jauh beda dengan teknik programming Swing di J2SE, atau cara code di BlackBerry API. Jadi pola berpikirnya juga sama. Kita punya komponen yang bisa dipasangkan kedalam kontainer sesuai dengan layout yang kita defenisikan. Ga sulit kan? π
Sekilas model komponen UI di LWUIT masih lebih bagus dari model komponen UI BlackBerry API (maaf ga bisa membandingkan dengan model Android ataupun iOS, belum pernah nyoba soalnya :p ). Komponen di LWUIT itu lebih membuka akses untuk membuat komponen custom. Misalnya, LWUIT mengenal method setBgColor Β atau setFgColor dimana semua hal ini kalau dilakukan di BlackBerry API harus meng-override method paint nya. Begitu juga dengan kontainernya. LWUIT memberikan lebih banyak model kontainer, sehingga programmer bisa lebih mudah meletakkan komponen di tempat yang diinginkan.
Dari beberapa saat mempelajarinya, inilah opini dari saya mengenai LWUIT dan anti fragmentasinya:
1. Fragmentasi resolusi layar device
LWUIT punya mekanisme buat scaling image yang diklaim low memory cost, mekanisme ini digunakan baik pada saat penggambaran image untuk background aplikasi, background button, ataupun background komponen lainnya. Selain scaling ada juga mekanisme buat repeat image (repeat horizontal, repeat vertical, ataupun repeat both). Sehingga tidak perlu lagi membuat banyak image untuk masing-masing resolusi layar.
2. Fragmentasi metode input, termasuk kasus touch dan non-touch device
LWUIT sudah mengakomodasi kedua metode input tersebut. Hal ini sudah termasuk mekanisme navigasi dari satu komponen ke komponen lainnya, trigger bila sebuah button di-click, ataupun text input (sayangnya mekanisme text input masih menggunakan mekanisme J2ME, dimana jika akan muncul tampilan baru khusus buat mengetik teks π¦ )
Satu hal terakhir yang paling membuat saya kagum dengan LWUIT ini adalah pluggable themes. Ini adalah mekanisme dimana semua styling di aplikasi yang menggunakan LWUIT bisa diseragamkan hanya dengan load themes tersebut di aplikasinya. Bayangkan saja seperti sebuah CSS, tapi lebih mudah lagi π . Pembuatan themes ini cukup menggunakan resource editor yang di-bundle bersama dengan library LWUIT.
Tertarik mencoba, langsung aja ke situsnya https://lwuit.java.net π
Leave a comment