Saya yakin banyak sekali orang di dunia ini yang sering mendengar kata “Java” dalam mobile/phone nya. Pasti juga sering sekali mendownload “Game Java” di hapenya, dan pasti juga sering cari hape yang ada Javanya.
Wait, lalu apa kaitannya dengan J2ME/JAVAME dengan pertanyaan satu paragraph diatas?
Java yang kita bicarakan dalam kaitannya dengan mobile/phone ini adalah Java ME (Micro Editions). Sebelum berganti nama menjadi Java ME, nama sebelumnya adalah J2ME (Java 2 Platform Micro Editions. Mungkin anda bertanya, apa bedanya dengan Java SE yang digunakan dalam PC?
Telah kita ketahui bersama bahwa Java telah diakuisisi oleh Oracle dari Sun Microsystems, sehingga untuk anda yang ingin membaca lebih mengenai Java terutama versi Micro ini anda dapat langsung ke website official di http://www.oracle.com/us/technologies/java/mobile/index.html atau anda juga dapat membaca lengkap pada Wikipedia http://en.wikipedia.org/wiki/Java_Platform,_Micro_Edition
Setelah mengetahui pengertian Java ME, lalu apa yang harus dilakukan kemudian bila ingin menjadi seorang developer Java ME? Yup, anda bisa memulai dengan mengenal Editor untuk Java ME dan Api codenya. Editor untuk Java, termasuk Java ME dikenal dengan nama Java ME SDK (Software Development Kit). Sedangkan untuk Api, anda bisa memulai mempelajari Java ME Api References. Semua yang saya sebutkan ini ada dalam situs official java http://www.oracle.com/technetwork/java/javame/javamobile/overview/getstarted/index.html , kedepannya nanti anda akan mengenal hal hal penting yang berhubungan dengan Java ME development seperti LWUIT, JSR, CLDC, MIDP, dan lain-lain.
A.Mari kita lanjut dengan pengenalan Software Development Kit ( SDK),,
SDK dapat anda download pada link http://www.oracle.com/technetwork/java/javame/javamobile/download/sdk/index.html , dengan SDK inilah kita nantinya akan memulai mengetikkan kode perbaris untuk membuat sebuah aplikasi Java untuk mobile. Apa sih yang ada dalam SDK? Banyak, diantaranya adalah Netbeans Integration, Device Manager, Support LWUIT, Network Monitor, CPU Profiler, WURLF Device Database, dan masih banyak lagi.
Coba perhatikan notes dalam situs oracle tersebut, bila anda menggunakan NetBeans 7.1.1, maka anda tidak perlu mendownload Java ME SDK ini karena telah terintegrasi dengan Netbeans versi terbaru (http://www.netbeans.org)
B.Pengenalan LWUIT sebagai UI Library.
Seperti yang telah saya sampaikan di awal, nantinya, dalam kaitannya dengan pengembangan Java ME, anda akan mengenal banyak hal secara bertahap, salah satunya adalah yang akan kita bahas ini , Light Weight User Interface Toolkit (LWUIT). Pasti untuk anda yang sudah familiar dengan Java SE (Java Untuk PC) telah mengenal GUI yang berupa SWING, nah, begitu juga dengan LWUIT , User Interface Library ini menawarkan advanced UI dan Clean Api yang terinspirasi dari Swing. Coba perhatikan gambar berikut ini:
Dengan menggunakan LWUIT ini maka developer Java ME tidak perlu menuliskan kode khusus untuk setiap device tapi hanya dengan menambahkan UI component maka look and feel LWUIT akan menyesuaikan sendiri.
LWUIT itu sendiri disupport oleh MIDP 2.0/CLDC 1.1 dan CDC. Silahkan gabung di LWUIT website http://lwuit.java.net/
Fitur – fitur dalam LWUIT diantaranya:
•UI Controls - Components such as Tree, Table, Buttons, List, etc. inspired by Swing
•XHTML and HTML4 support - LWUIT's HTML component allows rendering of HTML documents that conform to the XHTML Mobile Profile 1.0 standard and HTML4
•Layouts Manager - A very flexible and powerful feature, particularly if the application runs on different screen sizes
•Pluggable Look and Feel & Themes - The toolkit lets you create a CSS-like file that can be loaded or changed at runtime, controllling the look and feel of the application
•Fonts - The library features bitmap fonts and a tool that lets you create fonts on your desktop
•Touch Screen - All LWUIT components support touch events. No special coding is needed for a LWUIT application to run on a touch-enabled device
•Virtual keyboard support - This functionality enhances the touch screen support through LWUIT by enabling customizable user input through the virtual keyboard on the device display
•Animations & Transitions - Various visual effects available out-of-the-box through the library add life to applications
•3D and SVG Graphics Integration - Optional features for advanced devices.
•Tools - LWUIT provides a Theme Creator tool for editing and creating themes and resources. This is a standalone application for creating and viewing background painting, objects, and other theme elements
•Bi-directional text support - Support for right to left text
•Drag and Drop
•GUI builder
•IO Framework
•HTML4 Tag Support
•XML Parsing API
•Enhanced Blackberry support
•Audio playback API
C.Pengenalan CLDC (Connected Limeted Device Configuration)
CLDC atau Connected Limited Device Cofiguration adalah perangkat dasar dari Java ME, spesifikasi dasar yang berupa library atau API yang diimplementasikan pada Java ME, seperti yang digunakan pada telepon selular, pager, dan PDA. Perangkat tersebut dibatasi dengan keterbatasan memory, sumber daya, dan kemampuan memproses. Spesifikasi CLDC pada Java ME adalah spesifikasi minimal pada package, class, dan sebagian fungsi Java Virtual Machine yang dikurangi agar dapat diimplementasikan dengan keterbatasan sumber daya pada alat tersebut, JVM yang digunakan adalah KVM (Kilobyte Virtual Machine).
D.Pengenalan Mobile Information Device Profile (MIDP)
MIDP atau Mobile Information Device Profile adalah spesifikasi untuk sebuah profil J2ME. MIDP memilik lapisan diatas CLDC, API tambahan untuk daur hidup aplikasi, antar muka, jaringan, dan pemyimpanan persisten. Pada saat ini terdapat MIDP 1.0 dan MIDP 2.0. Fitur tambahan pada MIDP 2.0 dibandingkan MIDP 1.0 adalah API untuk multimedia. Pada MIDP 2.0 terdapat dukungan memainkan tone, tone sequence, dan file WAV walaupun tanpa adanya Mobile Media API (MMAPI).
Nah, yang berikutnya, pasti anda juga penasaran dengan Java terlebih bila dibandingkan dengan Java Android, Android sebetulnya merupakan System Operasi linux pada SmartPHone. Untuk membuat aplikasi mobile khusus android anda pun juga bisa menggunakan Java, cuman ada perbedaan penggunaan Java untuk HandPHone biasa dengan penggunaan Java dalam SmartPhone Android, berikut merupakan daftar dari http://www.candra.web.id/
** PERBEDAAN DENGAN ANDROID
No | Faktor | java ME | Android |
1 | Bahasa Pemrograman | Java | java,C++,Mono,XML,Scripting |
2 | Device | Featured Phone | Smartphone,Tablet |
3 | Format File installer | jar | apk |
4 | Official IDE | NetBeans | Eclipse |
5 | Fitur /API | Miskin fitur | Kaya Fitur |
6 | Virtual Mesin | KVM (Kilobyte virtual Machine) | DalvikVM |
7 | Hasil Kompilasi | class | dex |
8 | Input | touch,keyboard | keyboard,touch,pen,sensor,USB host |
9 | Official Market | N/A | |
10 | Security | Aman | Tidak aman |
Demikian tutorial singkat mengenai pengenalan dengan Java ME sebagai Mobile App, semoga bermanfaat dan pada tutorial berikutnya kita akan praktek membuat Java ME application. (^^,)