Selasa, 10 Juni 2014

Shared Preference

Definisi Shared Preferences


Shared Preferences (SP) merupakan penyimpan data dalam bentuk key-value, value yang disimpan harus dalam bentuk tipe data primitif seperti integer, double, string, booelan.. Shared Preference objek untuk activity diperoleh melalui getPreferences().

Mode Shared Preferences

Ada tiga mode untuk shared preferences (SP):



  • MODE_PRIVATE:  data yang disimpan dalam SP hanya dapat dibaca oleh aplikasi yang  bersangkutan.
  • MODE_WORLD_READABLE: data yang disimpan dalam SP dapat dibaca oleh aplikasi lain.
  • MODE_WORLD_WRITEABLE: data yang disimpan dalam SP dapat dibaca dan diubah oleh aplikasi lain. 
untuk mengakses preferences maka menggunakan method dibawah ini :




  • getPreferences()
  • getsharedPreferences()
  • getDefaultSharedPreferences()
Contoh Implementasi Shared Preferences
Buat project android dengan ketentuan sebagai berikut :
  • Project name           : SharedPreferences
  • Build Target             : Android 2.1-update1
  • Application Name   : SharedPreferences
  • Activity                       : SharePreferencesActivity
  • Min SDK                    : 7






Hasil Tampilan Project


SQLite

Pengertian

SQLite merupakan sebuah sistem manajemen basisdata relasional yang bersifat ACID-compliant dan memiliki ukuran pustaka kode yang relatif kecil, ditulis dalam bahasa C. SQLite merupakan proyek yang bersifat public domain yang dikerjakan oleh D. Richard Hipp.
Tidak seperti pada paradigma client-server umumnya, Inti SQLite bukanlah sebuah sistem yang mandiri yang berkomunikasi dengan sebuah program, melainkan sebagai bagian integral dari sebuah program secara keseluruhan. Sehingga protokol komunikasi utama yang digunakan adalah melalui pemanggilan API secara langsung melalui bahasa pemrograman. Mekanisme seperti ini tentunya membawa keuntungan karena dapat mereduksi overhead, latency times, dan secara keseluruhan lebih sederhana. Seluruh elemen basisdata (definisi data, tabel, indeks, dan data) disimpan sebagai sebuah file. Kesederhanaan dari sisi disain tersebut bisa diraih dengan cara mengunci keseluruhan file basis data pada saat sebuah transaksi dimulai.

Terdapat beberapa alasan mengapa SQLite sangat cocok untuk pengembangan aplikasi Android, yaitu:
  • Database dengan konfigurasi nol. Artinya tidak ada konfigurasi database untuk para developer. Ini membuatnya relatif mudah digunakan.
  • Tidak memiliki server. Tidak ada proses database SQLite yang berjalan. Pada dasarnya satu set libraries menyediakan fungsionalitas database.
  • Single-file database. Ini membuat keamanan database secara langsung.
  • Open source. Hal ini membuat developer mudah dalam pengembangan aplikasi.


Tipe data yang didukung di SQLite :
Numeric ( integer , float , double), Text ( Char , varchar , text )Date TimeBlob 

Kelas SQLite

Ada 3 kelas yang harus di ketahui yaitu:
  • SQLiteDatabase
SQLiteDatabase merupakan sebeuah kelas yang mempunya method-method  
Insert() = untuk menambahkan baris ke database 
Update () = untuk memperbarui baris pada database 
Delete ()  = untuk menghapus baris pada database
execSQL ()  = untuk mengeksekusi sintak SQL
·    
  •   SQLiteOpenHelper SQLiteOpenHelper adalah subclass yang memiliki beberapa method seperti:onCreate()                             = di jalankan jika sebelum'nya belum ada databaseonUpgrade()                          = di jalankan jika sebelum'nya sudah di temukan database yang sama tapi beda versi, method ini bisa dimanfaatkan untuk mengubah sekema databaseonOpen()                                = di jalankan jika database dalam keadaan opengetWritableDatabase()         = memanggil database agar bisa di masuki datagetReadableDatabase()      = memanggil database agar bisa dibaca data'nya

  • Cursor
Setiap Query yang di eksekusi pasti membawa nilai kembalian atau feedback. Feedbeck yang dihasilkan query ini, jadi dengan kata lain cursor merepresentasikan hasil query yang di eksekusi pada baris dan kolom tertentu beberapa ini method yang di gunakan untuk latihan ini :

