Anda di halaman 1dari 23

Penjelasan Tentang Pemrograman Mobile

1. Pengertian Mobile Programing

Mobile adalah perangkat yang bergerak, misalnya telepon seluler atau komputer bergerak
yang digunakan untuk mengakses jasa jaringan. Jadi mobile programming adalah program yg di
gunakan utk perangkat mobile.

contohnya mobile programing untuk ponsel :

1. J2ME , ini rasanya paling umum dan paling banyak HP yang support teknologi ini, blackberry
pun masih menggunakan J2ME dengan tambahan API

2. C++ dalam symbian framework, ini khusus untuk HP dengan OS symbian


3. Flash Lite, game flash di mobile. Playernya sendiri setau saya baru ada di nokia NSeries

4. Objective C (mirip C tapi beda struktur bahasa program ) , ini untuk iphone,dan hanya bisa
didevelop via OS Macintosh

5. C++ dalam Brew framework, ini untuk HP CDMA

6. C# .NET, untuk HP dengan OS Windows mobile


7. Javafx mobile, masih dikit yang support, mgkn baru HP Android

Perangkat Mobile

Perangkat mobile memiliki banyak jenis dalam hal ukuran, desain, dan layout tetapi
mereka memiliki kesamaan karakteristik yang sangat berbeda dari system desktop.

a. Ukuran Yang Kecil

Perangkat mobile memiliki ukuran yang kecil. Konsumen menginginkan perangkat yang
terkecil untuk kenyamanan dan mobilitas mereka.

b. Memory yang terbatas

Perangkat mobile juga memiliki memory yang kecil, yaitu primary (RAM) dan
secondary(disk). Pembatasan ini adalah salah satu faktor yang mempengaruhi penulisan program
untuk berbagai jenis dari perangkat ini. Dengan pembatasan jumlah dari memory, pertimbangan -
pertimbangan khusus harus diambil untuk memelihara pemakaian dari sumber daya yang mahal
ini.

c. Daya proses yang terbatas

Sistem mobile tidaklah setangguh rekan mereka yaitu desktop. Ukuran, teknologi dan biaya
adalah beberapa faktor yang mempengaruhi status dari sumber daya ini. Seperti hardisk dan
RAM, Anda dapat menemukan mereka dalam ukuran yang pas dengan sebuah kemasan kecil.

d. Mengkonsumsi daya yang rendah

Perangkat mobile menghabiskan sedikit daya dibandingkan dengan mesin desktop. Perangkat
ini harus menghemat daya karena mereka berjalan pada keadaan dimana daya yang disediakan
dibatasi oelh baterai - baterai.

e. Kuat dan dapat diandalkan

karena perangkat mobile selalu dibawa kemana saja, mereka harus cukup kuat untuk
menghadapi benturan - benturan, gerakan, dan sesekali tetesan air.

f. konektivitas yang terbatas

perangkat mobile memiliki bandwith rendah, beberapa dari mereka bahkan tidak tersambung.
Kebanyakan dari mereka menggunakan koneksi wireless

g. Masa hidup yang pendek

Perangkat - perangkat konsumen ini menyala dalam hitungan detik kebanyakan dari mereka
selalu menyala. Coba ambil kasus sebuah handphone, mereka booting dalam hitungan detik dan
kebanyakan orang tidak mematikan handphone mereka bahkan ketika malam hari. PDA akan
menyala jika anda menekan tombol power mereka.

Macam macam Mobile Divice

Mobile Computers :
1. Notebook PC
2. Ultra-Mobile PC
3. Handheld PC
4. Personal Digital Assistant / enterprice Digital Assistant
5. Graphing Calculator
6. Pocket Computer

Handheld Game Console :

1. Nintendo DS (NDS)
2. Gane Boy, Game Boy Color
3. Game Boy Anvance
4. Sega Game Gear
5. Pokemon Mini
6. NeoGeo Pocket, NeoGeo Color
7. Atari Lynx
8. Pandora
9. GP2x / GP32
10. Gizmondo
11. PlayStasion Portable (PSP)
12. N-Gage

Media Recorders :

1. Digital Still Camera (DSC)


2. Digital Video Camera (DVD atau Digital Camcorder)
3. Digital Audio Recorder

Media Players / Displayers :

1. Portable Media Player


2. E-Book Reader

Communication Devices :

1. Mobile Phone
2. Cardless Telephone
3. Pager

Penggunaan

