Presentasi Pemrograman Java
Bahasa
Pemrograman
JAVA
jufriadif na`am
+628126624701
jufriadifnaam@yahoo.com
yptk@indosat.net.id
UNIVERSITAS PUTRA INDONESIA “YPTK”
BaHaSa PeMrOgRaMaN
bahasa yang digunakan pada
komputer untuk melakukan tugas
tertentu
Contoh :
JAVA, C, Visual Basic, Clipper, Assembler, Pascal, Delphi, SQL, Perl,
Phyton, PHP, Ruby, dll
UNIVERSITAS PUTRA INDONESIA “YPTK”
Fungsi Bahasa
Menterjemahkan perintah dari bahasa manusia ke
dalam bahasa mesin yang dimengerti oleh
komputer.
Cara kerja
Interpreter
Compiler
UNIVERSITAS PUTRA INDONESIA “YPTK”
Sejarah JAVA
Diciptakan th 1991 oleh satu tim dari perusahaan
Dengan tujuan dapat dijalankan pada berbagai jenis
hardware tanpa kompilasi ulang
Dikepalai oleh James Gosling
Nama awalnya adalah Oak (nama sebuah pohon)
Th 1994 diganti menjadi JAVA (nama dari kopi)
UNIVERSITAS PUTRA INDONESIA “YPTK”
•Th 1995 di umumkan di Internet, yang digunakan pd SPARC
Solaris, dan selanjutnya dikembangkan pada Windows NT,
Windows 95 dan Linux.
•Open Source
•Tgl 23 Januari 1996, JAVA 1.0 resmi diumumkan dan
disediakan di WEB.
•Selanjutnya berkembang versi :
- J2EE (Java 2 Enterprise)
- J2SE (Java 2 Standard Edition)
- JSP (Java Server Page)
- JME (Java Mobile Edition)
- JavaBean
UNIVERSITAS PUTRA INDONESIA “YPTK”
Interpr
e
Multithreaded
&
Architecture
neutral
t ed
&
H igh
Perform
anc e
Distributed
&
Dynamics
JAVA
Characteristics
Simple &
Object Oriented
Robust
Secu
re
&
Porta
ble
UNIVERSITAS PUTRA INDONESIA “YPTK”
Different Versions of Java
• Standard Edition, J2SE
– Core of programming language
• Enterprise Edition, J2EE
– For enterprise applications
• Micro Edition, J2ME
– For small devices
UNIVERSITAS PUTRA INDONESIA “YPTK”
UNIVERSITAS PUTRA INDONESIA “YPTK”
UNIVERSITAS PUTRA INDONESIA “YPTK”
J2EE Architecture
UNIVERSITAS PUTRA INDONESIA “YPTK”
J2ME
UNIVERSITAS PUTRA INDONESIA “YPTK”
Compiler
Cetak_HelloApp.class
interpreter
Hello
Word!
Hello
Word!
Windows
Linux
interpreter
Hello
Word!
Solaris
Java Runtime
System
Java Compiler
Source
code
files
interpreter
Bytecode
executable
Class
Java Virtual
Mechine
Just-In-Time
Compiler
Native
Operating
System
Native Code
UNIVERSITAS PUTRA INDONESIA “YPTK”
Cetak_Hello.java
(source code)
Cetak_Hello.class
(bytecode)
Java Compiler
Cetak_Hello.class
(bytecode)
Java Virtual Mechine
(JVM)
>javax Cetak_Hello.java (Kompilasi)
>java Cetak_Hello (Eksekusi)
meneksekusi Applet dengan menggunakan WebBrowser
UNIVERSITAS PUTRA INDONESIA “YPTK”
Processing a Java Program
UNIVERSITAS PUTRA INDONESIA “YPTK”
What does a Java program look like?
Let’s work it !
UNIVERSITAS PUTRA INDONESIA “YPTK”
Problem-Analysis-Coding-Execution Cycle
UNIVERSITAS PUTRA INDONESIA “YPTK”
UNIVERSITAS PUTRA INDONESIA “YPTK”
Software
- Java SDK (System Development Kit) => J2SE
-JVM (Java Virtual Machine), utk interprestasi thd file .class
-API (Application Program Interface), sbg pustaka fungsi
- Editor
UNIVERSITAS PUTRA INDONESIA “YPTK”
Struktur Program Aplikasi Java
import java.nama_class.nama_fungsi;
class nama_program
{
public static void main ( String[] args )
{
// definisi variabel
….
// instruksi – instruksi
}
}
UNIVERSITAS PUTRA INDONESIA “YPTK”
Langkah Pembuatan Aplikasi
- Buka editor teks
- Ketik program dari baris pertama hingga baris
terakhir
- Save As : nama_program.java
- Keluar dari Editor
- Kompilasi :
>javac nama_program.java
- Bila tidak ada error, jalankan program :
>java nama_program
UNIVERSITAS PUTRA INDONESIA “YPTK”
Sensitive
keys
UNIVERSITAS PUTRA INDONESIA “YPTK”
Java Applet
Cetak_Hello.java
Cetak_Hello.class
Cetak_Hello.html
UNIVERSITAS PUTRA INDONESIA “YPTK”
Struktur Program Applet
import java.applet.*;
import java.nama_class.*;
{
public class nama_applet extend Applet
{
// definisi variabel
….
// instruksi – instruksi
public void paint (Graphics g)
{
….
}
}
}
UNIVERSITAS PUTRA INDONESIA “YPTK”
Langkah pembuatan Applet
- Buka editor teks
- Ketik program dari baris pertama hingga baris terakhir
- Save As : nama_applet.java
- Keluar dari Editor
- Kompilasi :
>javac nama_applet.java
- Buat file HTML
………………..
….. Komentar ……
- Jalankan HTML di WebBrowser
UNIVERSITAS PUTRA INDONESIA “YPTK”
Perbedaan struktur pada Applet
1.Program applet tidak memiliki modul utama
main(), tetapi kelasnya harus
merupakan ekstensi dari modul applet
(extends java.applet.Applet).
2.File .class hasil kompilasi tidak dapat
dijalankan langsung oleh interpreter java,
tetapi harus dimasukan kedalam suatu
halaman Web lewat suatu file .HTML.
UNIVERSITAS PUTRA INDONESIA “YPTK”
Contoh program Applet
UNIVERSITAS PUTRA INDONESIA “YPTK”
Contoh program untuk
menjalankan Applet pada
WebBrowser dengan extensi
.html
UNIVERSITAS PUTRA INDONESIA “YPTK”
Hasil program pada WebBrowser
Internet Explorer
UNIVERSITAS PUTRA INDONESIA “YPTK”
Mobile Programming
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
Java Mobile
UNIVERSITAS PUTRA INDONESIA “YPTK”
Pilihan
•Java ME
•python
•SymbianC++
•Open C
•Qtopia
•MaemoLinux
•Windows Mobile, .NET Compact Framework
•Google Android
•Qualcomm BREW
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
Java ME overview
Java ME (Micro Edition) adalah java platform untuk
consumer devices seperti handphone, PDA, TV set-top
boxes serta perangkat embedded lainnya
Java ME berisi sekumpulan API yang didefinisikan melalui
JCP
Java ME mendefinisikan configurations, profiles dan optional
packages sebagai elemen untuk membangun lingkungan
runtime Java
setiap kombinasi mendefinisikan karakteristik (memori,
kemampuan pemrosesan dan I/O yang sesuai dengan kategori
perangkat tertentu
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
J2ME dalam Bahasa Pemrograman Java
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
J2ME terdiri dari beberapa komponen
yaitu:
• Java Virtual Machine
Komponen ini untuk menjalankan program-program
Java pada emulator atau handheld device.
• Java API (Application Programming Interface)
Komponen ini merupakan kumpulan library
untuk menjalankan dan mengembangkan java
pada handheld device.
• Tools lain untuk pengembangan Berupa emulator
handphone atau PDA yang digunakan untuk
simulasi program dikomputer.
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
J2ME dibagi menjadi dua bagian
yaitu :
• J2ME configuration
• J2ME Profiles.
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
Configuration
Configuration adalah spesifikasi minimal sebuah perangkat yang
menjadi target Java ME. Configuration terdiri dari sebuah virtual
machine, sekumpulan API/library minimal yang harus disediakan
perangkat tersebut
Saat ini Java ME mendefinisikan 2 jenis:
–CLDC (Connected, Limited Device Configuration):
–CDC (Connected Device Configuration)
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
Perbandingan
Implementasi J2SE
Java Virtual Machine
Memori
Prosesor
CLDC
Subset
KVM
160 – 512 KB
16 dan 32 bit
UNIVERSITAS PUTRA INDONESIA “YPTK”
CDC
Seluruh feature
CVM
Minimal 2 MB
32 bit
http://www.upi-yptk.ac.id
CLDC
• CLDC digunakan untuk perangkat jenis mobile phone dan PDA
dengan koneksi jaringan yang intermiten, memori terbatas dan
prosesor yang lambat
• umumnya memiliki prosesor 16-bit atau 32 bit, dan memori minimal
sebesar 192 KB
• Implementasi Java untuk perangkat kelas ini umumnya berupa KVM,
yaitu virtual machine yang berukuran puluhan kilo bytes saja
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
CDC
CDC digunakan untuk perangkat yang memiliki prosesor dan memori
yang lebih besar dibandingkan CLDC, misalnya higher end PDA, TV set
top boxes
Implementasi CDC dapat menggunakan JVM standar (Java SE), dengan
perangkat yang memiliki memori sebesar 2MB atau lebih
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
Profile
Profile adalah extension dari Configuration, dengan menambahkan
sekumpulan API tambahan yang umum digunakan untuk jenis kebutuhan
tertentu.
Profile juga mendefinisikan life cycle aplikasi, antar muka pengguna dan
akses ke fitur lainnya dari sebuah device.
Profile yang umum digunakan: Mobile Information Device Profile (MIDP),
PDA Profile, Foundation Profile (FP), Personal Profile (PP), Remote Method
Invocation Profile (RMIP), dan Game Profile (GP)
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
MIDP
(Mobile Information Device Profile)
MIDP adalah profile yang ditargetkan untuk perangkat handphone serta
low end PDA
MIDP mendefinisikan fungsionalitas aplikasi dasar, seperti tampilan antar
muka pengguna, konektivitas dasar, serta penyimpanan data lokal.
Aplikasi MIDP disebut sebagai MIDlet. MIDP menyediakan kelas dasar
(MIDlet) yang dapat digunakan sebagai superclass untuk aplikasi-aplikasi
MIDlet pada MIDP.
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
FP
(Foundation Profile)
FP adalah layer yang paling dasar yang tersedia pada CDC. FP
menyediakan layanan konektivitas jaringan untuk aplikasi pada CDC
yang memerlukan konektivitas tanpa harus memiliki GUI
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
PP
(Personal Basis and Personal Profiles)
PP adalah layer pada CDC yang menyediakan dukungan GUI
Disebut juga dengan Personal Basis and Personal Profiles yang
memberikan dukungan tambahan bagi user interface functionality
dasar pada Foundation Profile
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
PDAP
(Personal Digital Assistance Profiles)
PDA Profile hampir sama dengan MIDP tetapi ditujukan untuk
PDA yang mempunyai screen yang lebih baik dan memory
yang lebih besar dari telepon selular.
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
RMIP
(Remote Method Invocation Profiles)
RMI Profile memberikan dukungan terhadap library J2SE
Remote Method Invocation libraries pada Foundation Profile
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
GP
(Game Profile)
Game Profile akan memberikan platform untuk
mengembangkan software game pada CDC
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
Optional packages
CLDC & CDC dapat dilengkapi dengan optional packages untuk
kebutuhan tertentu, seperti misalnya Bluetooth, wireless messaging,
web service dll
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
CLDC
KVM (Kilo Virtual Mechine)
nama yang digunakan oleh JVM pada CLDC memiliki
keterbatasan:
–tidak ada floating point
–tidak ada finalization
–error handling yang terbatas
–tidak ada object serialization
–tidak ada RMI
CLDC 1.1
–java.io
–java.lang
–java.lang.ref
–java.util
–java.microedition.io
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
MIDP
MIDP menyediakan:
•application life cycle management: package javax.microedition.midlet
•user interface: package javax.microedition.lcdui
•network connection: menyediakan interface HttpConnection
•penyimpanan data: javax.microedition.rms
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
MIDlet
• Aplikasi MIDP memiliki satu atau beberapa kelas yang
diturunkan dari kelas MIDlet
•MIDlet menyediakan 3 method dasar:
–startApp(): inisialisasi objek dan display
–pauseApp(): menghentikan aplikasi sementara
–destroyApp(): menghentikan aplikasi
•Aplikasi MIDP akan dieksekusi dan dikelola oleh sistem
yang spesifik untuk setiap device, disebut sebagai
Application Manager
•Aplication Manager bertugas untuk menginstall sebuah
MIDlet pada perangkat, melakukan manajemen versi,
menjalankan MIDlet dengan memanggil ketiga method di
atas
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
MIDlet
Langkah-langkah pemrograman pada MIDP:
– Menulis program/kelas MIDlet
– kompilasi
– verifikasi class file
– membuat Jar file
– membuat Jad file (file yang berisi deskripsi MIDlet dalam sebuah jar)
– instalasi MIDlet pada device
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
Tools
•Sun Java Wireless Toolkit
–menyediakan CLDC, MIDP dan optional package lainnya
–menyediakan software emulasi
–menyediakan lingkungan minimal untuk pengembangan aplikasi:
kompilasi, packaging, dan emulator untuk eksekusi program
•IDE: Netbeans & Eclipse: Sun JWT terintegrasi dengan editor
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
Mobile Media Application Programming Interface
(MMAPI)
Package yang menangani pemrosesan multimedia pada MIDP yang
digunakan dalam aplikasi Game Mobile
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
UNIVERSITAS PUTRA INDONESIA “YPTK”
UNIVERSITAS PUTRA INDONESIA “YPTK”
UNIVERSITAS PUTRA INDONESIA “YPTK”
UNIVERSITAS PUTRA INDONESIA “YPTK”
UNIVERSITAS PUTRA INDONESIA “YPTK”
UNIVERSITAS PUTRA INDONESIA “YPTK”
UNIVERSITAS PUTRA INDONESIA “YPTK”
UNIVERSITAS PUTRA INDONESIA “YPTK”
Hello, World!
UNIVERSITAS PUTRA INDONESIA “YPTK”
UNIVERSITAS PUTRA INDONESIA “YPTK”
Pemrograman
JAVA
jufriadif na`am
+628126624701
jufriadifnaam@yahoo.com
yptk@indosat.net.id
UNIVERSITAS PUTRA INDONESIA “YPTK”
BaHaSa PeMrOgRaMaN
bahasa yang digunakan pada
komputer untuk melakukan tugas
tertentu
Contoh :
JAVA, C, Visual Basic, Clipper, Assembler, Pascal, Delphi, SQL, Perl,
Phyton, PHP, Ruby, dll
UNIVERSITAS PUTRA INDONESIA “YPTK”
Fungsi Bahasa
Menterjemahkan perintah dari bahasa manusia ke
dalam bahasa mesin yang dimengerti oleh
komputer.
Cara kerja
Interpreter
Compiler
UNIVERSITAS PUTRA INDONESIA “YPTK”
Sejarah JAVA
Diciptakan th 1991 oleh satu tim dari perusahaan
Dengan tujuan dapat dijalankan pada berbagai jenis
hardware tanpa kompilasi ulang
Dikepalai oleh James Gosling
Nama awalnya adalah Oak (nama sebuah pohon)
Th 1994 diganti menjadi JAVA (nama dari kopi)
UNIVERSITAS PUTRA INDONESIA “YPTK”
•Th 1995 di umumkan di Internet, yang digunakan pd SPARC
Solaris, dan selanjutnya dikembangkan pada Windows NT,
Windows 95 dan Linux.
•Open Source
•Tgl 23 Januari 1996, JAVA 1.0 resmi diumumkan dan
disediakan di WEB.
•Selanjutnya berkembang versi :
- J2EE (Java 2 Enterprise)
- J2SE (Java 2 Standard Edition)
- JSP (Java Server Page)
- JME (Java Mobile Edition)
- JavaBean
UNIVERSITAS PUTRA INDONESIA “YPTK”
Interpr
e
Multithreaded
&
Architecture
neutral
t ed
&
H igh
Perform
anc e
Distributed
&
Dynamics
JAVA
Characteristics
Simple &
Object Oriented
Robust
Secu
re
&
Porta
ble
UNIVERSITAS PUTRA INDONESIA “YPTK”
Different Versions of Java
• Standard Edition, J2SE
– Core of programming language
• Enterprise Edition, J2EE
– For enterprise applications
• Micro Edition, J2ME
– For small devices
UNIVERSITAS PUTRA INDONESIA “YPTK”
UNIVERSITAS PUTRA INDONESIA “YPTK”
UNIVERSITAS PUTRA INDONESIA “YPTK”
J2EE Architecture
UNIVERSITAS PUTRA INDONESIA “YPTK”
J2ME
UNIVERSITAS PUTRA INDONESIA “YPTK”
Compiler
Cetak_HelloApp.class
interpreter
Hello
Word!
Hello
Word!
Windows
Linux
interpreter
Hello
Word!
Solaris
Java Runtime
System
Java Compiler
Source
code
files
interpreter
Bytecode
executable
Class
Java Virtual
Mechine
Just-In-Time
Compiler
Native
Operating
System
Native Code
UNIVERSITAS PUTRA INDONESIA “YPTK”
Cetak_Hello.java
(source code)
Cetak_Hello.class
(bytecode)
Java Compiler
Cetak_Hello.class
(bytecode)
Java Virtual Mechine
(JVM)
>javax Cetak_Hello.java (Kompilasi)
>java Cetak_Hello (Eksekusi)
meneksekusi Applet dengan menggunakan WebBrowser
UNIVERSITAS PUTRA INDONESIA “YPTK”
Processing a Java Program
UNIVERSITAS PUTRA INDONESIA “YPTK”
What does a Java program look like?
Let’s work it !
UNIVERSITAS PUTRA INDONESIA “YPTK”
Problem-Analysis-Coding-Execution Cycle
UNIVERSITAS PUTRA INDONESIA “YPTK”
UNIVERSITAS PUTRA INDONESIA “YPTK”
Software
- Java SDK (System Development Kit) => J2SE
-JVM (Java Virtual Machine), utk interprestasi thd file .class
-API (Application Program Interface), sbg pustaka fungsi
- Editor
UNIVERSITAS PUTRA INDONESIA “YPTK”
Struktur Program Aplikasi Java
import java.nama_class.nama_fungsi;
class nama_program
{
public static void main ( String[] args )
{
// definisi variabel
….
// instruksi – instruksi
}
}
UNIVERSITAS PUTRA INDONESIA “YPTK”
Langkah Pembuatan Aplikasi
- Buka editor teks
- Ketik program dari baris pertama hingga baris
terakhir
- Save As : nama_program.java
- Keluar dari Editor
- Kompilasi :
>javac nama_program.java
- Bila tidak ada error, jalankan program :
>java nama_program
UNIVERSITAS PUTRA INDONESIA “YPTK”
Sensitive
keys
UNIVERSITAS PUTRA INDONESIA “YPTK”
Java Applet
Cetak_Hello.java
Cetak_Hello.class
Cetak_Hello.html
UNIVERSITAS PUTRA INDONESIA “YPTK”
Struktur Program Applet
import java.applet.*;
import java.nama_class.*;
{
public class nama_applet extend Applet
{
// definisi variabel
….
// instruksi – instruksi
public void paint (Graphics g)
{
….
}
}
}
UNIVERSITAS PUTRA INDONESIA “YPTK”
Langkah pembuatan Applet
- Buka editor teks
- Ketik program dari baris pertama hingga baris terakhir
- Save As : nama_applet.java
- Keluar dari Editor
- Kompilasi :
>javac nama_applet.java
- Buat file HTML
………………..
….. Komentar ……
- Jalankan HTML di WebBrowser
UNIVERSITAS PUTRA INDONESIA “YPTK”
Perbedaan struktur pada Applet
1.Program applet tidak memiliki modul utama
main(), tetapi kelasnya harus
merupakan ekstensi dari modul applet
(extends java.applet.Applet).
2.File .class hasil kompilasi tidak dapat
dijalankan langsung oleh interpreter java,
tetapi harus dimasukan kedalam suatu
halaman Web lewat suatu file .HTML.
UNIVERSITAS PUTRA INDONESIA “YPTK”
Contoh program Applet
UNIVERSITAS PUTRA INDONESIA “YPTK”
Contoh program untuk
menjalankan Applet pada
WebBrowser dengan extensi
.html
UNIVERSITAS PUTRA INDONESIA “YPTK”
Hasil program pada WebBrowser
Internet Explorer
UNIVERSITAS PUTRA INDONESIA “YPTK”
Mobile Programming
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
Java Mobile
UNIVERSITAS PUTRA INDONESIA “YPTK”
Pilihan
•Java ME
•python
•SymbianC++
•Open C
•Qtopia
•MaemoLinux
•Windows Mobile, .NET Compact Framework
•Google Android
•Qualcomm BREW
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
Java ME overview
Java ME (Micro Edition) adalah java platform untuk
consumer devices seperti handphone, PDA, TV set-top
boxes serta perangkat embedded lainnya
Java ME berisi sekumpulan API yang didefinisikan melalui
JCP
Java ME mendefinisikan configurations, profiles dan optional
packages sebagai elemen untuk membangun lingkungan
runtime Java
setiap kombinasi mendefinisikan karakteristik (memori,
kemampuan pemrosesan dan I/O yang sesuai dengan kategori
perangkat tertentu
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
J2ME dalam Bahasa Pemrograman Java
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
J2ME terdiri dari beberapa komponen
yaitu:
• Java Virtual Machine
Komponen ini untuk menjalankan program-program
Java pada emulator atau handheld device.
• Java API (Application Programming Interface)
Komponen ini merupakan kumpulan library
untuk menjalankan dan mengembangkan java
pada handheld device.
• Tools lain untuk pengembangan Berupa emulator
handphone atau PDA yang digunakan untuk
simulasi program dikomputer.
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
J2ME dibagi menjadi dua bagian
yaitu :
• J2ME configuration
• J2ME Profiles.
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
Configuration
Configuration adalah spesifikasi minimal sebuah perangkat yang
menjadi target Java ME. Configuration terdiri dari sebuah virtual
machine, sekumpulan API/library minimal yang harus disediakan
perangkat tersebut
Saat ini Java ME mendefinisikan 2 jenis:
–CLDC (Connected, Limited Device Configuration):
–CDC (Connected Device Configuration)
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
Perbandingan
Implementasi J2SE
Java Virtual Machine
Memori
Prosesor
CLDC
Subset
KVM
160 – 512 KB
16 dan 32 bit
UNIVERSITAS PUTRA INDONESIA “YPTK”
CDC
Seluruh feature
CVM
Minimal 2 MB
32 bit
http://www.upi-yptk.ac.id
CLDC
• CLDC digunakan untuk perangkat jenis mobile phone dan PDA
dengan koneksi jaringan yang intermiten, memori terbatas dan
prosesor yang lambat
• umumnya memiliki prosesor 16-bit atau 32 bit, dan memori minimal
sebesar 192 KB
• Implementasi Java untuk perangkat kelas ini umumnya berupa KVM,
yaitu virtual machine yang berukuran puluhan kilo bytes saja
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
CDC
CDC digunakan untuk perangkat yang memiliki prosesor dan memori
yang lebih besar dibandingkan CLDC, misalnya higher end PDA, TV set
top boxes
Implementasi CDC dapat menggunakan JVM standar (Java SE), dengan
perangkat yang memiliki memori sebesar 2MB atau lebih
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
Profile
Profile adalah extension dari Configuration, dengan menambahkan
sekumpulan API tambahan yang umum digunakan untuk jenis kebutuhan
tertentu.
Profile juga mendefinisikan life cycle aplikasi, antar muka pengguna dan
akses ke fitur lainnya dari sebuah device.
Profile yang umum digunakan: Mobile Information Device Profile (MIDP),
PDA Profile, Foundation Profile (FP), Personal Profile (PP), Remote Method
Invocation Profile (RMIP), dan Game Profile (GP)
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
MIDP
(Mobile Information Device Profile)
MIDP adalah profile yang ditargetkan untuk perangkat handphone serta
low end PDA
MIDP mendefinisikan fungsionalitas aplikasi dasar, seperti tampilan antar
muka pengguna, konektivitas dasar, serta penyimpanan data lokal.
Aplikasi MIDP disebut sebagai MIDlet. MIDP menyediakan kelas dasar
(MIDlet) yang dapat digunakan sebagai superclass untuk aplikasi-aplikasi
MIDlet pada MIDP.
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
FP
(Foundation Profile)
FP adalah layer yang paling dasar yang tersedia pada CDC. FP
menyediakan layanan konektivitas jaringan untuk aplikasi pada CDC
yang memerlukan konektivitas tanpa harus memiliki GUI
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
PP
(Personal Basis and Personal Profiles)
PP adalah layer pada CDC yang menyediakan dukungan GUI
Disebut juga dengan Personal Basis and Personal Profiles yang
memberikan dukungan tambahan bagi user interface functionality
dasar pada Foundation Profile
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
PDAP
(Personal Digital Assistance Profiles)
PDA Profile hampir sama dengan MIDP tetapi ditujukan untuk
PDA yang mempunyai screen yang lebih baik dan memory
yang lebih besar dari telepon selular.
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
RMIP
(Remote Method Invocation Profiles)
RMI Profile memberikan dukungan terhadap library J2SE
Remote Method Invocation libraries pada Foundation Profile
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
GP
(Game Profile)
Game Profile akan memberikan platform untuk
mengembangkan software game pada CDC
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
Optional packages
CLDC & CDC dapat dilengkapi dengan optional packages untuk
kebutuhan tertentu, seperti misalnya Bluetooth, wireless messaging,
web service dll
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
CLDC
KVM (Kilo Virtual Mechine)
nama yang digunakan oleh JVM pada CLDC memiliki
keterbatasan:
–tidak ada floating point
–tidak ada finalization
–error handling yang terbatas
–tidak ada object serialization
–tidak ada RMI
CLDC 1.1
–java.io
–java.lang
–java.lang.ref
–java.util
–java.microedition.io
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
MIDP
MIDP menyediakan:
•application life cycle management: package javax.microedition.midlet
•user interface: package javax.microedition.lcdui
•network connection: menyediakan interface HttpConnection
•penyimpanan data: javax.microedition.rms
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
MIDlet
• Aplikasi MIDP memiliki satu atau beberapa kelas yang
diturunkan dari kelas MIDlet
•MIDlet menyediakan 3 method dasar:
–startApp(): inisialisasi objek dan display
–pauseApp(): menghentikan aplikasi sementara
–destroyApp(): menghentikan aplikasi
•Aplikasi MIDP akan dieksekusi dan dikelola oleh sistem
yang spesifik untuk setiap device, disebut sebagai
Application Manager
•Aplication Manager bertugas untuk menginstall sebuah
MIDlet pada perangkat, melakukan manajemen versi,
menjalankan MIDlet dengan memanggil ketiga method di
atas
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
MIDlet
Langkah-langkah pemrograman pada MIDP:
– Menulis program/kelas MIDlet
– kompilasi
– verifikasi class file
– membuat Jar file
– membuat Jad file (file yang berisi deskripsi MIDlet dalam sebuah jar)
– instalasi MIDlet pada device
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
Tools
•Sun Java Wireless Toolkit
–menyediakan CLDC, MIDP dan optional package lainnya
–menyediakan software emulasi
–menyediakan lingkungan minimal untuk pengembangan aplikasi:
kompilasi, packaging, dan emulator untuk eksekusi program
•IDE: Netbeans & Eclipse: Sun JWT terintegrasi dengan editor
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
Mobile Media Application Programming Interface
(MMAPI)
Package yang menangani pemrosesan multimedia pada MIDP yang
digunakan dalam aplikasi Game Mobile
UNIVERSITAS PUTRA INDONESIA “YPTK”
http://www.upi-yptk.ac.id
UNIVERSITAS PUTRA INDONESIA “YPTK”
UNIVERSITAS PUTRA INDONESIA “YPTK”
UNIVERSITAS PUTRA INDONESIA “YPTK”
UNIVERSITAS PUTRA INDONESIA “YPTK”
UNIVERSITAS PUTRA INDONESIA “YPTK”
UNIVERSITAS PUTRA INDONESIA “YPTK”
UNIVERSITAS PUTRA INDONESIA “YPTK”
UNIVERSITAS PUTRA INDONESIA “YPTK”
Hello, World!
UNIVERSITAS PUTRA INDONESIA “YPTK”
UNIVERSITAS PUTRA INDONESIA “YPTK”