6 BAB 2 LANDASAN TEORI 2.1 Short Message Service (SMS) Short

advertisement
BAB 2
LANDASAN TEORI
2.1
Short Message Service (SMS)
Short Message Service (SMS) adalah salah satu tipe Instant Messaging (IM)
yang memungkinkan user untuk bertukar pesan singkat kapanpun, walaupun user
sedang melakukan panggilan data/suara. Kata "short" yang berarti singkat pada SMS
merujuk pada ukuran maksimum dari suatu pesan teks yaitu 160 karakter (huruf, nomor
ataupun simbol pada alfabet latin). Untuk alfabet lainnya, misalkan, alfabet atau kanji
China, ukuran maksimum SMS nya adalah 70 karakter.
2.2
Arsitektur SMS
SMS dimaksudkan untuk menjadi alat pertukaran informasi antara dua mobile
subscriber. Elemen-elemen utama pada arsitektur SMS terdiri dari Short Message Entity
(SME), SMS Service Centre (SMSC), Email Gateway.
2.2.1
Short Message Entity (SME)
Short Message Entity (SME) adalah elemen yang dapat mengirim atau menerima
pesan singkat. SME dapat berupa software aplikasi pada mobile handset, dapat juga
berupa perangkat facsimile, perangkat telex, remote internet server, dll.
Sebuah SME dapat berupa server yang terkoneksi dengan SMS centre secara langsung
atau melalui gateway. Dikenal juga External SME (ESME) yang merepresentasikan
sebuah WAP proxy/server, Email Gateway atau Voice Mail server.
6
7
2.2.2
SMS Service Centre (SMSC)
SMS Service Centre (SMSC) memegang peran kunci dalam arsitektur SMS.
Fungsi utama SMSC adalah menyampaikan pesan singkat antara SME dengan MS, juga
menyimpan dan meneruskan pesan singkat (menyimpan pesan jika penerima SME tidak
tersedia). SMSC dapat terintegrasi sebagai bagian dari mobile network (cth: terintegrasi
dengan MSC) atau sebagai entitas network independen.
2.2.3
Email Gateway
Email Gateway memungkinkan sebuah email beroperasi menjadi SMS dengan
iterkoneksi SMSC pada internet. Dengan email gateway, pesan dapat dikirim dari
sebuah SME menuju sebuah host internet dan sebaliknya. Peran email gateway adalah
mengubah format pesan (dari SMS ke email dan sebaliknya) dan merelay pesan antara
SMS dan domain internet.
Gambar 2.1 Cara kerja SMS
8
Ketika pengirim mengirim SMS, maka pesan terlebih dahulu dikirim ke Mobile
Switching Center (MSC) melalui jaringan seluler yang tersedia yang meliputi tower
Base Transceiver Station (BTS) lalu ke Base Station Controller (BSC), kemudian
sampai ke Mobile Switching Center (MSC). Kemudian dari MSC, SMS diteruskan ke
Short Message Service Centre (SMSC) untuk disimpan. SMSC kemudian mengecek
lewat Home Location Register (HLR) untuk mengetahui apakah handphone tujuan
sedang aktif dan lokasi handphone penerima tersebut. Jika handphone tujuan aktif maka
pesan disampaikan MSC lewat jaringan yang sedang menghandle penerima (BSC dan
BTS). Jika handphone sedang tidak aktif maka pesan disimpan di SMSC, menunggu
pemberitahuan MSC bahwa handphone sudah aktif kembali dan seterusnya SMS dikirim
dengan batas maksimum waktu tunggu yaitu validity period dari pesan SMS itu sendiri.
2.3
Basic Feature SMS
SMS mempunyai beberapa basic feature, seperti :
-
Message Submission and Delivery
-
Status Report
-
Reply Path
-
Addresing Mode
-
Validity Period
2.3.1
Message Submission and Delivery
Terdiri dari message sending dan message delivery. Pada message sending, pesan
dikirm dari Mobile Station (MS) ke SMSC, dialamatkan ke SME lain sebagai mobile
user lain atau host internet. Originator (asal) SME menentukan validity period dari
9
pesan tersebut, pesan yang sudah tidak valid lagi akan dihapus oleh SMSC sepanjang
pengiriman pesan. Fitur ini dikenal sebagai Short Message-Mobile Originated (SMMO).
Pada message delivery, pesan disampaikan oleh SMSC ke Mobile Station (MS).
Dikenal sebagai Short Message Mobile Terminated (SM-MT). SM-MO dan SM-MT
dapat dikirim / diterima saat voice call atau koneksi data sedang berlangsung. Pada GSM
pesan dikirim pada channel Stand-Alone Dedicated Control Channel (SDCCH) / Slow
Associated Control Channel (SACCH). Channel SDCCH ini berfungsi sebagai penyedia
koneksi jaringan yang handal pada pensinyalan dan pesan sms dan channel SACCH
digunakan untuk mendukung channel SDCCH.
2.3.2
Status Report
SME asal (originator) meminta status report pada pengiriman pesan singkat ke
SME penerima (recipient). Status report memberikan indikasi pada user asal apakah
pesan terkirim dengan sukses atau tidak kepada SME penerima.
2.3.3
Reply Path
Reply Path dapat diatur oleh SME asal (atau SMSC serving) untuk
mengindikasikan bahwa SMSC serving dan mampu untuk menghandle secara langsung
reply dari SME penerima.
10
2.3.4
Addressing Mode
Addressing mode menggunakan Mobile Station Integrated Service Digital
Number (MSISDN) yang merupakan nomor ISDN yang ditempatkan pada mobile
station pelanggan dan digunakan untuk urusan sebuah panggilan kepada pelanggan.
2.3.5
Validity Period
Pesan originator dimungkinkan untuk menentukan validity period sebuah pesan.
Validity period ini menentukan batas waktu sebuah pesan harus dikirim sebelum
akhirnya dihilangkan oleh jaringan.
2.4
Enkripsi
Enkripsi merupakan proses untuk mengubah sebuah pesan (informasi) sehingga
tidak dapat dibaca isi atau informasi aslinya tanpa menggunakan kunci pembuka.
Enkripsi adalah cara yang paling efektif untuk memperoleh pengamanan data. Untuk
membaca file yang di-enkrip, kita harus mempunyai akses terhadap kata sandi yang
memungkinkan kita men-dekrip pesan tersebut. Data yang tidak di-enkrip disebut
plaintext, sedangkan yang di-enkrip disebut ciphertext.
Sebuah pesan dalam bentuk plaintext diubah dengan encryption menjadi
ciphertext. Proses sebaliknya, untuk mengembalikan ciphertext ke plaintext disebut
decryption.
Menurut ISO 7498-2 istilah yang lebih tepat untuk encryption adalah enchipher
sedangkan istilah yang lebih tepat untuk decryption adalah decipher. Encryption
menggunakan algoritma tertentu untuk mengacak pesan.
11
Pada
algoritma
kriptografi
modern,
sistem
kriptografi
kunci
simetri
menggunakan operasi dalam mode bit yang dapat dikelompokkan menjadi stream cipher
dan block cipher. Stream cipher beroperasi pada plainteks/cipherteks dalam bentuk bit
tunggal, sedangkan block cipher beroperasi dalam bentuk blok-blok bit pesan.
Berikut ini adalah contoh-contoh enkripsi dan salah satunya yang akan
digunakan sebagai algoritma enkripsi skripsi ini adalah XOR cypher.
2.4.1
DES
DES adalah algoritma block cipher yang sangat popular karena dijadikan
standard algoritma enkripsi kunci-simetri, meskipun saat ini standard tersebut sudah
dianggap tidak aman lagi. Pada DES data dienkrip dalam blok-blok 64 bit menggunakan
kunci 56 bit. DES mentransformasikan input 64 bit dalam beberapa tahap enkripsi ke
dalam output 64 bit. Dengan tahapan dan kunci yang sama, DES digunakan untuk
membalik enkripsi. DES sangat banyak digunakan untuk melindungi data dalam dunia
elektronika khususnya di bidang perbankan, finansial, dan e-commerce. Sayangnya,
DES juga mempunyai kontroversi tentang keamanannya[16].
2.4.2
A5
Algoritma A5 adalah algortima stream cipher yang digunakan untuk
mengenkripsi pesan dalam transmisi udara. Stream chiper ini diinisialisasi dengan setiap
frame yang dikirim. Stream chiper ini diinisialisasi dengan kunci sesi, Kc, dan jumlah
frame yang akan dienkripsi. Kunci sesi yang sama digunakan sepanjang panggilan
berlangsung, tetapi 22 bit nomor frame berubah selama proses berlangsung, kemudian
membangkitkan keystream yang unik untuk setiap frame.
12
2.4.3
XOR CYPHER
Dalam kriptografi, sandi XOR adalah algoritma enkripsi sederhana yang
beroperasi sesuai dengan prinsip tabel kebenaran :
Tabel 2.1 Table kebenaran XOR
MASUKAN
X
KELUARAN
Y
Z
0
0
0
0
1
1
1
0
1
1
1
0
Dengan logika ini, sebuah string teks dapat dienkripsi dengan menerapkan
operasi XOR bitwise untuk setiap karakter dengan menggunakan kunci tertentu. Untuk
mendekripsinya kembali cukup sederhana yaitu
dengan menerapkan operasi XOR
bitwise kembali akan mengubah teks yang telah di enkrip menjadi plain text biasa.
Contoh :
Suatu string “W I K I “ dengan biner 01010111 01101001 01101011 01101001 dalam
8-bit ASCII dapat dienkripsi dengan contoh kunci biner 11110011 :
01010111 01101001 01101011 01101001
11110011 11110011 11110011 11110011
= 10100100 10011010 10011000 10011010
XOR
13
Dan sebaliknya untuk mendekripsinya , cukup menggunakan kunci yang sama
dengan metode XOR :
10100100 10011010 10011000 10011010
11110011 11110011 11110011 11110011
XOR
= 01010111 01101001 01101011 01101001
XOR cypher merupakan enkripsi yang sangat sederhana dibandingkan dengan
enkripsi lainnya yang lebih kompleks.
Dengan menggunakan kunci yang sama, XOR cypher dapat mengenkrip dan
mendekrip plaintext. Kelebihan utamanya adalah sederhana untuk dilakukan karena
operasi komputasinya tidak rumit.
2.5
Telepon Selular
Telepon selular atau sering disebut handphone atau disebut pula sebagai telepon
genggam yang disingkat menjadi ponsel adalah perangkat telekomunikasi elektronik
yang mempunyai kemampuan dasar yang sama dengan telepon konvensional saluran
tetap, namun dapat dibawa ke mana-mana (portabel, mobile) dan tidak perlu
disambungkan dengan jaringan telepon menggunakan kabel atau nirkabel yang sering
disebut wireless sehingga dapat melakukan dan menerima panggilan.
Selain berfungsi untuk melakukan dan menerima panggilan telepon, telepon
selular umumnya juga mempunyai fungsi pengiriman dan penerimaan pesan singkat
yang biasa disebut dengan SMS (Short Message Service). Ada pula penyedia jasa
telepon selular di beberapa negara yang menyediakan layanan generasi ketiga (3G)
dengan menambahkan jasa video phone maupun televisi online di telepon seluar.
14
Sekarang, telepon selular menjadi gadget yang multifungsi. Mengikuti
perkembangan teknologi digital, kini ponsel juga dilengkapi dengan berbagai pilihan
fitur, seperti bisa menangkap siaran radio dan televisi, perangkat lunak pemutar audio
(MP3), video, kamera digital, game dan layanan internet (WAP, GPRS, 3G). Selain fiturfitur tersebut, ponsel sekarang sudah ditanamkan fitur komputer. Jadi fungsi ponsel
tersebut menyamai mini komputer. Ponsel yang memiliki fitur – fitur komputer sering
dinamakan telepon pintar atau smart phone. Telepon pintar atau smart phone
ini
membutuhkan processor, memory, dan sistem operasi yang memadai agar dapat
berfungsi dengan baik.
2.5.1 Sistem Operasi
Sistem operasi atau dalam bahasa Inggris (operating system) adalah perangkat
lunak sistem yang bertugas untuk melakukan kontrol dan manajemen perangkat keras
serta operasi-operasi dasar sistem, termasuk menjalankan software aplikasi seperti
program-program pengolah kata dan web browser.
Secara umum, sistem operasi adalah software pada lapisan pertama yang ditaruh
pada memori komputer pada saat komputer dinyalakan. Sedangkan software-software
lainnya dijalankan setelah sistem operasi berjalan, dan sistem operasi akan melakukan
layanan inti umum untuk software-software itu. Layanan inti umum tersebut seperti
akses ke disk, manajemen memori, scheduling task, dan antar-muka user. Sehingga
masing-masing software tidak perlu lagi melakukan tugas-tugas inti umum tersebut,
karena dapat dilayani dan dilakukan oleh sistem operasi.
15
Beberapa contoh sistem operasi pada telepon selular diantaranya : Nokia OS,
Sony Ericson JP, Symbian, Blackberry OS, Android, dll.
2.5.2 Port
Selain pembahasan fitur – fitur dan sistem operasi, agar suatu perangkat komputer
dapat berinteraksi dengan perangkat lainnya dibutuhkan port sebagai jalur transfer data.
port adalah mekanisme yang mengizinkan sebuah komputer untuk mendukung beberapa
sesi koneksi dengan komputer lainnya dan program di dalam jaringan.
Pada sistem komputer sebenarnya ada dua jenis port yaitu : port fisik & port
logika(non fisik). Port fisik adalah soket atau slot yang ada di belakang CPU sebagai
penghubung peralatan input/output komputer, misalnya : mouse, keyboard, printer, dll.
Sedangkan port logika (non fisik) adalah port yang digunakan oleh software sebagai
jalur untuk melakukan koneksi dengan komputer lain, tentunya termasuk koneksi
internet yang berada dalam jaringan TCP/IP ataupun UDP.
Dilihat dari penomorannya, port UDP dan TCP dibagi menjadi tiga jenis, yakni
sebagai berikut:
•
Well-known Port : yang pada awalnya berkisar antara 0 hingga 255 tapi kemudian
diperlebar untuk mendukung antara 0 hingga 1023. Port number yang termasuk ke
dalam well-known port, selalu merepresentasikan layanan jaringan yang sama, dan
ditetapkan oleh Internet Assigned Number Authority (IANA). Beberapa di antara portport yang berada di dalam range Well-known port masih belum ditetapkan dan
direservasikan untuk digunakan oleh layanan yang bakal ada di masa depan.
•
Registered Port : Port-port yang digunakan oleh vendor-vendor komputer atau
jaringan yang berbeda untuk mendukung aplikasi dan sistem operasi yang mereka buat.
16
Registered port juga diketahui dan didaftarkan oleh IANA tapi tidak dialokasikan secara
permanen, sehingga vendor lainnya dapat menggunakan port number yang sama. Range
registered port berkisar dari 1024 hingga 49151 dan beberapa port di antaranya adalah
Dynamically Assigned Port.
•
Dynamically Assigned Port: merupakan port-port yang ditetapkan oleh sistem
operasi atau aplikasi yang digunakan untuk melayani request dari pengguna sesuai
dengan kebutuhan. Dynamically Assigned Port berkisar dari 1024 hingga 65536 dan
dapat digunakan atau dilepaskan sesuai kebutuhan.
Berikut ini adalah contoh beberapa well-known port yang telah ditetapkan oleh
Internet Assigned Number Authority (IANA) :
1.
Port 80 digunakan untuk Web Server
2.
Port 81 digunakan untuk Web Server alternatif ketika port 80 diblok
3.
Port 21 digunakan untuk mengakses FTP Server
4.
Port 23 digunakan untuk berhubungan dengan server Telnet
5.
Dan seterusnya..
2.6
JAVA
2.6.1 Teori Dasar Pemograman Java
Dalam sebagian besar bahasa pemograman, sebuah kode program harus
dikompilasi (compile) maupun diterjemahkan (interpret) sehingga dapat dijalankan
didalam sebuah komputer. Software yang digunakan untuk melakukan kompilasi kode
program disebut dengan compiler, sedangkan yang digunakan untuk melakukan
interpretasi disebut dengan interpreter. Perbedaan antara compiler dan interpreter adalah
terletak pada proses eksekusi kodenya. Compiler akan menerjemahkan isi kode program
17
secara keseluruhan, sedangkan interpreter akan menerjemahkan dengan cara baris demi
baris. Karena proses eksekusinya dilakukan per baris, maka interpreter lebih lambat
dibandingkan dengan compiler.
Java menerapkan dua proses diatas. Ini berarti bahwa Java berperan sebagai
compiler dan juga sebagai interpreter. Maksudnya mula-mula kode program yang ditulis
dengan bahasa Java (berekstensi .Java) akan dikompilasi (oleh compiler) menjadi suatu
kode objek yang biasa disebut dengan istilah bytecode dalam terminologi Java. Jadi
dalam Java, hasil akhir programnya akan berupa bytecode (berekstensi .class) bukan
file.EXE . Selanjutnya bytecode akan dieksekusi baris demi baris (oleh interpreter).
Dengan demikian, proses kompilasi hanya dilakukan sekali akan tetapi proses interpret
akan dilakukan setiap program dieksekusi.
Bytecode dapat dianggap sebagai sekumpulan perintah dalam bahasa mesin
untuk sebuah JVM (Java Virtual Machine). Setiap interpreter Java, baik yang berupa
development tool maupun sebuah web browser, merupakan implementasi dari JVM.
Program yang di buat dengan Java tidak mungkin dapat dijalankan di dalam komputer
maupun alat lain yang tidak memiliki JVM.
Dengan adanya konsep bytecode ini, dalam terminologi Java dikenali adanya
istilah “write once, run anywhere” . Ini berarti bahwa sekali kita menulis program Java
dan melakukan kompilasi terhadapnya, maka bytecode-nya dapat dijalankan di dalam
platform manapun selama platform tersebut memiliki JVM. Adapun istilah JRE (Java
Runtime Environment) pada Java yang fungsinya untuk menjalankan program Java atau
file dengan ekstensi .Java karena pada JRE berisi JVM dan library – library Java. Tetapi
JRE hanya dapat menjalankan program Java, JRE tidak dapat membuat kode baru.
Untuk membuat kode program baru maka dibutuhkan JDK (Java Development Kit) yang
18
berisi compiler, debugger dan lainnya. Maka untuk membuat dan menjalankan program
Java dalam suatu platform kita memerlukan JRE dan JDK. Java2 adalah generasi yang
sekarang sedang berkembang dari platform Java.
2.6.2 Pembagian kebutuhan tipe aplikasi dari Java
Platform Java memiliki tiga buah edisi yang berbeda, yaitu :
-
J2SE (Java2 Standard Edition)
-
J2EE (Java2 Enterprise Edition)
-
J2ME (Java2 Micro Edition)
J2SE adalah lingkungan dasar dari Java atau inti dari bahasa pemograman Java.
Pada J2SE terdapat tool JDK dan JRE untuk menulis, mengkompilasi dan menjalankan
program Java.
J2EE adalah mencakup lingkungan pembuatan aplikasi yang berskala enterprise.
J2EE dibuat untuk membuat aplikasi yang kompleks. J2EE sering dianggap sebagai
middleware atau teknologi yang berjalan di server namun sebernarnya J2EE tidak
hanya terbatas untuk itu. Faktanya J2EE juga mencakup teknologi yang dapat digunakan
di semua lapisan dari sebuah sistem informasi.
J2ME adalah suatu 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
akan berfungsi baik pada perangkat lainnya karena tergantung pada merk, kemampuan
dan dukungannya terhadap teknologi J2ME. Ruang lingkup J2ME ini akan dibahas lebih
lanjut di sub bab berikutnya.
19
2.7
Ruang Lingkup J2ME
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, PDA (Personal
Digital Assistants) dan sejenisnya.
Teknologi
J2ME
juga
memiliki
beberapa
keterbatasan
terutama
jika
diaplikasikan pada ponsel. J2ME sangat tergantung pada perangkat (device) yang
digunakan, bisa dari segi merk ponsel, kemampuan ponsel, fitur dan dukungannya
terhadap teknologi J2ME. Contohnya 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 alasan keamanan.
Tabel 2.2 Tabel Arsitektur J2ME
Profile
Kumpulan Library
Configuration
JVM
Sistem Operasi
Configuration merupakan Java library minimum dan kapabilitas yang dimiliki
oleh para pengembang J2ME, yang maksudnya sebuah mobile device dengan
kemampuan Java yang akan dioptimalkan untuk menjadi sesuai.
20
Configuration hanyalah mengatur hal-hal tentang kesamaan sehingga dapat
dijadikan ukuran kesesuaian antar device. Misalnya sebuah lampu sepeda dirancang
sedemikian rupa sehingga dapat digunakan oleh berjenis-jenis sepeda. Dalam J2ME
telah didefenisikan dua buah konfigurasi yaitu CLDC (Connected Limited Device
Configuration) untuk perangkat kecil dan CDC (Connected Device Configuration) untuk
perangkat yang lebih besar.
Profile berbeda dengan Configuration, profile membahas sesuatu yang spesifik
untuk sebuah perangkat. Sebagai contoh misalnya, sebuah sepeda dengan merk tertentu
tentu mempunyai ciri spesifik dibandingkan dengan sepeda lain.
Dalam J2ME terdapat 2 buah profile yaitu MIDP dan Foundation Profile.
2.7.1
Connected Limited Device Configuration (CLDC)
Tabel 2.3 Tabel Lingkup CLDC
MIDP
Kumpulan Library
CLDC
KVM
Sistem Operasi
Connected Limited Device Configuration (CLDC) adalah perangkat dasar dari
J2ME, spesifikasi dasar yang berupa library dan API yang diimplementasikan pada
J2ME seperti yang digunakan pada 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
21
sebagian fungsi JVM yang dikurangi agar dapat diimplementasikan dengan keterbatasan
sumber daya pada alat tersebut, JVM yang digunakan disebut KVM (Kilobyte Virtual
Machine)
2.7.2
Connected Device Configuration (CDC)
Connected Device Configuration (CDC) adalah spesifikasi dari konfigurasi
J2ME. CDC merupakan komunitas proses pada Java yang memiliki standardisasi. CDC
terdiri dari virtual machine dan kumpulan library dasar untuk dipergunakan pada profile
industri. Implementasi CDC pada J2ME adalah source code yang menyediakan
sambungan dengan berbagai macam platform.
Tabel 2.4 Tabel Perbandingan antara CLDC dan CDC
CLDC
CDC
Mengimplementasikan
sebagian
fitur Mengimplementasikan seluruh fitur J2SE
dari J2SE
JVM yang digunakan adalah KVM
JVM yang digunakan adalah CVM
Digunakan pada perangkat genggam Digunakan pada perangkat genggam
(handphone,PDA)
dengan
memori (internet TV, Nokia Communicator, Car
terbatas (160 – 512 KB)
TV) dengan memori minimal 2 MB
Prosesor : 16/ 32bit
Prosesor : 32 bit
22
2.7.3
Kilobyte Virtual Machine (KVM)
KVM adalah paket JVM yang didesain untuk perangkat yang kecil. KVM
mendukung sebagian dari fitur-fitur JVM, seperti misalnya KVM tidak mendukung
operasi floating point dan finalisasi objek. KVM diimplementasikan dengan
menggunakan C sehingga sangat mudah beradapatasi pada tipe platform yang berbeda.
2.7.4
C-Virtual Machine (CVM)
CVM adalah paket 0020JVM optimal yang digunakan pada CDC. CVM
mempunyai seluruh fitur dari virtual machine yang didesain untuk perangkat yang
memerlukan fitur – fitur Java 2 virtual machine.
2.7.5
Mobile Information Device Profile (MIDP)
MIDP atau Mobile Information Device Profile adalah spesifikasi untuk sebuah
profil J2ME. MIDP memiliki lapisan diatas CLDC. Pada saat ini terdapat MIDP 1.0 dan
MIDP 2.0. Fitur tambahan MIDP 2.0 dibanding MIDP 1.0 adalah API untuk multimedia
dan juga terdapat dukungan untuk memainkan tone, tone sequence dan file WAV
walaupun tanpa adanya Mobile Media API (MMAPI).
2.7.6
MIDlet
MIDlet adalah aplikasi yang ditulis untuk MIDP. MIDlet berupa sebuah kelas
abstrak yang merupakan sub kelas dari bentuk dasar aplikasi sehingga antarmuka antara
aplikasi J2ME dan aplikasi manajemen pada perangkat dapat terbentuk.
Dalam implementasinya, MIDlet memiliki struktur direktori sebagai berikut :
- Src
23
Direktori Src menyimpan source code untuk MIDlet dan kelas lain yang
diperlukan.
- Res
Direktori Res menyimpan sumber daya yang dibutuhkan MIDlet, seperti
misalnya gambar icon.
- Lib
Direktori Lib menyimpan file JAR yang berisi library tambahan yang dibutuhkan
MIDlet.
- Bin
Direktori Bin menyimpan file JAR,JAD, dan file yang berisi muatan komponen
MIDlet.
2.7.7
Java Application Descriptor (JAD)
JAD atau Java Application Descriptor digunakan untuk mendeskripsikan isi
aplikasi untuk keperluan pemetaan. File JAD berisi deskripsi file JAR dan pemetaan
atribut MIDlet. JAR atau kepanjangan dari Java Archive berisi kumpulan kelas dan
resource untuk menjalankan aplikasi J2ME.
2.7.8
Foundation Profile
Foundation Profile adalah spesifikasi untuk device yang mendukung lingkungan
J2ME dengan beragam jaringan. Foundation Profile tidak mensupport user interface
atau antarmuka aplikasi. Foundation Profile memiliki lapisan diatas CDC.
24
2.8
Netbeans
NetBeans IDE (Integrated Development Environment) adalah suatu IDE
(Integrated Development Environment) yang dibangun menggunakan platform
NetBeans. Dimana IDE (Integrated Development Environment) itu sendiri adalah
program komputer yang memiliki beberapa fasilitas yang diperlukan dalam
pembangunan perangkat lunak. Tujuan dari IDE adalah untuk menyediakan semua
utilitas yang diperlukan dalam membangun perangkat lunak.
Sebuah IDE, atau secara bebas dapat diterjemahkan sebagai lingkungan
pengembangan terpadu, setidaknya memiliki fasilitas:
•
Editor, yaitu fasilitas untuk menuliskan kode sumber dari perangkat lunak.
•
Compiler, yaitu fasilitas untuk mengecek sintaks dari kode sumber kemudian
mengubah dalam bentuk binari yang sesuai dengan bahasa mesin.
•
Linker, yaitu fasilitas untuk menyatukan data binari yang beberapa kode sumber
yang dihasilkan compiler sehingga data-data binari tersebut menjadi satu kesatuan
dan menjadi suatu program komputer yang siap dieksekusi.
•
Debuger, yaitu fasilitas untuk mengetes jalannya program, untuk mencari
bug/kesalahan yang terdapat dalam program.
NetBeans bisa ditulis dengan berbagai bahasa pemrograman contohnya Java,
C++, C# karena netbeans sendiri memiliki lebih dari satu editor dan kompiler
didalamnya. Program Netbeans yang dituliskan dengan bahasa pemograman Java bisa
dijalankan di sistem operasi manapun pada suatu komputer asalkan JVM (Java Virtual
Machine) terinstalasi didalamnya.
Download