Perangkat genggam telah menjadi ruggedized untuk digunakan dalam manajemen.


Penggunaan termasuk digitalisasi catatan, mengirim dan menerima faktur , manajemen asset,
tanda tangan rekaman, bagian pengelola, dan barcode scanning.

Perkembangan terkini ialah dalam kolaborasi seluler system menggunakan perangakan


genggam yang menghubungkan video, audio, dan di layar kemampuan gambar untuk
memungkinkan multi-partai konferensi secar real-time, indenpenden dari lokasi.

Komputer genggam tersedian berbagai faktor bentuk ,termasuk smartphone di ujung


rendah, handheld PDA, Ultra-Mobile PC dan Tablet PC. Laptop pada umumnya di anggap
sebagai perangkat mobile karena mereka tidak cikup kecil untuk terus dalam tangan seseorang.

Pengguna dapat menonton teloivisi melalui internet dan perngakat mobile. Handphone
penerima televise sudah ada dari sejak 1960-an, dan pada abad ke-21 penyedia ponsel mulai
membuat televise tersedia di telepon selular.
Web operator situs mengembangkan perngakat pendetekdi genggam perngakat lunak untuk
memastikan bahwa versi yang benar dari situs web yang dikirim ke perangkat mobile yang
benar.

Mobile programming adalah pemrograman aplikasi mobile bisa menggunakan J2ME,


mobile merupakan aplikasi yang bisa jalan di handphone seperti PDA atau handphone lainnya
yang berbasis JAVA.

Pemrograman untuk mobile device mempunyai aturan tersendiri. Pemrograman dalam


J2ME (Java 2 Micro Edition) sudah popular dalam hal pemrograman untuk perlatan dalam
ukuran kecil. Ada pula BREW ( Binary Runtime Environment for Wireless) yang dibuat oleh
Qualcomm untuk mobile phones. Awalnya BREW dikembangakan untuk CDMA, dapat
mengunduh (mendownload) dan dapat menjalankan program- program kecil untuk memaikan
games, mengirim sms, foto dan lain-lain.

Keterbatasan yang sangat umum dalam bahasa pemrograman untuk peraltan mobile
adalah kendala dalan segala dalam hal sumber daya, seperti ukuran layar, memori, CPU,
penyimpanan dan cara menginput data. Perbedaan tampilan juga disebabkan adanya perbedaan
hardware dan API yang di gunakan.
PEMROGRAMAN MOBILE
Posted by : Agus Prasetya Selasa, 12 Agustus 2014

Pemrograman Mobile adalah pemrograman yang ditujukan untuk pembuatan aplikasi


diperangkat mobile. Banyak sekali platform mobile yang dapat kita coba, diantaranya iOS, BB
RIM, J2ME, QT Mobile, Symbian, dan Android. Salah satunya yang sedang booming adalah
Android Mobile. Android merupakan sistem operasi berbasis linux yang bahasa pemrograman
aplikasinya dapat kita buat menggunakan java.

Platform adalah arsitektur hardware/fondasi/standar bagaimana sebuah sistem


dimana aplikasi/program dapat berjalan; atau bisa juga dikatakan Platform adalah
dasar dari teknologi dimana teknologi yang lain atau proses-proses dibuat. Sebuah
Platform terdiri dari sistem operasi yaitu program sistem koordinasi komputer yang
memberikan perintah-perintah kepada prosesor dan hardware untuk melakukan
operasi-operasi logis dan mengatur pergerakan data di komputer. Banyak orang
beranggapan bahwa Platform dan Sistem Operasi adalah sama, namun pada
kenyataanya tidak. Platform merupakan dasar atau tempat dimana sistem operasi
bekerja, tanpa platform sistem operasi tidak akan bisa berjalan. Contoh-contoh
platform :
PC, MAC, PDA/Smartphone, Xbox, PS3, Nintendo Wii, dll.

