• Tidak ada hasil yang ditemukan

tugas mandiri java

N/A
N/A
Protected

Academic year: 2017

Membagikan "tugas mandiri java"

Copied!
41
0
0

Teks penuh

(1)

TUGAS MANDIRI

MAKALAH

Pemrograman Mobile Praktek

Oleh:

CHARLES HARIANTO BANCIN

120310033

MATA KULIAH

:

Pemrograman Mobile Praktek

DOSEN

: Tukino, S.Kom., M.SI..

PROGRAM STUDI SISTEM INFORMASI

UNIVERSITAS PUTERA BATAM

(2)

KATA PENGANTAR

Puji dan syukur kami sampaikan kepada Tuhan Yang Maha Esa yang telah

melimpahkan segala rahmat dan karuniaNya, sehingga penulis dapat menyelesaikan

laporan tugas mandiri mata kuliah Pemrograman Mobile Praktek. Penulis menyadari

bahwa laporan tugas mandiri ini masih jauh dari sempurna. Karena itu, kritik dan

saran akan senantiasa penulis terima dengan senang hati.

Dengan segala keterbatasan, penulis menyadari pula bahwa laporan tugas mandiri ini

takkan terwujud tanpa bantuan, bimbingan, dan dorongan dari berbagai pihak. Untuk

itu, dengan segala kerendahan hati, penulis menyampaikan ucapan terima kasih

kepada:

1. Bapak

Tukino, S.Kom., M.SI..

selaku dosen mata kuliah Pemrograman

Mobile Praktek

2. Dosen dan Staff Universitas Putera Batam.

3. Teman teman saya yang telah medukung saya

4. Keluarga saya yang selalu mendukung saya

Semoga Tuhan Yang Maha Esa membalas kebaikan dan selalu mencurahkan hidayah

serta taufikNya, Amin.

Batam, 05 januari 2015

(3)

DAFTAR ISI

KATA PENGANTAR ... 2

DAFTAR ISI ... 3

BAB I PENDAHULUAN ... 4

BAB I Latar Belakang Masalah ... 4

BAB II LANDASAN TEORI ... 8

BAB III PEMBAHASAN ... 11

(4)

BAB I PENDAHULUAN

1.1 Latar Belakang Masalah

Perkembangan industri komunikasi tanpa kabel secara global telah tumbuh

begitu pesat sejak beberapa tahun belakangan ini sehingga menyebabkan komunikasi

tanpa kabel menjadi salah satu teknologi yang paling popular dan cepat berkembang

di seluruh dunia. Teknologi JavaTM Micro Editon (J2ME) merupakan standar

aplikasi bagi peralatan wireless seperti telepon seluler dan PDA, teknologi ini

membuat suatu ponsel dapat diisi program aplikasi dan permainan yang ada. Jika

penggantian kover (casing) dapat mengubah fisik ponsel, pengubahan program

aplikasi / permainan dapat mengubah performa ponsel tersebut. Dengan adanya

Teknologi JavaTM pemakai dapat menghapus program aplikasi / game lama

dan menambahkan suatu program aplikasi / game baru. Dengan cara seperti itu,

pemakai menjadi tidak bosan dengan standar fasilitas yang ada dan dapat pula

mengembangkan kemampuan ponsel miliknya. Teknologi J2ME ini mendukung

Mobile Information Devices Profile (MIDP), dimana profile ini dibagi menjadi 2

versi yaitu : MIDP 1.0 yang mendukung fitur Mobile Media API yang berfungsi

untuk audio dan video pada ponsel. Kemudian muncul versi baru yaitu MIDP 2.0

yang mendukung fitur Audio Building BlockAPIs untuk memainkan Audio Tones,

gaming API, sesuai untuk membuat komponen yang sederhana pada form, sesuai

untuk integer array yang sederhana dalam memanipulasi gambar, secure networking

dan multimedia.2

Seiring dengan semakin berkembangnya teknologi, banyak orang yang

(5)

telepon genggam. Namun dalam pembuatan sistem ini organizer disimpan pada

server sehingga pengguna dapat menyimpan data yang lebih banyak. Selain itu,

organizer ini sangat bermanfaat bagi pengguna yang memiliki telepon genggam yang

support java tetapi belum memiliki organizer. Sistem ini berbasis J2ME (Java 2

Micro Edition) yaitu bahasa pemrograman yang digunakan untuk menjalankan dan

mengembangkan aplikasi-aplikasi Java pada peralatan semacam telepon genggam

secara wireless.

Sistem organizer dapat diakses dengan menggunakan telepon genggam

berbasis Java dan GPRS. Sehingga kualitas aksesnya tergantung dari provider yang

digunakan serta waktu pengaksesan.

Sistem organizer ini dapat digunakan untuk menyimpan atau mengakses data

