Sebagaimana telah diketahui pada tulisan sebelumnya, Java 2 merupakan generasi kedua dari Java platform yang sebelumnya adalah Java Development Kit. Java itu sendiri berdiri di atas mesin interpreter yang disebut dengan Java Virtual Machine (JVM). JVM ini yang akan membaca bytcode dalam file berkestensi .class dari suatu program yang merepresentasikan bahasa mesin. Dengan begitu Java merupakan program yang sifatnya portable karena dapat berjalan di berbagai sistem operasi selama sistem operasi tersebut terdapat JVM di dalamnya, dalam hal ini J2ME menggunakan KVM (Kilobyte Virtual Machine) atau JVM yang di desain untuk perangkat yang kecil.
Pengertian J2ME
Java2 selain meluncurkan teknologi Java2 Enterprise Edition atau J2EE dan Java2 Standard Edition atau J2SE, Java2 juga meluncurkan teknologi Java2 Micro Edition atau lebih dikenal dengan J2ME. J2ME adalah Pengembangan teknologi Java yang didesain khusus untuk perangkat yang mempunya tingkat komputasi tidak setinggi komputer seperti Ponsel, PDA, dan Pager.
Java2 Micro Edition atau J2ME pertama kali dibuat oleh Sun Microsystem pada tahun 1998 dengan tujuan untuk menyelidiki kemungkinan dijalankannya Java pada perangkat dengan sumber daya yang terbatas. Kemudian J2ME meningkatkan kapabilitas perangkat mobile dari yang hanya untuk melakukan komunikasi dengan suara menjadi perangkat yang dapat mengakses internet serta memiliki fungsi yang lebih dinamis.
J2ME itu sendiri adalah bagian dari J2SE karena itu semua library yang terdapat pada J2SE tidak semua dapat digunakan pada J2ME akan tetapi, J2ME memiliki beberapa library khusus yang tidak dimiliki J2SE. Berikut adalah gambaran Arsitektur J2ME.
 |
| Arsitektur J2ME |
Seperti yang telah diketahui, J2ME dirancang untuk perangkat dengan tidak mempunyai komputasi setinggi komputer, otomatis teknologi J2ME memiliki keterbatasan seperti misalnya J2ME sangat bergantung pada perangkat yang digunakan termasuk dukungan perangkat itu sendiri terhadap teknologi J2ME. Keterbatasan J2ME yang paling banyak di temukan adalah pada ukuran aplikasi, karena tidak semua perangkat akan mempunya tempat penyimpanan yang luas dan biasanya perangkat ponsel tidak mengijinkan aplikasi J2ME untuk menulis file dengan alasan keamanan.
Berikut adalah dua kategori J2ME berdasarkan kapabilitas dari produk tempat diimplementasikannya J2ME.
Pertama.
CLDC (Connected Limited Device Configuration)
Connected Limited Device Configuration atau CLDC adalah kategori perangkat Low-End consumer devices yang memiliki sumber daya sangat kecil. Contoh dari produk CLDC ini adalah Ponsel dan pager.
Kedua.
CDC (Connected Device Configuration)
Connected Device Configuration atau CDC adalah kategori perangkat High-End yang memiliki spesifikasi dari konfigurasi J2ME yang memiliki sumber daya yang cukup besar dan hampir menyamai komputer dalam hal sumber daya listrik, memori ataupun bandwith. Contoh dari produk CDC adalah Internet TV.
MIDP (Mobile Information Device Profile
Mobile Information Device Profile atau MIDP adalah spesifikasi untuk sebuah profile J2ME. MIDP sampai saat ini ada tiga versi yaitu versi 1.0, 2.0 dan versi 2.1. Peningkatan pada versi 2.0 diantaranya adalah mendukung Advanced networking, Form Enchacement, Game API, RGB Images, Code signing dan Permission. Sedangkan peningkatan pada MIDP versi 2.1 termasuk mendukung peningkatan versi 2.0 ditambah teknologi yang baru yang sampai saat ini masih belum banyak digunakan.
Wireless ToolKIt (WTK)
Wireless ToolKit atau WTK adalah tool pengembangan aplikasi J2ME yang disediakan oleh Sun Microsystem. Untuk jumlah Java Spesification Requirement (JSR) pada masing-masing WTK itu dapat berbeda-beda untuk versi terbarunya WTK sudah mendukung dan mengimplementasikan JSR pada versi sebelumnya.
WTK mengacu pada standar J2ME, CLDC dan MIDP dan tidak bergantung pada perangkat vendor perangkat mobile. Hal ini dapat memungkinkan jika aplikasi yang berjalan baik di WTK Emulator belum tentu dapat berjalan dengan baik pada perangkat aslinya. Beikut adalah Library yang di dukung dalam WTK.
- Java Technology for Wireless Industry / JTWI (JSR 185)
- Wireless Messaging API / WMAPI (JSR 120)
- Java API Bluetooth Wireless Toolkit / JABWT (JSR 82)
- Java Web Service API (JSR 172)
- Mobile Media API (JSR 135)
Selain WTK standar yang diberikan Sun Microsystem, vendor perangkat mobile juga mengeluarkan sesuai dengan perangkat-perangkat yang dikeluarkan vendor tersebut dengan spesifikasi yang identik. Berikut adalah beberapa perangkat pengembang dari vendor.
- Nokia Developer Suite for J2ME
- Motorola J2ME SDK
- Sony ericsson J2ME SDK
MIDlet
MIDlet adalah aplikasi yang dibuat dengan menggunakan teknologi J2ME dengan standar MIDP. Sedangkan kumpulan dari beberapa MIDlet tersebut disebut MIDlet Suite. Aplikasi MIDlet adalah bagian dari java.microedition.midlet.MIDlet yang didefinisikan pada MIDP. MIDlet itu sendiri berupa kelas abstrak yang merupakan sub kelas dari bentuk dasar aplikasi. Sehingga antarmuka antara aplikasi J2ME dan apliaksi manajemen pada perangkat dapat terbentuk.
MIDlet meiliki siklus hidup / life cycle karena MIDlet terdiri dari beberapa metode yang harus ada yaitu constructor(), protected void startApp() throw MIDletStateChangeException, protected void pauseApp() dan protected void destroyApp(boolean unconditional) throws MIDletStateChangeException. Berikut adalah gambaran dari siklus hidup/life cycle dari MIDlet.
 |
| MIDlet life cycle |
Penjelasan dari gambar siklus hidup/life cycle diatas adalah ketika MIDlet dijalankan maka akan diinisialisasi dengan kondisi pause dan akan menjalankan pauseApp(), selanjutnya adalah MIDlet akan menjalankan startApp() dan yang terakhir adalah MIDlet akan menjalankan metode destroyApp() pada kondisi dimana aplikasi akan keluar dari MIDlet. Akan tetapi sebelum aplikasi benar-benar dikeluarkan dari MIDlet, MIDlet akan menalankan metode notifyDestroyed() yang akan memberitahu platform untuk menterminasi MIDlet dan membersihkan sumber daya yang mengacu pada MIDlet.
Oke, sekian dulu tentang Pengenalan J2ME semoga bermanfaat..
Title : Pengenalan J2ME
Description : Sebagaimana telah diketahui pada tulisan sebelumnya, Java 2 merupakan generasi kedua dari Java platform yang sebelumnya adalah Java Develop...