JAVA
Java adalah bahasa pemrograman tingkat tinggi yang berorientasi objek dan
program java tersusun dari bagian yang disebut kelas. Kelas terdiri atas metode-
metode yang melakukan pekerjaan dan mengembalikan informasi setelah
melakukan tugasnya. Para pemrogram Java banyak mengambil keuntungan dari
kumpulan kelas di pustaka kelas Java, yang disebut dengan Java Application
Programming Interface (API). Kelas-kelas ini diorganisasikan menjadi sekelompok
yang disebut paket(package). Java API telah menyediakan fungsionalitas yang
memadai untuk menciptakan applet dan aplikasi canggih. Jadi ada dua hal yang
harus dipelajari dalam Java, yaitu mempelajari bahasa Java dan bagaimana
mempergunakan kelas pada Java API. Kelas merupakan satu-satunya cara
menyatakan bagian eksekusi program, tidak ada cara lain. Pada Java program javac
untuk mengkompilasi file kode sumber Java menjadi kelas-kelas bytecode. File kode
sumber mempunyai ekstensi *.java. Kompilator javac menghasilkan
file bytecode kelas dengan ekstensi *.class. Interpreter merupakan modul utama
sistem Java yang digunakan aplikasi Java dan menjalankan program bytecode Java.
Beberapa keunggulan java yaitu java merupakan bahasa yang sederhana. Java
dirancang agar mudah dipelajari dan digunakan secara efektif. Java tidak
menyediakan fitur-fitur rumit bahasa pemrograman tingkat tinggi, serta banyak
pekerjaan pemrograman yang mulanya harus dilakukan manual, sekarang
digantikan dikerjakan Java secara otomatis seperti dealokasi memori. Bagi
pemrogram yang sudah mengenal bahasa C++ akan cepat belajar susunan bahasa
Java namun harus waspada karena mungkin Java mengambil arah (semantiks) yang
berbeda dibanding C++.
Java merupakan bahasa berorientasi objek (OOP) yaitu cara ampuh dalam
pengorganisasian dan pengembangan perangkat lunak. Pada OOP, program
komputer sebagai kelompok objek yang saling berinteraksi. Deskripsi ringkas OOP
adalah mengorganisasikan program sebagai kumpulan komponen, disebut objek.
Objek-objek ini ada secara independen, mempunyai aturan-aturan berkomunikasi
dengan objek lain dan untuk memerintahkan objek lain guna meminta informasi
tertentu atau meminta objek lain mengerjakan sesuatu. Kelas bertindak sebagai
modul sekaligus tipe. Sebagai tipe maka pada saat jalan, program menciptakan
objek-objek yang merupakan instan-instan kelas. Kelas dapat mewarisi kelas lain.
Java tidak mengijinkan pewarisan jamak namun menyelesaikan kebutuhan
pewarisan jamak dengan fasilitas antarmuka yang lebih elegan.
Seluruh objek diprogram harus dideklarasikan lebih dulu sebelum digunakan. Ini
merupakan keunggulan Java yaitu Statically Typed. Pemaksaan ini memungkinkan
kompilator Java menentukan dan melaporkan terjadinya pertentangan
(ketidakkompatibelan) tipe yang merupakan barikade awal untuk mencegah
kesalahan yang tidak perlu (seperti mengurangkan variabel bertipe integer dengan
variabel bertipe string). Pencegahan sedini mungkin diharapkan menghasilkan
program yang bersih. Kebaikan lain fitur ini adalah kode program lebih dapat
dioptimasi untuk menghasilkan program berkinerja tinggi.
Java menggunakan model pengamanan tiga lapis (three-layer security model) untuk
melindungi sistem dari untrusted Java code. Pertama, bytecode
verifier membaca bytecode sebelum dijalankan dan menjamin bytecode memenuhi
aturan-aturan dasar bahasa Java. Kedua, class loader menangani pemuatan kelas
Java ke runtime interpreter. Ketiga, manajer keamanan menangani keamanan
tingkat aplikasi dengan mengendalikan apakah program berhak mengakses sumber
daya seperti sistem file, port jaringan, proses eksternal dan sistem window.
Platform independence adalah kemampuan program bekerja di sistem operasi yang
berbeda. Bahasa Java merupakan bahasa yang secara sempurna tidak bergantung
platform. Tipe variabel Java mempunyai ukuran sama di semua platform sehingga
variabel bertipe integer berukuran sama tidak peduli dimana program java
dikompilasi. Begitu telah tercipta file .class dengan menggunakan kompilator Java di
platform manapun, maka file .class tersebut dapat dijalankan di platform manapun.
Jadi dimanapun dibuat, dimanapun dapat dijalankan. Slogan ini biasa diringkas
sebagaiWrite Once, Run Anywhere (WORA).
Java termasuk bahasa Multithreading. Thread adalah untuk menyatakan program
komputer melakukan lebih dari satu tugas di satu waktu yang sama. Java
menyediakan kelas untuk menulis program multithreaded, program mempunyai
lebih dari satu thread eksekusi pada saat yang sama sehingga memungkinkan
program menangani beberapa tugas secara konkuren.
Program Java melakukan garbage collection yang berarti program tidak perlu
menghapus sendiri objek-objek yang tidak digunakan lagi. Fasilitas ini mengurangi
beban pengelolaan memori oleh pemrogram dan mengurangi atau mengeliminasi
sumber kesalahan terbesar yang terdapat di bahasa yang memungkinkan alokasi
dinamis.
Java mempunyai mekanisme exception-handling yang ampuh. Exception-
handling menyediakan cara untuk memisahkan antara bagian penanganan
kesalahan dengan bagian kode normal sehingga menuntun ke struktur kode
program yang lebih bersih dan menjadikan aplikasi lebih tegar. Ketika kesalahan
yang serius ditemukan, program Java menciptakan exception. Exception dapat
ditangkap dan dikelola program tanpa resiko membuat sistem menjadi turun.
Program Java mendukung native method yaitu fungsi ditulis di bahasa lain, biasanya
C/C++. Dukungan native method memungkinkan pemrogram menulis fungsi yang
dapat dieksekusi lebih cepat dibanding fungsi ekivalen di java. Native
method secara dinamis akan di-link ke program java, yaitu diasosiasikan dengan
program saat berjalan.
Selain itu keuntungan menggunakan bahasa pemrograman Java antara lain
memori pada Java secara otomatis dilengkapi garbage collector yang berfungsi
mendealokasi memori yang tidak diperlukan. Tidak ada lagi upaya yang dilakukan
pemrogram untuk melakukan dispose(). Kita tidak lagi dibebani urusan korupsi
memori. Java menerapkan array sebenarnya, menghilangkan keperluan aritmatika
pointer yang berbahaya dan mudah menjadi salah. Menghilangkan pewarisan
jamak (multiple inheritance) diganti fasilitas antarmuka. Dan mudah dijalankan
diberbagai platform.
Grafical User Interface (GUI) adalah salah satu kemampuan Java dalam mendukung
dan manajemen antarmuka berbasis grafis. Tampilan grafis yang akan ditampilkan
terhubung dengan program serta tempat penyimpanan data. Elemen dasar di Java
untuk penciptan tampilan berbasis grafis adalah dua paket yaitu AWT dan
Swing. Abstract Windowing Toolkit (AWT), atau disebut juga Another Windowing
Toolkit, adalah pustaka windowing bertujuan umum dan multiplatform serta
menyediakan sejumlah kelas untuk membuat GUI di Java. Dengan AWT, dapat
membuat window, menggambar, manipulasi gambar, dan komponen seperti Button,
Scrollbar, Checkbox, TextField, dan menu pull-down.
Penggunaan komponen AWT ditandai dengan adanya
instruksi : import java.awt.*; Swing merupakan perbaikan kelemahan di AWT.
Banyak kelas swing menyediakan komponen alternatif terhadap AWT. Contohnya
kelas JButton swing menyediakan fungsionalitas lebih banyak dibanding
kelas Button. Selain itu komponen swing umumnya diawali dengan huruf J,
misalnya JButton, JTextField, JFrame, JLabel, JTextArea, JPanel, dan sebagainya.
Teknologi swing menggunakan dan memperluas gagasan-gagasan AWT. Sementara,
penggunaan komponen Swing ditandai dengan adanya
instruksi : importjavax.swing.*;
Beberapa perbedaan AWT dan Swing, AWT merupakan
komponen heavyweight (kelas berat) sedangkan Swing lightweight (kelas ringan).
Swing memiliki lebih banyak komponen. Fasilitas SwingLook and Feel : Metal,
Windows, Motif. Komponen Swing berdasar model-view, yaitu suatu cara
pengembangan komponen dengan pemisahan penyimpanan dan penanganan data
dari representasi visual data.