dari dan ke database server. Pembuatan sistem ini diawali dengan pembuatan

program pada PC (Personal Computer) menggunakan software j2mewtk dan PHP

script, kemudian integrasi dengan memanfaatkan emulator pada j2mewtk.Lalupada

server dilakukan pembuatan database dengan menggunakan MySQL yangberisi

data-data user. Setelah itu dilakukan download program J2ME menuju telepon genggam

dan upload data PHP script pada server.

1.2. Identifikasi Masalah

Pada pembuatan sistem ini digunakan database MySQL sebagai penyimpan

data-data dari organizer tiap pengguna, PHP sebagai bahasa script di sisi server untuk

koneksi database dengan pemrograman J2ME, dan dibuat pada sistem operasi

(6)

1.3. Maksud dan Tujuan

Maksud dari pembuatan laporan ini adalah untuk membangun system

organizer pribadi pada telepon genggam berbasis J2ME

Adapun tujuan dari pembuatan sistem organizer pribadi ini adalah :

1. Untuk menyimpan data lebih banyak,aman dan praktis.

1.4 Batasan Masalah

1. Dengan menggunakan program J2ME pada telepon genggam untuk

mengaksesorganizer pribadi.

1.5. Metodologi Penelitian

Metodologi penelitian merupakan tahapan-tahapan yang dilalui oleh peneliti

mulai dari perumusan masalah hingga pada kesimpulan. Metodologi penelitian ini

digunakan sebagai pedoman agar hasil yang dicapai sesuai dengan yang telah

ditentukan sebelumnya.Metode penelitian yang digunakan dalam penelitian ini antara

lain :

 Studi Literatur

Dalam pembuatan proyek akhir ini harus terlebih dahulu mempelajari tentang bahasa

pemrograman J2ME, MySQL, dan PHP. Untuk pembuatan tampilan, database, serta

koneksi telepon genggam dengan server.

 Perencanaan sistem

Prinsip kerja sistem ini adalah pengguna dapat mengakses organizer atau pengingat

pesan dengan masuk menu-menu utama pada telepon genggam. Jika memilih

organizer, maka pengguna harus memasukkan username dan password agar

terhubung dengan server melalui jaringan internet hingga dapat masuk ke menu-menu

(7)

ini, setiap pengguna memiliki batas pemakaian untuk setiap organizer-nya. Sehingga

jika seorang pengguna mengisi organizer-5 nya melebihi kapasitas, maka pengguna

tersebut akan mendapat pesan bahwa telah melebihi kapasitas yang telah disediakan.

1.Pembuatan Tampilan Pada Telepon Genggam

Terlebih dahulu dibuat tampilan pada telepon genggam berupa menu-menu untuk

mengakses organizer melalui jaringan internet, atau mengakses menu pengingat

pesan. Pembuatan tampilan ini, menggunakan bahasa pemrograman J2ME. Program

ini akan dibuat dengan melihat emulator, dan di-download ke telepon genggam

setelah didapat hasil sesuai yang diharapkan.

2.Pembuatan Database

Pembuatan database untuk menu-menu organizer, yang terdiri dari jadwal

kegiatan sehari-hari, catatan penting, dan diary. Pada pembuatan database ini

digunakan program database MySQL, yang nantinya database ini dapat ter-update

secara otomatis jika pengguna menambah atau mengurangi data melalui telepon

genggam.

3 Pengaturan koneksi

Setelah dibuat tampilan pada telepon genggam, dan pembuatan database pada

server, selanjutnya dibuat program untuk koneksi antara telepon genggam dengan

server dengan menggunakan bahasa pemrograman J2ME dan PHP.6

2. Analisa dan Kesimpulan

Dari hasil pengujian sitem secara keseluruhan dilakukan analisa dan memberikan

(8)

BAB II

LANDASAN TEORI

2.1 JAVA

Java merupakan bahasa pemrograman yang disusun oleh James Gosling

yangdibantu oleh rekan-rekannya di suatu perusahaan perangkat lunak yang bernama

Sun Microsystems, pada tahun 1991. Bahasa pemrograman ini mula-mula

diinisialisasi dengan nama “Oak”, namun pada tahun 1995 diganti namanya menjadi “Java”.

2.1.1 Pengertian Java

Menurut definisi Sun Microsystem, di dalam buku M. Shalahuddin dan

RosaA.S. (2010 : 1) Java adalah nama sekumpulan teknologi untuk membuat dan

menjalankan perangkat lunak pada komputer yang berdiri sendiri (standalone)

ataupun pada lingkungan jaringan. Java berdiri di atas sebuah mesin penterjemah

(interpreter) yang diberi nama Java Virtual Machine (JVM). JVM inilah yang akan

membaca kode bit (bytecode)dalam file .class dari suatu program sebagai representasi

