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”