Bahasa pemrograman Java merupakan salah satu bahasa pemrograman yang


umum digunakan untuk mengembangkan aplikasi basis data yang dibuat
menggunakan MySQL.

Pemrograman Mobile
23.09 No comments

Mobile Programming

1. Pengertian Mobile Programming


Mobile Programing adalah pemograman aplikasi mobile bisa menggunakan J2ME, mobile
merupakan aplikasi yang bisa jalan di handphone seperti PDA atau yang handphone yang
berbasis java.

2. Perangkat Mobile
a. Ukuran Yang Kecil Perangkat mobile memiliki ukuran yang kecil. Konsumen menginginkan
perangkat yang terkecil untuk kenyamanan dan mobilitas mereka.

b. Memory yang terbatas


Perangkat mobile juga memiliki memory yang kecil, yaitu primary (RAM) dan secondary(disk).
Pembatasan ini adalah salah satu faktor yang mempengaruhi penulisan program untuk berbagai
jenis dari perangkat ini. Dengan pembatasan jumlah dari memory, pertimbangan -
pertimbangan khusus harus diambil untuk memelihara pemakaian dari sumber daya yang
mahal ini.

c. Daya proses yang terbatas


Sistem mobile tidaklah setangguh rekan mereka yaitu desktop. Ukuran, teknologi dan biaya
adalah beberapa faktor yang mempengaruhi status dari sumber daya ini. Seperti hardisk dan
RAM, Anda dapat menemukan mereka dalam ukuran yang pas dengan sebuah kemasan kecil.