langsung program yang berisi bahasa mesin. Oleh karena itu bahasa Java disebut

sebagai bahasa pemrograman yang portable karena dapat dijalankan pada berbagai

system operasi, asalkan pada system operasi tersebut terdapat JVM. Alasan utama

pembentukan bahasa Java adalah untuk membuat aplikasi-aplikasi yang dapat

diletakkan di berbagai macam perangkat elektronik, sehingga Java harus bersifat

tidak bergantung pada platform (platform independent). Itulah yang menyebabkan

dalam dunia pemrograman Java dikenal adanya istilah „write once, run everywhere‟,

yang berarti kode program hanya ditulis sekali, namun dapat 9 dijalankan di bawah

kumpulan pustaka (platform) manapun, tanpa harus melakukan perubahan kode

(9)

Java adalah suatu teknologi di dunia software komputer, yang merupakan

suatubahasa pemrograman, dan sekaligus suatu platform. Sebagai bahasa

pemrograman,Java dikenal sebagai bahasa pemrograman tingkat tinggi. Java mudah

dipelajari,terutama bagi programmer yang telah mengenal C/C++. Java merupakan

bahasapemrograman berorientasi objek yang merupakan paradigma pemrograman

masadepan. Sebagai bahasa pemrograman Java dirancang menjadi handal dan aman.

Javajuga dirancang agar dapat dijalankan di semua platform, dan juga dirancang

untukmenghasilkan aplikasi-aplikasi dengan performansi yang terbaik, seperti

aplikasidatabase Oracle 8i/9i yang core-nya dibangun menggunakan bahasa

pemrogramanJava. Sedangkan Java bersifat neutral architecture, karena Java

Compiler yang digunakan untuk mengkompilasi kode program Java dirancang untuk

menghasilkankode yang netral terhadap semua arsitektur perangkat keras. Sebagai

sebuah platform, Java terdiri atas dua bagian utama, yaitu:

 Java Virtual Machine (JVM)

 Java Application Programming Interface (Java API)

Sun membagi arsitektur Java membagi tiga bagian, yaitu:

1. J2EE (Java 2 Enterprise Edition)

2. J2SE (Java 2 Second Edition)

(10)

2.1.2.Arsitektur Java

Secara arsitektur, Java tidak berubah sedikitpun sejak awal mula bahasatersebut

dirilis. Compiler Java (yang disebut dengan javac atau Java Compiler) akan

mentransformasikan kode-kode dalam bahasa Java ke dalam suatu kode bit. Dimana

bytecode adalah sekumpulan perintah hasil kompilasi yang kemudian dapat

dieksekusi melalui sebuah mesin komputer abstrak, yang disebut dengan JVM (Java

Virtual Machine). JVM juga sering dinamakan sebagai interpreter, karena sifatnya

yang selalu menerjemahkan kode-kode yang tersimpan dalam kode bit dengan cara

baris demi baris. Untuk menjalankan program Java, maka file dengan ekstensi .java

harus dikompilasi menjadi file kode bit. Dimana untuk menjalankan kode bit tersebut

dibutuhkan JRE (Java Runtime Environment) yang memungkinkan pemakai untuk

menjalankan program Java, hanya menjalankan, tidak untuk membuat kode baru lagi.

(11)

BAB III PEMBAHASAN

3.1 Java 2 Micro Edition (J2ME)

3.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. J2ME adalah bagian dari J2SE, karena itu tidak

semua library yang ada pada J2SE dapat digunakan pada J2ME. Tetapi J2ME

mempunya beberapa library khusus yang tidak dimiliki J2SE. Arsitektur J2ME dapat

(12)

Teknologi J2ME juga memiliki beberapa keterbatasan, terutama

jikadiaplikasikan pada ponsel. J2ME sangat tergantung pada perangkat (device) yang

digunakan, bisa dari segi merk ponsel, maupun kemampuan ponsel dan dukungannya

terhadap teknologi J2ME. Misalnya, jika sebuah ponsel tidak memiliki kamera, maka

jelas J2ME pada ponsel tersebut tidak dapat mengakses kamera. Keterbatasan lainnya

adalah pada ukuran aplikasi, karena memori pada ponsel sangat terbatas. Sebagian

besar ponsel tidak mengijinkan aplikasi J2ME menulis pada file karena alas an

keamanan. Configuration merupakan Java library minimum dan kapabilitas yang

dipunya oleh para pengembang J2ME, yang maksudnya sebuah mobile device dengan

kemampuan Java akan dioptimalkan untuk menjadi sesuai. Configuration hanyalah

mengatur hal-hal tentang kesamaan sehingga dapat dijadikan ukuran kesesuaian antar

device. Misalnya sebuah lampu sepeda dirancang sedemikian sehingga dapat

