MOBILE PROGRAMMING 162015 (VI-SK) Selasa Kelas A(08.00-10.15), Kelas B (16.30-18.30) Ruang, ………….. Dosen
Lie Jasa
Prasyarat Jaringan Komputer Algoritma dan Pemrograman (java)
Tujuan Mahasiswa dapat memiliki pengetahuan dan ketrampilan pemrograman aplikasi pada mobile device dengan menggunakan platform JavaME
Pokok Bahasan 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
Pertumbuhan teknologi wireless dan mobile Pendefinisian dan pengantar mobile device seperti pager, handphone, PDA Pengantar dan arsitektur Java ME Perbandingan JavaME dengan platform Java lainnya Pengantar pengembangan aplikasi Java ME dan Connected Limited Device Configuration Connected Limited Device Configuration(CLDC), Kilobyte Virtual Machine Pengenalan MIDP , MIDlets security, MIDlets Packaging, MIDlet execuition environment dan lifecycle Pengembangan MIDlets dengan Wireless Toolkit, Pengantar User Interface High level user interface seperti Item, Textfield, datefield, image item dan gauge High level user interface seperti Choice Group, List, Alert, Play Sound Low level user interface seperti Canvas dan Graphics Class Graphics Clip, Rendering Text, Images, Event Handling Pengenalan Networking seperti Socket/TCP dan Datagram/UDP Pengenalan Networking seperti HTTP Persistent Storage, Record Store, Record Enumeration, Record Filter dan Enumeration
Referensi
1. M. Shalahudin, Rosa A.S, “ Pemrograman J2ME”, Penerbit Informatika, Mei 2010 2. James Keogh, “J2ME: The Complete Referenca”, McGraw-Hill. 3. Michael Juntao Yuan, “Enterprise J2ME”, Prentice HallJoseph Schmuller, ”Teach Yourself UML in 24 Hours”, SAMS
JADWAL KULIAH Tatap Muka FEB
MAR
APR
MEI
JUNI
28 6 13 20 27 3 10 17 24 1 8 15 22 29 5 12 19 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Responsi / Bimbingan Melalui : e-mail, Ketemu langsung
Sistem Penilaian 1. 2. 3. 4. 5. 6.
Kehadiran Tugas Harian Tugas Project QUIST UTS UAS
: 10% : 10% : 20% : 10% : 20% : 30% ------------------ +
Total
:
100%
Nilai tertinggi A terendah D
TARGET PEMBELAJARAN 1. Mahasiswa memahami perkembangan teknologi wireless dan mobile serta perangkat-perangkat yang ada seperti pager, handphone dan PDA 2. Mahasiswa memahami perbedaan JavaME dibandingkan dengan platform Java lainnya 3. Mahasiswa memahami tentang CLDC class dan Libraries serta Kilbyte Virtual Machine 4. Mahasiswa memahami MIDP dan MIDlets 5. Mahasiswa memahami dan dapat menjalankan MIDlets 6. Mahasiswa dapat menggunakan user interface seperti Command dan Form 7. Mahasiswa dapat memahami dan menggunakan high level user interface 8. Mahasiswa dapat memahami dan menggunakan low level user interface 9. Mahasiswa dapat memahami networking pada Java ME khususnya Soclet/TCP dan Datagram/UDP 10. Mahasiswa dapat memahami networking pada Java ME khususnya HTTP 11. Mahasiswa dapat memahami dan menggunakan persistent storage
TUGAS PROJECT 1. Mencari topik bahasan di Internet. 2. Membuat Paper dengan acuan artikel yang ada. 3. Presentasi didepan kelas 4. Diskusi.
[email protected] hp. 081 239 31535
Email :…? HP:…?
MOBILE PROGRAMMING Mobile Devices : Perangkat bergerak, seperti handpone, laptop yang digunakan untuk mengakses jasa jaringan Mobile Programming : Mobile Programing adalah salah satu bahasa pemrograman berbasis Java yang dirancang untuk diimplementasikan pada perangkat mobile. Seperti: HP,PDA,BlackBerry, Commmunicator dll.
.
Perangkat Mobile
MOBILE PROGRAMMING UNTUK PONSEL
•J2ME •C++ dalam symbian framework •Flash Lite •Objective C (mirip C, ini untuk Iphone yang hanya bisa didevelope OS Macintosh) •C++ dalam Brew framework (HP CDMA) •C#.NET (HP dng OS Windows mobile) •Javafx (masih sedikit yg support, untuk HP Android)
Introduction JAVA Java menurut definisi Sun adalah nama untuk sekumpulan teknologi untuk membuat dan menjalankan perangkat lunak pada komputer standlone atau lingkup network. Java2 adalah generasi kedua dari Java platform (awalnya Java Development Kit). Java berdiri diatas sebuah mesin interpreter yang diberinama Java Virtual Machine (JVM). JVM inilah yang akan membaca bytecode dalam file. Class dari suatu program seagai representasi langsung program yang berisi bahasa mesin. Maka bahasa java merupakan bahasa pemrogramanan yang portable karena dapat dijalankan pada berbagai Sisitem operasi asalkan ada JVM.
Introduction JAVA • Platform Java kumpulan dari Library, JVM, kelas-kelas Loader yang dipaket dalam sebuah lingkungan rutin java dan sebuah kompiler, debuger dan tools yang dipaket dalam Java Development Kit (JDK). • Agar sebuah program Java dapat dijalankan, maka file dengan ekstensi .java harus dikompilasi menjadi file bytecode. Untuk menjalankan bytecode dibutuhkan JRE (Java Runtime Environment) yang memungkinkan user untuk menjalankan program java, tidak membuat code baru. • Platform Java memiliki tiga Edisi yang berbeda, yaitu J2EE (Java 2 Enterprise Edition), J2ME (Java 2 Micro Edition) dan J2SE (Java 2 Second Edition).
Hubungan J2EE, J2SE dan J2ME
J2SE (Java2 Standard Edition) • J2SE adalah inti dari Bahasa pemrograman Java. JDK (Java Development Kit) adalah salah satu tools dari J2SE untuk mengompilasi dan menjalankan program Java. Didalamnya terdapat tool untuk mengompilasi program java dan JRE. Tools J2SE salah satunya adalah jdk1.5 dapat di download pada http://java.sun.com/j2se/ bersifat open source.
J2ME (Java2 Micro Edition) • J2ME adalah lingkungan pengembangan yang dirancang untuk meletakkan perangkat lunak java pada barang elektronik beserta pendukungnya. • Pada J2ME jika perangkat lunak berfungsi baik pada sebuah perangkat maka belum tentu juga berfungsi baik pada perangkat lainnya. • J2ME membawa Java ke dunia informasi, komunikasi dan komputasi selain komputer, yang biasanya lebih kecil. J2ME biasa digunakan pada telepon seluler, pager, PDA dll. • J2ME adalah bagian dari J2SE, karena itu tidak semua library J2SE dapat digunakan pada J2ME, sebaliknya J2ME mempunyai library khusu yang tidak dimiliki oleh J2SE.
Arsitektur J2ME • Teknologi J2ME memiliki keterbatasan, terutama jika diaplikasikan pada ponsel. J2ME sangat tergantung pada device yang digunakan, seperti merk, kemampuan ponsel, dukungan thd prangkat J2ME. Sebagian besar ponsel tidak mengijinkan aplikasi J2ME menulis pada file dengan alasan keamanan. • Configuration merupakan Java library minimum dan kapabilitas yang dimiliki para pengembang J2ME. Maksudnya sebuah mobile device dengan kemampuan Java akan dioptimalkan menjadi sesuai.
Arsitektur J2ME • Dalam J2ME telah didefinisikan dua buah konfigurasi yaitu : CLDC (Connected Limited Device Configuration) untuk perangkat kecil dan CDC (Connected Device Configuration) untuk perangkat yang lebih besar.
• Profile berbeda dengan configuration, Profile membahas sesuatu yang spesifik untuk sebuah perangkat.
Arsitektur J2ME • Dalam J2ME terdapat dua buah profile yaitu MIDP dan Foundation Profile. Hubungan antara configuration dan profile yang ada pada J2ME beserta jenis mesinvirtualnya seperti gambar berikut
CLDC (Connected Limited Device Configuration) • CLDC adalah perangkat dasar dari J2ME, spesifikasi dasar yang berupa library dan API yang diimplementasikan pada J2ME. Seperti yang digunakan pada ponsel, pager, PDA, perangkat tersebut dibatasi dengan keterbatasan memori, sumber daya dan kemampuan memproses. • CLDC pada J2ME adalah spesifikasi minimal dari package, kelas dan sebagian fungsi JVM (Java Virtual Machine) yang dikurangi agar dapat diaplikasikan device yang ada. JVM yang digunakan disebut KVM (Kilobyte Virtual Machine).
CDC (Connected Device Configuration) • CDC adalah spesifikasi dari konfigurasi J2ME. CDC merupakan komunitas proses pada Java yang memiliki standarisasi. CDC terdiri dari Virtual Machine dan kumpulan library dasar untuk digunakan pada profile industri. Implementasi CDC pada J2ME adalaha source code yang menyediakan sambungan dengan macam-macam platform.
CLDC
CDC
Mengimplementasikan sebagian dari J2SE
Mengimplementasikan seluruh fitur J2SE
JVM yang digunakan adalah KVM
JVM yang digunakan adalah CVM
Digunakan pada perangkat genggam (handphone, PDA, Twoway pager) dengan memori terbatas (160-512KB)
Digunakan pada perangkat genggam (internet TV, Nokia Communicator, Car TV ) dengan memori minimal 2 MB
Prosesor : 16/32 bit
Prosesor : 32 bit
MIDP (Mobile Information Device Profile) • MIDP adalah spesifikasi untuk sebuah profile J2ME. MIDP memiliki lapisan diatas CLDC, API tambahan untuk daur hidup aplikasi, antarmuka, jaringan dan penyimpanan persisten. • Pada saat ini terdapat MIDP 1.0 dan MIDP 2.0. Fitur tambahan MIDP 2.0 adalah API Multimedia. Pada MIDP 2.0 terdapat dukungan memainkan tone, tone sequence, dan file WAV walaupun tanpa adanya Mobile Media API (MMAPI).
KVM (Kilobyte Virtual Machine) • KVM adalah paket JVM yang di desain untuk perangkat yang kecil. KVM mendukung sebagian fari fitur-fitur JVM, seperti misalnya KVM tidak mendukung operasi floating-point dan finalisasi objek. KVM diimplementasikan dengan menggunakan C sehingga sangat mudah beradaptasi pada tipe platform yang berbeda.
CVM (C(C-Virtual Machine) • CVM adalah paket JVM optimal yang digunakan pada CDC. CVM mempunyai seluruh fitur dari Virtual machine yang didesain untuk perangkat yang memerlukan fiturfitur Java 2 Virtual Machine.
MIDlet • MIDlet adalah aplikasi yang ditulis untuk MIDP. Aplikasi MIDlet adalah bagian dari kelas javax.microedition.midlet.MIDlet yang didefinisikan pada MIDP. MIDlet berupa sebuah kelas abstrak yang merupakan subkelas dari bentuk dasar palikasi sehingga antar muka antara aplikasi J2ME dan aplikasi manajemen pada perangkat dapat terbentuk.
J2ME Wireless Toolkit • J2ME Wireles Toolkit dapat didownload di http://java.sun.com/j2me/ secara gratis. J2ME Wireles Toolkit adalah tools yang menyediakan lingkungan emulator, dokumentasi beserta contoh-contoh aplikasi Java untuk perangkat kecil. • J2ME WTK berbasisikan pada CLDC dan MIDP. • J2ME WTK adalah program yang merniru kerja ponsel yang mendukung MIDP atau yang biasa disebut emulator. Oleh karena itu belum tentu MIDlet yang berjalan di emulator juga berjalan pada ponsel yang sebenarnya, karena tergantung pada kemampuan dan kapasitas ponsel yang digunakan. • J2ME WTK Membuat aplikasi Setting Cara menjalankan Aplikasi.
TUGAS I (28 Feb 2012) 1. Mencari referensi buku 1. Photocopy / Asli (1 orang 1 buku). 2. Mendownload Buku 2 dan Buku 3 (e-books). 3. Mendownload J2ME Wireles Toolkit di http://java.sun.com/j2me/