d. Mengkonsumsi daya yang rendah


Perangkat mobile menghabiskan sedikit daya dibandingkan dengan mesin desktop. Perangkat
ini harus menghemat daya karena mereka berjalan pada keadaan dimana daya yang disediakan
dibatasi oelh baterai - baterai.

e. Kuat dan dapat diandalkan


karena perangkat mobile selalu dibawa kemana saja, mereka harus cukup kuat untuk
menghadapi benturan - benturan, gerakan, dan sesekali tetesan air.

f. konektivitas yang terbatas


perangkat mobile memiliki bandwith rendah, beberapa dari mereka bahkan tidak tersambung.
Kebanyakan dari mereka menggunakan koneksi wireless

g. Masa hidup yang pendek


Perangkat - perangkat konsumen ini menyala dalam hitungan detik kebanyakan dari mereka
selalu menyala. Coba ambil kasus sebuah handphone, mereka booting dalam hitungan detik dan
kebanyakan orang tidak mematikan handphone mereka bahkan ketika malam hari. PDA akan
menyala jika anda menekan tombol power mereka.

J2ME

1. Pengertian J2ME

J2ME (Java 2 Micro Edition) merupakan subset dari J2SE yang ditujukan untuk implementasi
pada peralatan embeded system dan handheld yang tidak mampu mendukung secara penuh
implementasi menggunakan J2SE.

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. 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.

2. 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.

3. 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), imp-
lementasi 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.

4. 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().

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://tahuajah.blogspot.com/2014/08/mobile-programming.html

Pemrograman Mobile

Pemrograman Mobile adalah pemrograman yang ditujukan untuk


pembuatan aplikasi diperangkat mobile yang dapat kita buat dengan
menggunakan Java. Keterbatasan yang sangat umum dalam bahasa
pemrograman untuk peralatan mobile adalah kendala dalan segala dalam
hal sumber daya, seperti ukuran layar, memori, CPU, penyimpanan dan cara
menginput data. Perbedaan tampilan juga disebabkan adanya perbedaan
hardware dan API yang di gunakan. Berikut macam-macam Mobile
Programming untuk ponsel :
- J2ME
- C++
- Objective C
- C#.
- Javafx
- PHP

Java Mobile

Java adalah sebuah bahasa pemrograman pada komputer sama seperti


pendahulunya c++.Bahasa pemrograman ini dikembangkan pada tahun
1995 oleh Sun microsystems. Awalnya java diciptakan pada tahun 1991 oleh
Patrick Naughton, Mike Sheridan, James Gosling dan Bill Joy beserta
programer dari Sun Microsystems. Uniknya nama java diambil dari nama
pulau jawa ( bahasa inggris dari jawa ) karena James Gosling " Bapak Java "
menyukai kopi tubruk yang berasal dari pulau Jawa . Jadi kita perlu
berbangga menjadi warga negara Indonesia. Java sendiri merupakan bahasa
pemrograman yang berbasis objek,maksudnya adalah semua aspek yang
terdapat pada java adalah objek sehingga sangat memudahkan untuk
mendesain, membuat dan mengembangkan program java dengan cepat.

Sedangkan dalam artian lain Java adalah bahasa pemrograman yang