digunakan oleh berjenis-jenis sepeda. Dalam J2ME telah didefinisikan dua buah

konfigurasi yaitu CLDC (Connected Limites Device 11 Configuration) untuk

perangkat kecil dan CDC (Connected Device Configuration) untuk perangkat yang

lebih besar. Lingkup CLDC dan CDC dapat dilihat pada

(13)

Profile berbeda dengan configuration, profile membahas sesuatu yangspesifik

untuk sebuah perangkat. Sebagai contoh misalnya, sebuah sepeda dengan merk

tertentu, tentunya mempunyai ciri spesifik dengan sepeda lain.

Dalam gambar J2ME terdapat dua buah profile yaitu MIDP danFoundation

Profile. Keterhubungan antara configuration dan profile yang ada pada J2ME beserta

jenis mesin virtualnya dapat dilihat pada gambar berikut :

(14)

CLDC atau Connected Limited Device Configuration adalah perangkat dasar

dari J2ME, spesifikasi dasar yang berupa library dan API yang diimplemetasikan

pada J2ME, seperti yang digunakan pada telepon selular, pager dan PDA. Perangkat

tersebut dibatasi dengan keterbatasan memori, sumber daya dan kemampuan

memproses. Spesifikasi CLDC pada J2ME adalah spesifikasi minimal dari package,

kelas dan sebagian fungsi Java Virtual Machine yang dikurangi agar dapat

diimplementasikan dengan keterbatasan sumber daya pada alat-alat tersebut, JVM

yang digunakan disebut KVM (Kilobyte Virtual Machine). Posisi CLDC pada

arsitektur J2ME dapat dilihat pada gambar di atas.

2.1.3 Connected Device Configuration (CDC)

CDC atau Connected Device Configuration adalah spesifikasi dari konfigurasi

J2ME. CDC merupakan komunitas proses pada Java yang mempunyai standardisasi.

CDC terdiri dari virtual machine dan kumpulan librarydasar untuk dipergunakan pada

profile industri. Implementasi CDC pada J2ME13 adalah source code yang

menyediakan sambungan dengan macam-macam platform.

(15)

3.2 PROFIL

Profil merupakan bagian perluasan dari konfigurasi, yaitu sekumpulan kelas

yang terdapat pada konfigurasi, terdapat juga kelas-kelas spesifik yang didefinisikan

lagi di dalam profil. Dengan kata lain, profil akan membantu secarafungsional yaitu

dengan menyediakan kelas-kelas yang tidak terdapat di level konfigurasi. Berikut ini

adalah profil J2ME yang tersedia saat ini yaitu :

1) MIDP (Mobile Information Device Profile)

MIDP adalah profil yang disediakan oleh Sun Microsystems. MIDP

menyediakan librari-librari Java untuk implementasi dasar antarmuka (GUI),

implementasi jaringan (networking), database, dan timer. MIDP dirancang

khususnya untuk wireless phone dan pager. 14

2) PDAP (Personal Digital Assistant Profile)

Yaitu profil untuk PDA yang memperluas fungsi-fungsi pada konfigurasi

CLDC dan digunakan khusus untuk menambahkan kemampuan-kemampuan

(16)

3) Foundation Profile

Yaitu profil yang digunakan untuk konfigurasi CDC. Profil ini menambahkan

beberapa kelas dari J2SE ke dalam konfigurasi CDC, dan berperan juga

sebagai pondasi untuk membentuk profil baru lainnya.

4) Personal Profile

Yaitu profil yang mendefinisikan ulang PersonalJava sebagai profil yang

dapat digunakan sebagai profil dalam J2ME. Profil ini merupakan hasil

perluasan dari Foundation Profile.

5) RMI Profile

Yaitu profil yang menambahkan dukungan RMI (Remote Method Invocation)

ke dalam konfigurasi CDC.

3.2.1 Mobile Information Device Profile (MIDP)

MIDP atau Mobile Information Device Profile adalah spesifikasi untuk sebuah profil

J2ME. MIDP memiliki lapisan di atas 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 dibandingMIDP 1.0 adalah API

untuk multimedia. Pada MIDP 2,0 terdapat dukungan memainkan tone, tone

sequence dan file WAV walaupun tanpa adanya Mobile 15 Media API (MMAPI).

Posisi MIDP pada arsitektur J2ME dapat dilihat pada gambar di atas.

(17)

MIDP User Interface API memiliki API level tinggi dan level rendah. API

level rendah berbasiskan penggunaan dari kelas abstrak Canvas, sedangkan kelas API

level tinggi antara lain Alert, Form, List dan TextBox yang merupakan eksistensi dari

kelas abstrak Screen. API level rendah lebih memberikan kemudahan kepada

pengembang untuk memodifikasi sesuatu dengan kehendaknya, sedangkan API level