moveToFirst()       = untuk indah ke baris pertama
isAfterLast ()      = akan mengirim pesan balik jika posisi cursor sudah berada     di baris terakhir
  getLong()             = untuk mengambil data pada kolom yang mempunyai tipe  data Long
getString()            = untuk mengambil data pada kolom yang mempunyai tipe data String




OS yang didukung oleh SQLite : 

           SQLite mendukung semua platform. Anda bebas memilih OS, mau pakai Windows, Linux, Mac OSX bahkan Android atau iPhone pun bisa.



SQlite Manager

Tools untuk memanajemen Sqlite:

            SQLiteManager adalah multibahasa/tools berbasis web untuk mengelola database SQLite. Bahasa pemrograman yang digunakan adalah: PHP4 dan PHP5. Bekerja dengan baik pada platform Linux, Windows dan Mac OSX. Tools ini dalam masa developpement, tetapi sangat fungsional. Berbagai fungsinya adalah:

  • Manajemen beberapa database.
  • Creation ‘Koneksi’ ke beberapa database.
  • Properti dan pengelolaan pilihan dari database yaitu insert / Update / delete table.
  • Manajemen dari indeks – Menampilkan / Sisipkan / merubah / menyembunyikan data       dalam tabel.
  • Impor data dari file – eksekusi manual permintaan dari ‘SQLite’ format atau dari                 ‘MySQL’ format (konversi).
  • Membuat / Update / Hapus dari View.
  • Membuat / Update / Hapus dari Trigger.
  • Manajemen dari fungsi yang ditetapkan pengguna. (digunakan di   SQLiteManager           permintaan).
  • Ekspor dan struktur data ke format SQL.

Integrasi dengan bahasa lain
  • SQLite termasuk dalam framework REALbasic, yang memungkinkan aplikasi yang dikembangkan dengan menggunakan REALbasic dapat memanfaatkan basisdata SQLite.
  • Pustaka SQLite bisa digunakan secara langsung pada bahasa C/C++, namun untuk Tcl dan beberapa bahasa pemrograman berbasis script juga tersedia.
  • Modul DBI/DBD untuk Perl juga tersedia pada CPAN, DBD:SQLite, namun modul ini bukanlah antarmuka dengan SQLite melainkan memasukkan SQLite secara keseluruhan dalam modul tersebut.
  • Modul Python juga tersedia (PySQLite) yang diimplementasikan pada DB API Python versi 2.0 (PEP 249)
  • PHP dimulai dengan PHP5 telah memasukkan SQLite, versi PHP4 sebelumnya bisa juga digunakan untuk mengakses SQLite, namun modul SQLite tidak dimasukan secara standar bawaan.
  • Dimulai Lazarus versi 0.9.8 dan Free Pascal 2.0.0, SQLite didukung untuk digunakan oleh para programmer. Tutorial tersebut bisa didapatkan disini.
  • Meskipun borland tidak mempaketkan SQLite secara standar bawaan, Delphi sudah mendukung SQLite juga menggunakan pustaka yang dibuat oleh pihak ketiga (Aducom dan Zeos). Banyak program administrasi basisdata SQLite baik komersil ataupun bebas yang menawarkan kemudahan-kemudahan dalam memanajemen basisdata SQLite terdapat di internet dibuat dengan menggunakan bahasa ini.
  • SQLite juga termasuk dalam paket yang dibundle secara standar bawaan pada Mac OS X, dan digunakan sebagai salah satu pilihan mekanisme penyimpanan data pada API Apple.


Kelebihan Sqlite :

Sqlite merupakan salah satu embbeded database yang wajib dipertimbangkan untuk digunakan pada aplikasi bukan enterprise karena memiliki beberapa kelebihan yaitu :
Secara umum cukup stabil
  • Perfomanya lebih efesien dan cepat dibandingkan database yang lain
  • Sedikit menggunakan memory, hanya membutuhkan sigle library untuk mengakses database
  • Berjalan dibanyak platform yang berbeda, dan dapat dipindahkan dengan mudah tanpa setting administrasi yang rumit.
  • Memenuhi standart ACID (Atomicity, Consistensy, Isolation, dan Durability )
  • Mendukung ANSI 92 SQl Standar.
  • Mempunyai API untuk bahasa C++, PHP, Perl, Phyton, dan Tcl.
  • License public domain, free untuk redistributed.