multi platform dan multi device. Sekali anda menuliskan sebuah program
dengan menggunakan Java, anda dapat menjalankannya hampir di semua
komputer dan perangkat lain yang support Java, dengan sedikit perubahan
atau tanpa perubahan sama sekali dalam kodenya. Aplikasi dengan berbasis
Java ini dikompulasikan ke dalam p-code dan bisa dijalankan dengan Java
Virtual Machine. Fungsionalitas dari Java ini dapat berjalan dengan platform
sistem operasi yang berbeda karena sifatnya yang umum dan non-spesifik.
Slogan Java adalah Tulis sekali, jalankan di manapun. Sekarang ini Java
menjadi sebuah bahasa pemrograman yang populer dan dimanfaatkan
secara luas untuk pengembangan perangkat lunak. Kebanyakan perangkat
lunak yang menggunakan java adalah ponsel feature dan ponsel pintar atau
smartphone.

J2ME

J2ME adalah lingkungan pengembangan yang didesain untuk


meletakkan perangkat lunak Java pada barang elektonik beserta perangkat
pendukungnya. J2ME membawa Java kedunia informasi, komunikasi, dan
perangkat komputasi selain perangkat komputer desktop yang biasanya
lebih kecil dibandingkan perangkat komputer desktop. J2ME biasa digunakan
pada ponsel, peger, PDA dan sejenisnya.(M. Salahuddin, Rosa A.S, 2006:5).

Menurut (Budi Raharjo 2007:3) J2ME merupakana kombinasi yang


terbentuk antara sekumpulan interface Java yang sering disebut Java API
(application Programming Interface) dengan JVM (Java Virtual Machine) yang
didisain khusus untuk alat, yaitu JVM dengan ruang yang terbatas. Kombinasi
tersebut kemudian digunakan untuk melakukan pembuatan aplikasi-aplikasi
yang dapat berjalan diatas alat (dalam hal ini mobile device).

J2ME merupakan sebuah kombinasi yang terbentuk antara sekumpulan


interface Java yang sering disebut dengan Java API dengan JVM (Java Virtual
Machine) yang didesain khusus untuk alat yang memiliki ruang yang
terbatas dan berukurang kecil. J2ME di desain khusus untuk perangkat-
perangkat komputasi yang berukuran kecil terutama wireless seperti
handphone, PDA, smartphone, embedded device dll, J2ME memiliki
konfigurasi dan profile yang mendefinisikan kelas Java API yang dapat
digunakan oleh aplikasi. dengan menyediakan platform standar untuk
pengembangan perangkat wireless, J2ME terdiri atas perangkat-perangkat
komponen sebagai berikut:

o Java Virtual Machine (JVM), komponen untuk menjalankan program-program


Java pada emulator atau handheld device.

o Java Application Programming Interface (API), merupakan kumpulan library


untuk menjalankan dan mengembangkan program Java pada Handheld Devices.

o Tools lain untuk mengembangkan Java, semacam emulator Java Phone, Emulator
Nokia, Emulator Siemens dan Emulator Motorola.

C++

Menurut wikipedia C++ adalah bahasa pemrograman komputer yang


di buat oleh (Bjarne Stroustrup) merupakan perkembangan dari bahasa C
dikembangkan di Bell Labs (Dennis Ritchie) pada awal tahun 1970-an,
Bahasa itu diturunkan dari bahasa sebelumnya, yaitu B, Pada awalnya,
bahasa tersebut dirancang sebagai bahasa pemrograman yang dijalankan
pada sistem Unix, Pada perkembangannya, versi ANSI (American National
Standart Institute) Bahasa pemrograman C menjadi versi dominan, Meskipun
versi tersebut sekarang jarang dipakai dalam pengembangan sistem dan
jaringan maupun untuk sistem embedded, Bjarne Stroustrup pada Bel labs
pertama kali mengembangkan C++ pada awal 1980-an. Untuk mendukung
fitur-fitur pada C++, dibangun efisiensi dan sistem support untuk
pemrograman tingkat rendah (low level coding). Pada C++ ditambahkan
konsep-konsep baru seperti class dengan sifat-sifatnya seperti inheritance
dan overloading. Salah satu perbedaan yang paling mendasar dengan
bahasa C adalah dukungan terhadap konsep pemrograman berorientasi
objek (Object Oriented Programming)

Objective-C
Objective-C menurut adalah bahasa pemrograman native utama yang
dipakai untuk membuat aplikasi Mac. Bahasa ini diextend dari bahasa C yang
menggunakan style dari Smalltalk. Semua syntax untuk operasi non object
oriented hampir sama dengan C, sedangkan untuk operasi object oriented
mengimplementasi dari style Smalltalk. Jadi, sebaiknya anda mempunyai
dasar yang cukup dalam pemrograman bahasa C.