tinggi biasanya hanya memberikan pengaksesan yang terbatas. Arsitektur antarmuka

MIDP dapat dilihat pada gambar di bawah ini:

3.3 MIDLET

MIDlet adalah bagian dari kelas javax.microedition.midlet.MIDlet yang

(18)

kelas dari bentuk dasar aplikasi sehingga antarmuka antara aplikasi J2MEdan aplikasi

manajemen pada perangkat dapat terbentuk.

3.3.1 Daur Hidup Midlet

MIDlet terdiri dari beberapa metode yang harus ada, yaitu

construktor()protected void startApp() throws MIDletStateChangeException,

protected void pauseApp(), protectedvoid destroyApp(boolean unconditional) throws

MIDletStateChangeException. Alur hidup MIDlet dapat dilihat pada gambar 2.6.

Ketika MIDlet dijalankan maka akan diinisialisasi dengan kondisi pause dan

dijalankan pauseApp(), kondisi berikutnya adalah fungsi MIDlet dijalankan,yaitu

pada startApp(). Metode tersebut diimplementasikan sebagai protected dengan

maksud agar MIDlet lain tidak dapat memanggil metode tersebut.Ketika keluar dari

MIDlet, maka metode destroyApp() akan dijalankansebelum MIDlet benar-benar

tidak berjalan lagi. DestroyApp() akan memanggil notifyDestroyed(), dan

notifyDestroyed() akan memberitahu platform untuk menterminasi MIDlet dan

membersihkan semua sumber daya yang mengacu padaMIDlet.Dalam

implementasinya, MIDlet memiliki struktur direktori antara lain sebagai berikut :

(19)

2) res

Menyimpan sumber daya yang dibutuhkan oleh MIDlet, sepertimisalnya

gambar icon.

3) lib

menyimpan file JAR atau ZIP yang berisi library tambahan yangdibutuhkan

MIDlet.

Menuurt definisinyan kelas command adalah sebuah kontruksi yang

membungkus semua hal-hal atau informasi yang berkaitan dengan aksi .Perilaku

tersebut tidak dibungkus di dalam objek command ,melainkan harus didefinisikan

secara eksplisit melalui method commandAction() ,yaiutu method yang harus

didefinisikan pada saat kita mengimplementasikan interface commandlistener .Ini

artinya objek command hanya berisi informasi tentang perintah ,bukan sebuah aksi

actual yang terjadi pada objek command diaktifasi .Aksi-aksi yang telah didefinisikan

pada interface commandlistener kemudian diasosiasikan dengan layar aktif sehingga

objek-objek command yang terdapat pada layar tersebut dapatdiaktivasi sesuai

dengan kebutuhan .

Command adalah sebuah obyek yang digunakan untuk merespon user pada sebuah

aplikasi. Sering diasosiasikan sebagai softkey, tombol ataupun area pada touchscreen.

(20)

Pada penggunaanya, Command didefinisikan dengan mengimplementasikan

CommandListener. Command(String label, int commandType, int priority).

Command memiliki 3 atribut, yaitu :

 label yaitu menampilkan nama pada tombol Command

 type yaitu menentukan fungsi dari Command. Jenis type Command antara lain

BACK, EXIT, OK, HELP, CANCEL, SCREEN, ITEM, dan STOP.

 priority yaitu menentukan urutan prioritas dalam menampilkan Command

pada layar

3.4.2 CommandListener

berfungsi untuk menangani jika user memilih Command tertentu sedangkan

ItemListener berfungsi untuk menangani jika user mengubah nilai sepert misalnya

mengubah pilihan pada ChoiceGroup ,sedangkan ItemListener berfungsi untuk

menangani jika user mengubah nilai.

3.5. User Interface

GUI ( Graphical User Interface ) merupakan sebutan untuk antarmuka

penguna, kebutuhan user interface untuk aplikasi yang berada dalam peralatan –

peralatan kecil seperti telepon selular ,PDA, maupun pager tentu akan berbeda

kebutuhan dengan kita pada saat membuat aplikasi desktop.

(21)

dalam Pllaform J2ME tersebut dikembangkan oleh sebuah komunitas yang

dinamakan JCP ( Java Community Process )

3.5.1 Struktur GUI Dalam MIDP

Model High – Level API

Model ini untuk mendukung adanya pengembangan aplikasi yang dapat bersifat

portebel atau dapat dijalankan diatas alat yang berbeda. Model ini menyediakan kelas

-kelas standart untuk keperluan UI seperti komponen form, textbox, list, alert.

Model Low – Level API

Model ini memberikan akse penuh kepada programmer untuk melakukan control

terhadap semua tampilan layar, termasuk penggambaran dalam pixel dan pembuatan

bentuk geometri.

Arsitektur LCDUI

1.Kelas Display

sebagai penyedia akses ke layar fisik yang memiliki tingkat akses private

