Nama : Ristanto Dwi Prasetyo
NIM / Kelas : 1100631048 / MI - B
ARTIKEL TENTANG J2ME
PENGERTIAN
JAVA
Java adalah sebuah teknologi yang diperkenalkan oleh Sun
Microsystems pada
pertengahan
tahun 1990. Menurut definisi dari Sun, Java adalah nama untuk sekumpulan
teknologi
untuk membuat dan menjalankan perangkat lunak pada komputer standalone
ataupun
pada lingkungan jaringan. Kita lebih menyukai menyebut Java sebagai sebuah
teknologi
dibanding hanya sebuah bahasa pemrograman, karena Java lebih lengkap dibanding
sebuah
bahasa pemrograman konvensional. Teknologi Java memiliki tiga komponen penting,
yaitu:
Programming-language
specification
Application-programming
interface
Virtual-machine specification
Pengertian
J2ME
1.1 Pengertian
J2ME
Java2 Micro Edition atau yang biasa disebut J2ME adalah lingkungan
pengembangan
yang
didesain untuk meletakkan perangkat lunak Java pada barang elektronik beserta
perangkat
pendukungnya. Pada J2ME, jika perangkat lunak berfungsi baik pada sebuah
perangkat
maka belum tentu juga berfungsi baik pada perangkat yang lainnya. J2ME
membawa
Java ke dunia informasi, komunikasi, dan perangkat komputasi selain perangkat
komputer
desktop yang biasanya lebih kecil dibandingkan perangkat komputer desktop.
J2ME
biasa digunakan pada telepon selular, pager, personal digital assistants (PDA)
dan
sejenisnya.
Penjelasan tentang mengenai 2 Java 2 Platform, Micro Edition
(J2ME)
Java
2 Platform, Micro Edition (J2ME) adalah salah satu dari produk Sun
Microsystems. Java
2
Platform, Micro Edition (J2ME) merupakan bagian dari platform Java 2. Platform
Java 2
sendiri
terdiri dari tiga elemen, yaitu:
Java programming language.
Bahasa
pemrograman yang digunakan mirip dengan bahasa pemrograman C++ tetapi secara
fundamental
berbeda. C++ menggunakan pointer-pointer yang kurang aman dan
mengharuskan
programmer untuk mengalokasikan dan mengosongkan memori. Sedangkan
Java
menggunakan typesafe object references dan setiap memori yang tidak digunakan
akan
dikosongkan
secara otomatis. Java juga mendukung multiple inheritance dengan konstruksi
yang
lebih baik, yaitu Interface.
J2ME adalah teknologi Java yang diperuntukkan
perngkat-perngakat kecil
consumer
device , terutama wireless. Bebrapa perangkat wireless
antara lain PC, PDA,
communicator, embedded
device, smart card dan ponsel. Teknologi Java mungkin
merupakan
satu-satunya cara memprogram beberapa perangkat, berbagi logic antara
perangkat
dan server, pengantaran aplikasi secara dinamis, program yang kompak,
lingkungan
pengembangan yang aman dan cepat. J2ME memungkinkan perangkat lunak
dapat
di-download perangkat sekaligus memungkinkan layanan yang dapat
disesuaikan di
beragam
perangkat.
Karena
J2ME mendukung banyak perangkat, tidak mungkin untuk membuat solusi
“satu
ukuran untuk semua”. Oleh karena itu, J2ME dibagi-bagi menjadi Configuration,
Profiles,
dan Package optional. Configurations adalah spesifikasi yang menjabarkan sebuah
virtual
machine dan satu set API dasar yang dapat digunakan dengan beberapa perangkat
tertentu.
Sebuah Configuration, sebagai contoh, mungkin ditujukan untuk perangkat yang
memiliki
memori dibawah 512KB dan koneksi jaringan yang naik turun. Virtual machine
dapat
berupa Java Virtual Machine lengkap atau berupa bagian dari Java Virtual
Machine.
Sebuah
profile dibangun berdasarkan Configuration, ditambah API yang lebih
spesifik
untuk membuat sebuah environment lengkap untuk pembuatan aplikasi. Walaupun
sebuah
Configuration mendeskripsikan sebuah JVM dan satu set API dasar, tetapi masih
kurang
untuk menspesifikasikan cukup detail untuk pembuatan aplikasi. Profile biasanya
menyertakan
API untuk siklus hidup, user interface dan persistent storage suatu aplikasi.
Sebuah
optional Package menyediakan fungsionalitas yang mungkin tidak
berhubungan
dengan Configuration atau Profile tertentu. Sebuah contoh untuk optional
Package
adalah Bluetooth API(JSR 82), yang menyediakan API standar untuk mengakses
jaringan
Bluetooth. Optional Package ini dapat diimplementasikan dengan kombinasi
Configuration
dan Profile lainnya.
Lingkungan
Java
J2ME menyediakan platform standar untuk pengembangan
perangkat wireless. J2ME
terdiri
atas perangkat-perangkat komponen sebagai berikut :
1. Java Virtual Machine (JVM),
komponen untuk menjalankan program-program Java pada
emulator
atau handheld device.
2. Java Application Programming
Interface (API), merupakan kumpulan library untuk
menjalankan
dan mengembangkan program Java pada Handheld Devices.
3. Tools lain untuk mengembangkan Java, semacam emulator
Java Phone, Emulator Nokia,
Emulator
Siemens dan Emulator Motorola.
J2ME
Configuration
J2ME
Configuration mendefinisikan lingkungan kerja J2ME runtime. Oleh karena
setiap
handheld device memiliki fitur-fitur yang berbeda-beda, J2ME Configuration ini
dirancang
yaitu menyediakan library standar yang mengimplementasikan fitur standar dari
sebuah
Handled device.
Ada
dua kategori J2ME Configuration yaitu :
a. CLDC ( Connected
Limited Device Configuration )
Digunakan
untuk aplikasi java pada perangkat-perangkat keras dengan ukuran memori yang
sangat
terbatas, yaitu pada kisaran 160 samapi 512 KiloBytes, seperti handphone,
organizer
atau
PDA seperti PALM, Poket PC dan two way pagers.
b. CDC (Connected
Device Configuration )
Digunakan
untuk aplikasi Java pada Handheld devices dengan ukuran memori paling tidak 2
Megabytes,
seperti : Internet TV, Nokia, Communicator dan car television.
J2ME
Profile
J2ME Profile mengimplementasikan kemampuan / fitur lain yang
sangat bergantung
pada
jenis handheld yang digunakan.
Ada
lima kategori J2ME Profile saat ini, yakni :
a. Mobile Information Devise Profile
MIDP
menyediakan librari-librari java untuk implementasi dasar antarmuka (GUI),
implementasi
jaringan
(networking), database dan timer. MIDP dirancang khususnya untuk
wireless
phone dan pager.
b. Foundation Profile
Profile
dasar untuk non-GUI network device pada CDC
c. Personal Profil, RMI Profile,
Personal Digital Assistant Profile
Standar
grafik, Generasi selanjutnya dari lingkungan personal java, dan RMI yang
support
untuk
CDC dan profile standart device.
Jenis-jenis
aplikasi J2ME
Saat
ini terdapat dua jenis aplikasi J2ME yaitu :
a. Walled
garden application yaitu aplikasi yang berdiri sendiri atau standalone yang
berjalan
pada handphone tanpa perlu mengakses sumber data eksternal melalui
jaringan
pembawa
atau carier network. Contoh dari aplikasi ini adalah kalkulator atau single
player
games.
b. Network
aware application yaitu aplikasi yang berinteraksi dengan jaringan. Tidak
seperti
aplikasi pertama, aplikasi ini memiliki kemampuan untuk mengakses sumber daya
eksternal.
Contoh dari aplikasi jenis ini adalah aplikasi email yang berada pada handphone,
aplikasi
untuk mendapatkan kembali data alamat-alamat yang tersimpan melalui jaringan,
dan
pengiriman email berbagai alamat melalui jaringan data.
MIDlet
MIDlet merupakan aplikasi yang dijalankan pada sebuah perangkat
handheld. MIDlet
tidak
berinteraksi langsung dengan hardware dari handheld devices, melainkan
berinteraksi
melalui
AMS (Application Management Software). AMS inilah yang akan menerima sinyal
dari
MIDlet bahwa MIDlet akan dijalakan atau berhenti.
MIDP
mendefinisikan kelas-kelas library berikut untuk membangun aplikasi :
a. Javax.microediton.midlet,
merupkan package yang berisi kelas-kelas untuk mengatur
daur
hidup midlet.
b. Javax.microedition.lcdui,
merupakan package yang berisi kelas-kelas yang user interface
dan
pemrograman GUI.
c. Javax.microedition.io,
merupakan.package yang berisi kelas-kelas dan antarmuka untuk
midp
pemrograman jaringan.
d. Javax.io,
java.lang and java.util, merupakan package yang berisi I/O, language
dan
kelas-kelas
utility.
Daur
Hidup MIDlet
Daur
Hidup MIDlet terdiri dari :
a. Retrieval
AMS
menerima MIDlet kemudian disimpan didalam memori. Media untuk mendowload
MIDlet
dapat berupa : Kabel serial, port IRDA, atau jaringan wireless.
b. Instalation
Setelah
MIDlet di-download, AMS akan menginstall MIdlet Pada Device.
Selama proses
instalasi,
MIDP akan menjamin MIDlet tidak melanggar akses security.
c. Version Management
AMS
akan menyimpan semau informasi mengenai MIDlet yang telah diinstal termasuk
informasi
versinya. Ini akan berguna untuk meng-upgrade MIDletke versi baru.
d. Removal
AMS
akan menghapus MIDlet dan membersihkan alokasi memori yang digunakan.
Setelah
di-Launch oleh AMS Midlet akan berada dalam tiga status berikut :
a. Paused
Status
ini terjadi ketika MIDlet selesai disosialisasikan dan tidak melakukan aksi
apapun.
b. Active
Status
ini terjadi ketika MIDlet sedang berjalan dengan normal, yakni setelah
memanggil
fungsi
MIDlet.startApp()
c. Destroyed
Status
ini terjadi ketika MIDlet berhenti berjalan (exit), sehingga seluruh sumber
daya yang
digunakan
akan dibebaskan. Status ini terjadi ketika berhasil dilakukan pemanggilan
fungsi
MIDlet.destroyApp()
atau MIDlet.notifyDestroyed().
<!–[if
mso & !supportInlineShapes & supportFields]> SHAPE \*
MERGEFORMAT
<![endif]–><!–[if
mso & !supportInlineShapes & supportFields]> SHAPE \*
MERGEFORMAT
<![endif]–><!–[if mso & !supportInlineShapes &
supportFields]>
<![endif]–>
<!–[if
mso & !supportInlineShapes & supportFields]>
<![endif]–>
Daur
hidup pembangunan MIDlet terdiri dari :
a.
Kompilasi dan pre-verifying.
b. Testing.
c.
Packaging
Merupakan
operasi terakhir untuk membungkus aplikasi MIDlet menjadi file JAR dan file
JAD.
d.
Running
Sumber
:
http://wartawarga.gunadarma.ac.id/2010/01/tentang-j2me/
http://www.politeknik-lp3ibandung.
ac.id/index.php?option=com_content&view=article&id=226:tentangj2me&
catid=62:java&Itemid=148
APLIKASI
CHAT JAVA SEDERHANA MENGGUNAKAN COMMAND PROMPT
(GUI
OPTIONAL)
Aplikasi ini
mempunyai 5 kelas yang harus ada untuk dapat berfungsi dengan benar.
The 6 kelas
adalah :
- ChatMessage.java
- Server.java
- Client.java
- ServerGUI.java
- ClientGUI.java
-
CreateTextFile.java
Karena
kita akan menjalankan aplikasi ini di command prompt maka kita hanya membutuh
kan 4 kelas saja, yaitu ChatMessage.java, Server.java, Client.java, dan
CreateTextFile.java.
ð Kelas
ChatMessage
Ketika
Anda menjalankan koneksi melalui TCP, sebenarnya hanya seri dari byte yang
dikirim melalui kawat..
Ketika
aplikasi ini dijalankan di dua komputer yang berbeda, aplikasi ini akan
mengirim Obyek Java antara dua aplikasi. Sebenarnya masih akan ada sebuah
aliran byte yang akan dikirim melalui internet tetapi Java akan melakukan
serializing dan deserializing objek Java tersebut.
Obyek
yang dikirim dari soket harus mengimplementasikan Serializable.
Dalam
aplikasi ini, semua pesan yang dikirim dari Server ke Client adalah obyek
String. Semua pesan yang dikirim dari klien ke Server adalah obyek ChatMessage.
ChatMessage memiliki tipe dan String yang berisi pesan yang sebenarnya.
Kelas
ini mendefinisikan berbagai jenis pesan yang akan dipertukarkan antara Client
dan Server. Ketika berbicara dari Client Java ke Server Java jauh lebih mudah
untuk mengirimkan objek Java, tidak perlu untuk menghitung byte atau menunggu
untuk pindah baris pada akhir frame.
ð Kelas Server
Kita dapat memulai
Server dengan mengetikkan “Java Server” pada command prompt. Aplikasi akan
mengeksekusi dalam mode konsol dan server akan menunggu koneksi pada port 1500.
Untuk menggunakan port lain masukkan nomor port yang akan digunakan sebagai
parameter pertama untuk perintah, contoh “Java Server 1200” Aplikasi akan
meminta Server untuk mendengarkan pada port 1200. Kita dapat menggunakan CTRL+C
untuk menghentikan server.
ð Kelas Client
Setelah
Server dimulai Anda dapat memulai Klien dengan mengetikkan “Java Client”pada
konsol. Itu akan memulai Klien dengan username Anonymous pada localhost
menggunakan port 1500. Jadi perintah setara diatas dengan ”Java Client
Anonymous 1500 localhost”
Kita dapat
menentukan beberapa parameter saat menjalankan kelas Client, contoh :
-
Java Client Me ==> java Client Me 1500 localhost
- Java
Client Me 1200 ==> java Client Me 1200 localhost
- Java
Client Me 1200 12.14.13.14 ==> java Client Me 1.200 12.14.13.14
Setelah Klien
dimulai dalam mode konsol Kita juga dapat memasukkan :
-
LOGOUT, untuk logout dan menutup koneksi
-
WHOISIN, untuk menerima daftar dari pengguna yang sedang terhubung ke server
-
Selain di atas adalah sebuah pesan yang akan disiarkan, dengan username Anda,
untuk semua Klien yang ada.
ð Kelas Create
Text File
Kelas ini berguna untuk
menyimpan data percakapan yang dikirimkan loeh klien ke server. Datapercakapan
tersebut disimpan ke dalam file berformat .txt. File tersebut disimpan dilokasi
atau di komputer mana server dijalankan, dengan nama "pesan.txt".
-
Source
code Create Text File.java
-
Source code
untuk untuk menyimpan data percakapan yang ada pada kelas Server.java
-> Cara Penggunaan
Jalankan server pda konsol, dengan cara mengetik "Java
Server"
(Server jalan
menggunakan port 1500 dan menunggu klien konek ke Server)
Jalankan
Klien yang dari komputer yang sudah terhubung dengan komputer yang menjalankan
kelas server atau
jalankan Klien dari komputer yang menjalankan Server (localhost).
(Klien
"test2" berhasil tersambung ke Server dengan port 1500 dan server
address 127.0.0.1 atau localhost)
(Tampilan pada Klien saat menggunakandan
perintah "WHOISIN", untuk mengetahui siapa saja yang terhubung pada
Server)
(Tampilan pada
Klien saat menggunakandan perintah "LOGOUT", untuk memutus koneksi
(Tampilan pesan
pada Server saat Klien mengirim pesan dan juga saat Klien melakukan
"LOGOUT")
Pesan yang
dikirim Klien ke Server akan disimpan dlama bentuk file berformat ".txt" dengan nama
"pesan.txt" dengan lokasi default "C:\pesan.txt".
(Lokasi file
"pesan.txt")
(isi file
"pesan.txt" yang berisi record percakapan Klien)
sumber :
http://www.dreamincode.net/forums/topic/259777-a-simple-chat-program-with-clientserver-gui-optional/
source code:
http://www.mediafire.com/?ah7q5sgrbtnzc66
dibuat oleh:
Widiharto Kurniawan - 121052095
(http://belajar2ista.blogspot.com/)
Permadi Yulianto - 112053006 (http://belajar4ista.blogspot.com/)