C#

Menurut wikipedia C# merupakan sebuah bahasa pemrograman yang


berorientasi objek yang dikembangkan oleh Microsoft sebagai bagian dari
inisiatif kerangka .NET Framework. Bahasa pemrograman ini dibuat
berbasiskan bahasa C++ yang telah dipengaruhi oleh aspek-aspek ataupun
fitur bahasa yang terdapat pada bahasa-bahasa pemrograman lainnya
seperti Java, Delphi, Visual Basic, dan lain-lain) dengan beberapa
penyederhanaan. Menurut standar ECMA-334 C# Language Specification,
nama C# terdiri atas sebuah huruf Latin C (U+0043) yang diikuti oleh tanda
pagar yang menandakan angka # (U+0023). Tanda pagar # yang digunakan
memang bukan tanda kres dalam seni musik, dan tanda pagar # tersebut
digunakan karena karakter kres dalam seni musik tidak terdapat di
dalam keyboard standar.

Standar European Computer Manufacturer Association (ECMA)


mendaftarkan beberapa tujuan desain dari bahasa pemrograman C#,
sebagai berikut:

Bahasa pemrograman C# dibuat sebagai bahasa pemrograman yang bersifat bahasa


pemrograman general-purpose (untuk tujuan jamak), berorientasi objek, modern, dan
sederhana.

Bahasa pemrograman C# ditujukan untuk digunakan dalam mengembangkan komponen


perangkat lunak yang mampu mengambil keuntungan dari lingkungan terdistribusi.
Portabilitas programmer sangatlah penting, khususnya bagi programmer yang telah lama
menggunakan bahasa pemrograman C dan C++.

Dukungan untuk internasionalisasi (multi-language) juga sangat penting.

C# ditujukan agar cocok digunakan untuk menulis program aplikasi baik dalam sistem
klien-server (hosted system) maupun sistem embedded (embedded system), mulai dari perangkat
lunak yang sangat besar yang menggunakan sistem operasi yang canggih hingga kepada
perangkat lunak yang sangat kecil yang memiliki fungsi-fungsi terdedikasi.

Meskipun aplikasi C# ditujukan agar bersifat 'ekonomis' dalam hal


kebutuhan pemrosesan dan memori komputer, bahasa C# tidak ditujukan
untuk bersaing secara langsung dengan kinerja dan ukuran perangkat lunak
yang dibuat dengan menggunakan bahasa pemrograman C dan bahasa
rakitan.

Bahasa C# harus mencakup pengecekan jenis (type checking) yang


kuat, pengecekan larik (array), pendeteksian terhadap percobaan terhadap
penggunaan Variabel-variabel yang belum diinisialisasikan, portabilitas kode
sumber, dan pengumpulan sampah (garbage collection) secara otomatis.

Javafx

Menurut JavaFX adalah bahasa pemrograman modern yang


memungkinkan untuk membuat aplikasi mencari dengan antarmuka
pengguna grafis yang canggih. JavaFX adalah anggota baru dari keluarga
besar Java, JavaFx merupakan sebuah tambahan baru untuk platform Java
yang menjanjikan pemakaian konsisten dari desktop ke alat-alat portabel.
JavaFX ini memungkinkan RIA (Rich Internet Application) untuk tampil di
layar mobile device, desktop, televisi dan sebagainya.
JavaFX diintegrasikan sepenuhnya dengan Java Runtime Environment
(JRE). JavaFX aplikasi akan dijalankan pada desktop dan browser yang
menjalankan dan JRE di atas ponsel menjalankan JavaME. JavaFX didasarkan
pada konsep sebuah common profil yang ditujukan ke seluruh perangkat
span didukung oleh JavaFX. Pendekatan ini memungkinkan para
pengembang untuk menggunakan model pemrograman Commonmobile dan
berbagi banyak kode, grafis dan konten aset antara desktop dan versi
mobile.

Maka bisa disimpulkan bahwa JavaFX ini memungkinkan RIA [Rich


Internet Application]untuk tampil di layar mobile device, desktop, televisi
dsb. JavaFX mampu berjalan pada berbagai sistem operasi mobile, termasuk
Symbian OS, Windows Mobile, dan kepemilikan real-time sistem operasi.

PHP

PHP menurut adalah bahasa pemograman web yang digunakan untuk