2.Kelas Displayable

Merupakan kelas moyang dari kelas scream dan canvas. kelas scream dan canvas

yaitu suatu kelas yang menyediakan pondasi untuk user interface yang terdapat

didalam aplikasi MIDP.

3.5.2 Kelas – Kelas Dalam High – Level API

Kelas Screen

Merupakan kelas abstrak yang diturunkan langsung dari kelas displayable dan

mempresentasikan komponen – komponen high – level untuk membuat user interface

di dalam aplikasi MIDP.

(22)

Kelas Alert

Kelas turunan dari kelas screen yang mempresentasikan layar informasi pada saat

kondisi – kondisi tertentu selama aplikasi MIDP dieksekusi.

Kelas List

Kelas turunan dari kelas screen yang menampilkan daftar item pilihan yakni kita

dapat melakukan scroll terhadap item – it.em tersebut. Namjun perlu dipahami,

bahwa kelas scroll tidak akan menimbulkan event aplikasi. Artinya pada saat kita

melakuakn scroll terhadap item – item tertentu, maka kita dianggap belum memilih

item tersebut.

Kelas TextBox

Kelas turunan dari kelas screen yang mempresentasikan sebuah kotak yang dapat

digunakan untuk mengisikan tesk.

Kelas Form

Kelas form merupakan kelas yang paling serba guna, pasalnya kita dapat

menempatkan beraneka ragam control ( turunan dari kelas item ) kedalam objek

form, seperti objek TextField, DateField, StringItem, ImageItem dll.

Kelas Item

Kelas – kelas turunan dari kelas item merupakan komponen – komponen visual yang

dapat ditambahkan kedalam form. Kelas Item itu sendiri berupa kelas abstrak

(23)

Berikut ini kerlas turunan dari kelas item antara lain :

StringItem dan ImageItamMasing – masing untuk mempresentasikan objek teks dan

gambar yang dapat ditempatkan dihalaman form

1. Textfield dan DateField

Digunakan untuk melakukan input teks didalam sebuah form.

2. ChoiceGroup

Mirip dengan List, kedua kelas tersebut sama – sama mengimplementasikan interface choice yamg memiliki banyak method esensail untuk proses pemilihan item dari

suatu daftar tertentu.

3. Gauge

Adalah sebuah item yang merupakan representasi grafik untuk menampilkan sebuah

progress bar dengan nilai berupa integer.

3.5.3Kelas – Kelas Dalam Low – Level API

Kelas Canvas

Adalah kelas dasar ( base bar ) untuk semua kelas yang membutuhkan control tingkat

rendah ( low level ) dan proses penggambaran. Canvas adalah sebuah kelas abstrak

sehingga perlu untuk diperluas ,ini artinya kelas – kelas turunan canvas harus

mengimplementasikan method paint()

Kelas Graphic

Kelas yang menyediakan method – method untuk penggambaran actual di dalam

objek canvas. Objek dalam kelas graphic biasanya dilewatkan pada method paint()

(24)

3.6BEKERJA DENGAN TICKER

Untuk melengkapi pembuatan user interface didalam layar ponsel, terkadang

kita ingin menampilkan sebuah teks yang berjalan secara berulang-ulang diatas layar.

Teks tersebut disebut dengan ticker dan biasa digunakan untuk menampilkan

informasi-informasi penting. Ini sering kita jumpai pada layar televise yang sering

memunculkan informasi singkat atau mini-headline yang biasanya ditampilkan pada

bagian bawah layar dan bergerak dari arah kanan ke kiri. Dalam MIDP, ticker dapat

dibuat dengan menggunakan kelas Ticker yang tersimpan dalam paket

java.xmicroedition.lcdui.

3.6.1 Lebih jauh tentang Ticker

Perlu kita ketahui bahwa objek Ticker hanya terkait dengan layar, bukan

dengan aplikasi. Ini artinya apabila kita memiliki sebuah aplikasi yang terdiri dari

beberapa layar, kita dapat mengeset Ticker pada layar tertentu saja. Sedamgkan layar

yang lainnya tidak memiliki ticker. Anda jangan beranggapan bahwa apabila

salahsatu layar dalam aplikasi kita menjadi ticker, maka layar yang lainpun secara

otomatis menampilkan ticker tersebut

3.6.2 Model Ticker yang dapat di Share

Sebuah program dapat digunakan bersama-samaoleh dua atau lebih layar yang

terdapat dalam satu aplikasi. Pada aplikasi sebelumnya kita memiliki dua buah layar

yaitu formmenu dan forminfo. Pesan atau informasi yang digunakan sebagai ticker

isinya dapat diubah pada saat runtime. Ini artinya ticker bersifat dinamis. Terkadang

