SlideShare a Scribd company logo
1 of 13
Download to read offline
TUGAS APLIKASI INTERNET
ARTIKEL TENTANG J2ME DAN PROGRAM
APLIKASI CHAT JAVA SEDERHANA
MENGGUNAKAN COMMAND PROMT
(GUI OPTIONAL)
DISUSUN OLEH :
RISTANTO DWI PRASETYO
1100631048 (MI-B)
FAKULTAS TEKNIK MANAJEMEN
INFORMATIKA
UNIVERSITAS MUHAMMADIYAH JEMBER
2013
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]&gt; SHAPE * MERGEFORMAT
&lt;![endif]–><!–[if mso & !supportInlineShapes & supportFields]&gt; SHAPE *
MERGEFORMAT &lt;![endif]–><!–[if mso & !supportInlineShapes & supportFields]&gt;
&lt;![endif]–>
<!–[if mso & !supportInlineShapes & supportFields]&gt; &lt;![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 PROMT
(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 "test1" berhasil tersambung ke Server dengan port 1500 dan server address 192.168.1.1)
(Klien "test2" berhasil tersambung ke Server dengan port 1500 dan server address 127.0.0.1 atau localhost)
(Pesan error ketika Klien salah memasukkan nomor port)
(Pesan error ketika Klien salah memasukkan alamat IP server)
(Pesan yang ada pada server ketika ada Klien yang berhasil tersambung ke Server)
(Tampilan pada Klien saat mengirim dan menerima pesan)
(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/)

More Related Content

Viewers also liked

Domingo de pentecostés c 2013 salmo y lecturas
Domingo de pentecostés c 2013 salmo y lecturasDomingo de pentecostés c 2013 salmo y lecturas
Domingo de pentecostés c 2013 salmo y lecturassanpablobaeza
 
Domingo de pentecostés c 2013 reflexión evangélica
Domingo de pentecostés c 2013 reflexión evangélicaDomingo de pentecostés c 2013 reflexión evangélica
Domingo de pentecostés c 2013 reflexión evangélicasanpablobaeza
 
Getting a Job TV Industry Upload
Getting a Job TV Industry UploadGetting a Job TV Industry Upload
Getting a Job TV Industry UploadCreativeMediaSarah
 
Access to non local names
Access to non local namesAccess to non local names
Access to non local namesVarsha Kumar
 

Viewers also liked (7)

Matematica estas ahi
Matematica estas ahiMatematica estas ahi
Matematica estas ahi
 
Domingo de pentecostés c 2013 salmo y lecturas
Domingo de pentecostés c 2013 salmo y lecturasDomingo de pentecostés c 2013 salmo y lecturas
Domingo de pentecostés c 2013 salmo y lecturas
 
Domingo de pentecostés c 2013 reflexión evangélica
Domingo de pentecostés c 2013 reflexión evangélicaDomingo de pentecostés c 2013 reflexión evangélica
Domingo de pentecostés c 2013 reflexión evangélica
 
Recuerdo de 24 horas
Recuerdo de 24 horasRecuerdo de 24 horas
Recuerdo de 24 horas
 
Getting a Job TV Industry Upload
Getting a Job TV Industry UploadGetting a Job TV Industry Upload
Getting a Job TV Industry Upload
 
Access to non local names
Access to non local namesAccess to non local names
Access to non local names
 
TRAY INSTRUCTABLE
TRAY INSTRUCTABLETRAY INSTRUCTABLE
TRAY INSTRUCTABLE
 

Similar to Tugas aplinet 1100631048

JENI-J2ME-Bab01-Pengembangan Aplikasi Mobile.pdf
JENI-J2ME-Bab01-Pengembangan Aplikasi Mobile.pdfJENI-J2ME-Bab01-Pengembangan Aplikasi Mobile.pdf
JENI-J2ME-Bab01-Pengembangan Aplikasi Mobile.pdfJurnal IT
 
Membangun wireless application menggunakan teknologi j2 me arie
Membangun wireless application menggunakan teknologi j2 me arieMembangun wireless application menggunakan teknologi j2 me arie
Membangun wireless application menggunakan teknologi j2 me arieArieFirman
 
Lucky anugerah 1100631020
Lucky anugerah 1100631020Lucky anugerah 1100631020
Lucky anugerah 1100631020Lucky AnugerahP
 
Tugas aplikasi internet_1100631034
Tugas aplikasi internet_1100631034Tugas aplikasi internet_1100631034
Tugas aplikasi internet_1100631034ariunmuh
 
pengembangan aplikasi mobile
pengembangan aplikasi mobilepengembangan aplikasi mobile
pengembangan aplikasi mobileOcim Nationalism
 
Jeni j2 me-bab01-pengembangan aplikasi mobile
Jeni j2 me-bab01-pengembangan aplikasi mobileJeni j2 me-bab01-pengembangan aplikasi mobile
Jeni j2 me-bab01-pengembangan aplikasi mobileUNIVERSITY Of LAMPUNG
 
J2me edwin prassetyo 1100631028
J2me edwin prassetyo 1100631028J2me edwin prassetyo 1100631028
J2me edwin prassetyo 1100631028Edwin Prassetyo
 
BAB 5. Sumber Daya Komputasi dan Komunikasi
BAB 5. Sumber Daya Komputasi dan Komunikasi BAB 5. Sumber Daya Komputasi dan Komunikasi
BAB 5. Sumber Daya Komputasi dan Komunikasi audi15Ar
 
Remote pemantau webcam berbasis aplikasi j2me
Remote pemantau  webcam  berbasis aplikasi j2meRemote pemantau  webcam  berbasis aplikasi j2me
Remote pemantau webcam berbasis aplikasi j2meDwi Fahmi
 
Ansn ind ins_sistem_informasi_bapeten
Ansn ind ins_sistem_informasi_bapetenAnsn ind ins_sistem_informasi_bapeten
Ansn ind ins_sistem_informasi_bapetenfajrin_ilham
 
Java ppt
Java pptJava ppt
Java ppt044249
 
Jbptunikompp gdl-dwirezekim-21927-11-12uniko-i
Jbptunikompp gdl-dwirezekim-21927-11-12uniko-iJbptunikompp gdl-dwirezekim-21927-11-12uniko-i
Jbptunikompp gdl-dwirezekim-21927-11-12uniko-imaskens
 
Pertemuan 2 - Materi [MP - 2016].pdf
Pertemuan 2 - Materi [MP - 2016].pdfPertemuan 2 - Materi [MP - 2016].pdf
Pertemuan 2 - Materi [MP - 2016].pdfandrirachmayadi90
 
SIM. SHELLY MAULIDHA, Prof. Dr. Ir. Hapzi Ali, MM, CMA (Sumber Daya Komputasi...
SIM. SHELLY MAULIDHA, Prof. Dr. Ir. Hapzi Ali, MM, CMA (Sumber Daya Komputasi...SIM. SHELLY MAULIDHA, Prof. Dr. Ir. Hapzi Ali, MM, CMA (Sumber Daya Komputasi...
SIM. SHELLY MAULIDHA, Prof. Dr. Ir. Hapzi Ali, MM, CMA (Sumber Daya Komputasi...Shelly Maulidha
 

Similar to Tugas aplinet 1100631048 (20)

Materi tentang j2me
Materi tentang j2meMateri tentang j2me
Materi tentang j2me
 
JENI-J2ME-Bab01-Pengembangan Aplikasi Mobile.pdf
JENI-J2ME-Bab01-Pengembangan Aplikasi Mobile.pdfJENI-J2ME-Bab01-Pengembangan Aplikasi Mobile.pdf
JENI-J2ME-Bab01-Pengembangan Aplikasi Mobile.pdf
 
Landasan teori
Landasan teoriLandasan teori
Landasan teori
 
Membangun wireless application menggunakan teknologi j2 me arie
Membangun wireless application menggunakan teknologi j2 me arieMembangun wireless application menggunakan teknologi j2 me arie
Membangun wireless application menggunakan teknologi j2 me arie
 
Lucky anugerah 1100631020
Lucky anugerah 1100631020Lucky anugerah 1100631020
Lucky anugerah 1100631020
 
Tugas aplikasi internet_1100631034
Tugas aplikasi internet_1100631034Tugas aplikasi internet_1100631034
Tugas aplikasi internet_1100631034
 
pengembangan aplikasi mobile
pengembangan aplikasi mobilepengembangan aplikasi mobile
pengembangan aplikasi mobile
 
Jeni j2 me-bab01-pengembangan aplikasi mobile
Jeni j2 me-bab01-pengembangan aplikasi mobileJeni j2 me-bab01-pengembangan aplikasi mobile
Jeni j2 me-bab01-pengembangan aplikasi mobile
 
Ppt java
Ppt javaPpt java
Ppt java
 
J2me edwin prassetyo 1100631028
J2me edwin prassetyo 1100631028J2me edwin prassetyo 1100631028
J2me edwin prassetyo 1100631028
 
Android os
Android osAndroid os
Android os
 
BAB 5. Sumber Daya Komputasi dan Komunikasi
BAB 5. Sumber Daya Komputasi dan Komunikasi BAB 5. Sumber Daya Komputasi dan Komunikasi
BAB 5. Sumber Daya Komputasi dan Komunikasi
 
Remote pemantau webcam berbasis aplikasi j2me
Remote pemantau  webcam  berbasis aplikasi j2meRemote pemantau  webcam  berbasis aplikasi j2me
Remote pemantau webcam berbasis aplikasi j2me
 
Ansn ind ins_sistem_informasi_bapeten
Ansn ind ins_sistem_informasi_bapetenAnsn ind ins_sistem_informasi_bapeten
Ansn ind ins_sistem_informasi_bapeten
 
Java ppt
Java pptJava ppt
Java ppt
 
Jbptunikompp gdl-dwirezekim-21927-11-12uniko-i
Jbptunikompp gdl-dwirezekim-21927-11-12uniko-iJbptunikompp gdl-dwirezekim-21927-11-12uniko-i
Jbptunikompp gdl-dwirezekim-21927-11-12uniko-i
 
java
javajava
java
 
Java
JavaJava
Java
 
Pertemuan 2 - Materi [MP - 2016].pdf
Pertemuan 2 - Materi [MP - 2016].pdfPertemuan 2 - Materi [MP - 2016].pdf
Pertemuan 2 - Materi [MP - 2016].pdf
 
SIM. SHELLY MAULIDHA, Prof. Dr. Ir. Hapzi Ali, MM, CMA (Sumber Daya Komputasi...
SIM. SHELLY MAULIDHA, Prof. Dr. Ir. Hapzi Ali, MM, CMA (Sumber Daya Komputasi...SIM. SHELLY MAULIDHA, Prof. Dr. Ir. Hapzi Ali, MM, CMA (Sumber Daya Komputasi...
SIM. SHELLY MAULIDHA, Prof. Dr. Ir. Hapzi Ali, MM, CMA (Sumber Daya Komputasi...
 

Tugas aplinet 1100631048

  • 1. TUGAS APLIKASI INTERNET ARTIKEL TENTANG J2ME DAN PROGRAM APLIKASI CHAT JAVA SEDERHANA MENGGUNAKAN COMMAND PROMT (GUI OPTIONAL) DISUSUN OLEH : RISTANTO DWI PRASETYO 1100631048 (MI-B) FAKULTAS TEKNIK MANAJEMEN INFORMATIKA UNIVERSITAS MUHAMMADIYAH JEMBER 2013
  • 2. 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
  • 3. 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
  • 4. 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
  • 5. 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]&gt; SHAPE * MERGEFORMAT &lt;![endif]–><!–[if mso & !supportInlineShapes & supportFields]&gt; SHAPE * MERGEFORMAT &lt;![endif]–><!–[if mso & !supportInlineShapes & supportFields]&gt; &lt;![endif]–> <!–[if mso & !supportInlineShapes & supportFields]&gt; &lt;![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
  • 7. APLIKASI CHAT JAVA SEDERHANA MENGGUNAKAN COMMAND PROMT (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.
  • 8.  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".
  • 9. - 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)
  • 10. Jalankan Klien yang dari komputer yang sudah terhubung dengan komputer yang menjalankan kelas server atau jalankan Klien dari komputer yang menjalankan Server (localhost). (Klien "test1" berhasil tersambung ke Server dengan port 1500 dan server address 192.168.1.1) (Klien "test2" berhasil tersambung ke Server dengan port 1500 dan server address 127.0.0.1 atau localhost) (Pesan error ketika Klien salah memasukkan nomor port) (Pesan error ketika Klien salah memasukkan alamat IP server) (Pesan yang ada pada server ketika ada Klien yang berhasil tersambung ke Server)
  • 11. (Tampilan pada Klien saat mengirim dan menerima pesan) (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".
  • 12. (Lokasi file "pesan.txt") (isi file "pesan.txt" yang berisi record percakapan Klien)
  • 13. 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/)