membuat halaman web dinamis (wikipedia). Walaupun pada
perkembangannya, PHP saat ini juga dapat digunakan untuk membuat
aplikasi selain web, seperti aplikasi desktop. PHP pertama kali di
kembangkan pada tahun 1995 oleh Rasmus Lerdorf, namun sekarang di
ambil oleh oleh The PHP Group. Pada awalny PHP adalah singkatan
dari Personal Home Page, namun dalam perkembangannya, di ubah
menjadiPHP: Hypertext Preprocessor, sebuah
kepanjangan rekursif. PHP dirilis dalam lisensi PHP License, yang sedikit
berbeda dengan lisensi GNU General Public License (GPL) yang biasa
digunakan untuk proyek Open Source. Namun penggunaan PHP tetap tidak
dikenakan biaya (gratis). Kemudahan dan kepopuleran PHP sudah menjadi
standar bagi programmer web di seluruh dunia. Dan menurut
wikipedia, PHP telah terinstall pada lebih dari 244 juga website dan 2,1 web
server hingga saat ini.
Sedangkan menurut wikipedia adalah bahasa skrip yang dapat
ditanamkan atau disisipkan ke dalam HTML. PHP banyak dipakai untuk
memrogram situs web dinamis. PHP dapat digunakan untuk membangun
sebuah CMS.

Connected Limeted Device Configuration (CLDC )

CLDC atau Connected Limited Device Cofiguration adalah perangkat


dasar dari J2ME, spesifikasi dasar yang berupa library atau API yang
diimplementasikan pada J2ME, seperti yang digunakan pada telepon selular,
pager, dan PDA. Perangkat tsb dibatasi dengan keterbatasan memory,
sumber daya, dan kemampuan memproses. Spesifikasi CLDC pada J2ME
adalah spesifikasi minimal pada package, class, dan sebagian fungsi Java
Virtual Machine yang dikurangi agar dpat diimplementasikan dengan
keterbatasan sumber daya pada alat tersebut, JVM yang digunakan adalah
KVM (Kilobyte Virtual Machine).

Mobile Information Device Profile (MIDP)

MIDP atau Mobile Information Device Profile adalah spesifikasi untuk


sebuah profil J2ME. MIDP memilik lapisan diatas CLDC, API tambahan untuk
daur hidup aplikasi, antar muka, jaringan, dan pemyimpanan persisten. Pada
saat ini terdapat MIDP 1.0 dan MIDP 2.0. Fitur tambahan pada MIDP 2.0
dibandingkan MIDP 1.0 adalah API untuk multimedia. Pada MIDP 2.0 terdapat
dukunagan memainkan tone, tone sequence, dan file WAV walaupun tanpa
adanya Mobile Media API (MMAPI).

MIDlet
MIDlet adalah aplikasi yang ditulis untuk MIDP. Aplikasi MIDlet adalah
bagian dari class javax.microedition.midlet.MIDlet yang didefinisikan pada
MIDP. MIDlet berupa sebuah class abstrak yang merupakan subclass dari
bentuk dasar aplikasi sehingga antarmuka antara aplikasi J2ME dan aplikasi
manajemen pada perangkat bisa terbentuk.

Daur Hidup MIDlet

MIDlet terdiri dari beberapa method yang harus ada, yaitu contructor(),
protected void startApp() throws MIDletStateChangeException, protected
void pauseApp(), protected void destroyApp (Boolean unconditional) throws
MIDletStateChangeException.

Ketika MIDlet dijalankan maka akan diinisialisasi dengan kondisi pause


dan dijalankan pauseApp(), kondisi berikutnya adalah fungsi MIDlet
dijalankan, yaitu pada startApp(). Metode yang ada tersebut
diimplementasikan sebagai protected, hal ini dimaksudkan agar MIDlet lain
tidak dapat memanggil method tersebut. Pada saat pemakai keluar dari
MIDlet, maka method destroyApp() akan dijalankan sebelum MIDlet benar-
benar tidak berjalan lagi. Method notifyDestroyed() akan dipanggil sebelum
MIDlet benar-benar tidak berjalan lagi, DestroyApp() akan memanggil
notifyDestroyed(), dan notifyDestroyed() akan memberi tahu platform untuk
menterminasi MIDlet dan membersihkan semua sumber daya yang mengacu
pada MIDlet

Sumber
http://fatkhurrizq.blogpsot.com/
http://absurdinfo.blogspot.com/

Anda mungkin juga menyukai