hal ini sangat dibutuhkan dalam aplikasi. Misalnya kita ingin menampilkan ticker

yang isisnya diperoleh dari item pilihan yang disorot atau untuk menampilkan dua

(25)

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

//library yang digunakan

import javax.microedition.midlet.*;

import javax.microedition.lcdui.*;

public class Calculator extends MIDlet implements CommandListener{

//pendeklarasian object

Display display; // deklarasi display

Form mainForm; // deklarasi form

int N1, N2, NH;// deklarasi variabel

TextField bil1, bil2, result; //deklarasi textfiled

//membuat tombol tambah, kurang, bagi, kali dan keluar

(26)

bil1 = new TextField("Bilangan 1", "", 64, TextField.NUMERIC);

bil2 = new TextField("Bilangan 2", "", 64, TextField.NUMERIC);

result = new TextField("Hasil", "", 64, TextField.UNEDITABLE);

mainForm.addCommand(keluar); // meletakkan tombol keluar

display.setCurrent(mainForm);// menampilkan form

}

}

public void pauseApp() {

}

public void destroyApp(boolean unconditional) {

}

public void commandAction(Command c, Displayable d) {

//jika tombol di klik

if(c==keluar){

(27)
(28)

result.setString(String.valueOf(NH));//Menampilkan hasil dari variabel hasil

ke txtHasil

}

}

}

(29)

Program 1

/*

* To change this template, choose Tools | Templates

(30)

*/

import javax.microedition.midlet.*;

import javax.microedition.lcdui.*;

/**

* @author bancin

*/

public class datamahasiswa extends MIDlet implements CommandListener {

Display layar;

Form form;

Command cmdkeluar,cmdok;

TextField tfnpm,tfnama,tfuas,tfuts,tfnh,tftm,tfts,tfrt2,tfgrade;

Ticker tick;

public datamahasiswa(){

form= new Form("data nilai mahasiswa");

tfnpm= new TextField("NPM","",50,1);

tfnama= new TextField("NAMA","",50,1);

tfuas= new TextField("UAS","",50,1);

tfuts= new TextField("UTS","",50,1);

tfnh= new TextField("NILAI KEHADIRAN","",50,1);

(31)

tfrt2= new TextField("NILAI RATA RATA","",50,1);

tfgrade= new TextField("NILAI GRADE","",50,1);

cmdkeluar = new Command("KELUAR",Command.SCREEN,0);

cmdok = new Command("SELESAI",Command.SCREEN,1);

tick = new Ticker("Data Nilai Mahasiswa");

form.append(tfnpm);

form.append(tfnama);

form.append(tfuas);

form.append(tfuts);

form.append(tfnh);

form.append(tftm);

form.append(tfts);

form.append(tfrt2);

form.append(tfgrade);

form.addCommand(cmdok);

form.addCommand(cmdkeluar);

form.setTicker(tick);

}

public void startApp() {

layar = Display.getDisplay(this);

layar.setCurrent(form);

(32)

}

public void pauseApp() {}

public void destroyApp(boolean unconditional) {}

public void commandAction(Command c, Displayable d) {

if (c==cmdkeluar){

notifyDestroyed();//exit.keluar

} else if (c==cmdok) {

double nh,uas,uts,tm,ts,rt2,nama,npm,grade=0;

nh = Integer.parseInt(tfnh.getString());

uts =Integer.parseInt(tfuts.getString());

tm = Integer.parseInt(tftm.getString());

ts = Integer.parseInt(tfts.getString());

uas = Integer.parseInt(tfuas.getString());

rt2 = (0.1*nh)+(0.3*uts)+(0.35*uas)+(0.1*ts)+(0.15*tm);

tfrt2.setString(String.valueOf(rt2));

if (rt2>=80 ){

grade = 'A';

} else if (rt2>=70 && rt2<80){

grade ='B';

(33)

} else if (rt2>=50 && rt2<60){

grade = 'D';

} else

{

grade = 'E';

}

tfgrade.setString(String.valueOf(grade));

tick = new Ticker("NILAI GRADE ANDA : "+String.valueOf(grade));

form.setTicker(tick);

}

}

}

\

2.program 3

/*

* To change this template, choose Tools | Templates

(34)

*/

import javax.microedition.lcdui.*;

import javax.microedition.midlet.MIDlet;

/**

* @author Charles Harianto bancin

*/

public class quiz1 extends MIDlet implements CommandListener {

//Defenisi Variabel

Display layar;

TextField tfalas;

TextField tftinggi;

TextField tfluas;

Form form;

Command cmdExit;

Command cmdok;

Command Proses;

Command AboutMe;

Ticker pesan;

(35)

form = new Form("Aplikasi menghitung luas segitiga");

tfalas = new TextField("alas :","",50,1);

tftinggi = new TextField("Tinggi :","",50,1);

tfluas = new TextField("luas :","",50,1);

cmdExit = new Command("Keluar",null,Command.EXIT,0);

Proses = new Command("Proses",null,Command.SCREEN,1);

AboutMe = new Command("Tentang saya : ",null,Command.SCREEN,2);

pesan = new Ticker("**Aplikasi menghitung Luas segitiga**");

(36)

layar.setCurrent(form);

form.setCommandListener(this);

}

