LAPORAN PRAKTIKUM MOBILE PROGRAMMING ”PERSISTENCE”
Oleh :
Yuniar Prasetyo 1083074
Kelas 3B
JURUSAN TEKNIK INFORMATIKA
POLITEKNIK POS INDONESIA
BANDUNG
2010
POLITEKNIK POS INDONESIA
BANDUNG
2010
KATA PENGANTAR
Puji syukur penulis panjatkan ke hadirat Tuhan Yang Maha Esa yang atas karuniaNya penulis dapat menyelesaikan Laporan Praktikum mata kuliah Mobile Programming ini.
Adapun isi dari Laporan ini adalah mengenai persistence yaitu membahas lebih dalam tentang record dengan menggunakan aplikasi Sun Wireless Toolkit yang telah penulis lakukan.
Demikian Laporan Praktikum Mobile Programming ini penulis buat, sebagai hasil praktikum yang telah penulis lakukan. Kritik dan saran yang membangun sangat penulis harapkan sehingga kedepannya nanti lebih baik.
Penulis,
PERSISTENCE
MIDP menyediakan sebuah API dimana program dapat menyimpan data-data aplikasi secara lokal didalam device tersebut. MIDP Record Management System adalah sebuah fasilitas yang dimiliki oleh MIDlets untuk menyimpan data-data aplikasi pada saat MIDlet invocations. Data akan disimpan dalam non-volatile memory didalam device. Hal ini berarti, data-data program yang telah disimpan tidak akan hilang walaupun program di restart maupun device dimatikan.
1. RECORD STORE
Sebuah Record Store adalah sebuah koleksi daripada record-record. Record Id didalam Record Store selalu unique. Record Id akan secara otomatis dialokasikan pada saat pembentukan sebuah record dan bertindak sebagai index atau primary key. Pemberian record Id dilaksanakan secara sekuensial dan nilai yang diberikan kepada record Id pertama pada setiap Record Store adalah 1 (satu).
a) Membuat dan membuka sebuah Record Store
Method-method dibawah ini digunakan untuk membuat dan membuka sebuah record store:
Jika createIfNecessary di-set menjadi true dan Record Store belum ada, maka Record Store akan dibangun. Jika createIfNecessary di-set menjadi false dan Record Store tersebut belum dibuat, maka sebuah RecordStoreNotFoundException akan dijalankan.
b) Menambahkan sebuah record
Method addRecord akan membuat record yang baru didalam Record Store dan akan mengembalikan record ID.
c) Mengambil kembali Record
Bentuk pertama dari method getRecord akan mengembalikan copy dari data stored yang ada didalam record tertentu berdasarkan RecordID. Bentuk kedua akan meng-copy data pada paramater byte array yang telah disediakan. Pada saat menggunakan bentuk kedua, byte array tersebut haruslah dialokasikan terlebih dahulu. Jika ukuran dari record lebih besar daripada ukuran dari parameter, maka akan terjadi ArrayIndexOutOfBoundsException. Anda akan menggunakan method getRecordSize secara berurutan untuk mengetahui ukuran dari record sebelum Anda mulai untuk membacanya.
d) Meng-update sebuah Record
Anda tidak dapat memodifikasi hanya sebagian dari data record. Jika Anda ingin untuk memodifikasi sebuah record Anda harus:
1. Membaca tiap record dengan menggunakan getRecord
2. Meng-update record didalam memory
3. Memanggil setRecord untuk mengupdate data record
Pada saat sebuah record dihapus, record Id akan digunakan kembali di pemanggilan berikutnya pada addRecord. Hal ini berarti, ada sebuah celah didalam Record Id. Oleh karena itu, tidak disarankan untuk menggunakan counter increment untuk membuat list dari keseluruhan record didalam record store. Anda harus menggunakan Record Enumerator untuk mengetahui tiap record didalam sebuah list store.
e) Menutup sebuah Record Store
Record store yang akan ditutup dengan cara pemanggilan method closeRecordStore() tidak akan benar-benar ditutup sampai closeRecordStore() dipanggil sejumlah pemanggilan dari openRecordStore() sebelumnya. Pemanggilan closeRecordStore() lebih dari jumlah pemanggilan openRecordStore() akan berakibat exception RecordStoreNotOpen.
CONTOH PROGRAM
HASIL COMPILE
f) Mendapatkan list dari Record Store didalam MIDlet Suite
Method ini akan mengembalikan array dari nama record store tersebut yang dimiliki oleh MIDlet suite. Jika MIDlet suite tidak memiliki sebuah Record Store, maka method ini akan memiliki nilai pengembalian null.
CONTOH PROGRAM
HASILNYA
2. RECORD ENUMERATION
Penggunaan record enumeration dapat menyelesaikan permasalahan tersebut dengan melakukan pemeriksaaan pada record yang telah dihapus. Anda juga dapat mengurutkan enumerasi dengan menggunakan method pembanding. Dengan penggunaan method pembanding, anda dapat melewati record yang tidak diharapkan pada output.
CONTOH PROGRAM
HASILNYA
3. KESIMPULAN
· Pada saat sebuah record dihapus, record id-nya tidak akan bisa digunakan kembali. Jika kita membuat empat buah record dan menghapus record ke-empat, maka record Id selanjutnya yang akan diberikan oleh system adalah 5 (lihat gambar)
· MIDlets dapat menciptakan lebih dari satu Record Store. Nama dari sebuah record store didalam MIDlet suite haruslah unique. Nama dari record store juga case sensitive dan memiliki panjang maksimal 32 karakter.
· Method enumerateRecords dari sebuah record store akan menghasilkan enumerasi untuk memeriksa seluruh record pada sebuah record store. Ini adalah cara yang direkomendasikan untuk melewatkan seluruh record dalam record store.
Tidak ada komentar:
Posting Komentar