public void pauseApp() {}

public void destroyApp(boolean unconditional) {}

public void commandAction(Command c, Displayable d) {

if (c==cmdExit){

notifyDestroyed(); //Exit

}

else if (c==Proses){

hluas();

}

(37)

double vluas, va,vt;

va =Integer.parseInt(tfalas.getString());

vt =Integer.parseInt(tftinggi.getString());

vluas = (va * vt)/ 2;

tfluas.setString(String.valueOf(vluas));

}

}

Program 3 /*

* To change this template, choose Tools | Templates * and open the template in the editor.

*/

importjavax.microedition.midlet.*; importjavax.microedition.lcdui.*;

(38)

* @author User */

public class MidletaAritmatika extends MIDlet implements CommandListener { Display layar;

Form form;

Command cmdExit,cmdTambah,cmdKurang,cmdKali,cmdBagi; TextField tfBil1,tfBil2,tfHasil;

Ticker pesan;

publicMidletaAritmatika () {

form = new Form("Kalkulator Mini");

tfBil1= new TextField("Bilangan Pertama","",50,1); tfBil2= new TextField("Bilangan Kedua","",50,1); tfHasil= new TextField("Hasilnya adalah","",50,1);

pesan= new Ticker("Kalkulator Mini DibuatOleh: Veronika, Okt 2014"); form.setTicker(pesan);

public void destroyApp(boolean unconditional) {}

public void commandAction(Command c, Displayable d) { if (c==cmdExit){ notifyDestroyed();}

(39)
(40)

BAB IV

PENUTUP

4.1 Kesimpulan

1) Java dikenal sebagai bahasa pemrograman yang bersifat strongly, yang berarti

diharuskan mendeklarasikan tipe data dari semua variable yang apabila lupa

atau salah dalam mengikuti aturan pendeklarasian variable, maka akan terjadi

error pada saat proses kompilasi.

2) Tipe data yang terdapat pada bahasa pemrograman Java pada umumnya tidak

jauh berbeda dengan bahasa pemrograman lain seperti C, C++, Pascal, Basic,

dan lainnya, yakni terdiri dari integer, floating point, char, dan Boolean

3) Program kulkulator sederhana menggunakan java netbeans ini mungkin

tampilannya kurang bagus dikarenakan keterbatasan kemampuan penulis.

4.2SARAN

1) Bagi pengembang aplikasi ini penulis menyarankan pada penyajian

hasilkalkulasi mendukung teknologi accelerometer agar tampilan lebih

flexible dan

(41)

2) Tambahkan juga beberapa fitur yang mungkin diperlukan dalam

proseskalkulasi, seperti metode subnetting.

3) Tambahkan fasilitas seperti hasil kalkulasi dapat disimpan ke dalam

memoritelepon dalam format jpg ataupun tabel.2

4) Dikarenakan cukup rumitnya bahasa pemrograman Java dan semakin

banyaknya pesaing yang berkompetisi di bidang pemrograman Java, maka

Penulis menyarankan kepada pembaca (khususnya pemula), untuk sejak dini

Gambar

gambar di bawah ini :

Referensi

Dokumen terkait

To estimate the longer-run program impacts against the benchmark of no program with four or five and a half years difference in program exposure, we compare the original

[r]

Untuk mengkaji perbedaan hasil belajar fisika siswa menggunakan model pembelajaran Concept Attainment disertai teknik Concept Mapping dengan menggunakan

Hasil analisis data dalam penelitian ini menunjukkan bahwa terdapat pengaruh yang signifikan antara literasi ekomomi dan pengalaman prakerin terhadap minat

Machining time secara mandiri tidaklah cukup digunakan sebagai penetapan waktu acuan standar penyelesaian pembentukan benda kerja, karena di dalam proses pembentukan

Hal ini dikarenakan guru kurang jelas dalam menyampaikan langkah-langkah strategi pembelajaran Everyone Is A Teacher Here yang akan dilaksanakan, sehingga ketika

Dari hasil pengujian didapatkan nilai laju cacahan pada saat tanpa kolimator lebih tinggi dibandingkan saat menggunakan kolimator HEGP, serta didapatkan bahwa detektor kamera

Pada metode penelitian ini terdapat 3 (tiga) perlakuan antara lain: perlakuan 1 (Limbah laundry saja (kontrol)), perlakuan 2 (Limbah laundry dan 3 tumbuhan