BAB II TINJAUAN PUSTAKA 2.1 Lembaga Perkreditan Desa (LPD) Untuk melestarikan dan meningkatkan kemandirian kehidupan Desa Adat maka dipandang perlu untuk mengadakan suatu usaha yang dapat memperkuat kedudukan Desa Adat tersebut.Keuangan desa sebagai sarana penunjang.Dengan demikian perlu didirikannya suatu badan atau lembaga keuangan yang merupakan milik desa dimana lembaga tersebut bernama Lembaga Perkreditan Desa yang dapat meningkatkan perekonomian masyarakatnya. Berdasarkan peraturan pemerintah Daerah Propinsi Daerah Tingkat I Bali No. 2 Tahun 1998, menyebutkan bahwa tujuan dari didirikannya Lembaga PerkreditanRakyat adalah sebagai berikut: 1. Meningkatkan daya beli dan kelancaran lalu lintas pembayaran dan peredaranuang di desa. 2. Mendorong pembangunan sektor ekonomi masyarakat desa melalui tabunganyang terarah serta menyalurkan modal yang efektif. 3. Menciptakan pemerataan dan kesempatan berusaha hagi warga desa dan tenagakerja di pedesaan. 4. Membrantas ijin gadai gelap dan lain-lain di daerah pedesaan. Berdirinya dan dibentuknya LPD di propinsi Bali berkaitan dengan usaha pelestarian dan pengembangan desa adat atas dasar beberapa pertimbangan berikut: 1. Desa adat merupakan lembaga tradisional yang telah mengakar dan dihormati oleh masyarakat pedesaan, terutama kerama adatnya. 2. Desa adat telah memiliki aturan-aturan yang disepakati dan dipatuhi baik secara tertulis maupun tidak tertulis. 3. Desa adat merupakan suatu lembaga tradisional dan bersifat kelompok yang didasarkan pada geografis adat, dimana sudah tentu interaksi sosial yang terjadi sehari-hari bisa mengakibatkan tumbuhnya rasa kesatuan dan persatuan serta kerja sama alamiah sebagai wujud gotong royong. 1 4. Desa adat mempunyai kewajiban dan beban tanggung jawab yang cukup besar bila dibandingkan dengan hak yang dimilikinya. LPD merupakan salah satu lembaga perkreditan desa yang merupakan salah satu wadah kekayaan desa yang berupa uang atau surat - surat berhargalainnya. Lembaga Perkreditan Desa dalam mencapai tujuannya selalu melakukan, usaha - usaha yang mengacu pada kepentingan masyarakat desa. Adapun usaha -usaha yang dilaksanakan Lembaga Perkreditan Desa adalah sebagai berikut : 1. Menerima simpanan uang dari warga desanya lain bentuk tabungan simpanan berjangka dan sibermas yang sah menurut ketentuan yang berlaku. 2. Memberikan pinjaman untuk kegiatan-kegiatan yang bersifat produktif padasektor pertanian, industri, kerajinan kecil, perdagangan dan usahausaha lainyang dipandang perlu. 3. Usaha-usaha lain yang bersifat pengarahan dana desa. 4. Penyertaan modal pada usaha - usaha lain. 5. Menerima pinjaman dari lembaga-lembaga keuangan. Berdasarkan penjelasan yang sudah diuaraikan maka dapat dikatakan bahwa Lembaga Perkreditan Desa sangat besar perannya dalam meningkatkan perekonomianmasyarakatnya. 2.2 QR Code 2.5.1 Pengenalan QR Code QR Code adalah suatu jenis kode matriks atau kode batang dua dimensi yang dikembangkan oleh Denso Wave, sebuah divisi Denso Corporation yang merupakan sebuah perusahaan Jepang dan dipublikasikan pada tahun 1994 dengan fungsionalitas utama yaitu dapat dengan mudah dibaca oleh pemindai QR merupakan singkatan dari quick response atau respons cepat, yang sesuai dengan tujuannya adalah untuk menyampaikan informasi dengan cepat dan mendapatkan respons yang cepat pula. 2 Gambar 2.1Sejarah perkembangan QR Code Berbeda dengan kode batang, yang hanya menyimpan informasi secara horizontal, QR Code mampu menyimpan informasi secara horizontal dan vertikal, oleh karena itu secara otomatis QR Code dapat menampung informasi yang lebih banyak daripada kode batang. Gambar 2.2QR Code Awalnya QR Code digunakan untuk pelacakan kendaraan bagian di manufaktur, namun kini QR Code digunakan dalam konteks yang lebih luas, termasuk aplikasi komersial dan kemudahan pelacakan aplikasi berorientasi yang ditujukan untuk pengguna telepon selular. Di Jepang, penggunaan QR Code sangat populer, hampir semua jenis ponsel di Jepang bisa membaca QR Code sebab sebagian besar pengusaha di sana telah memilih QR Code sebagai alat tambahan dalam program promosi produknya, baik yang bergerak dalam perdagangan maupun dalam bidang jasa. Beberapa alasan yang melatarbelakangi banyaknya penggunaan QR Code tersebut antara lain : 3 1. Memiliki karakteristik yang lebih unggul dibandingkan barcode batang. Memiliki kerapatan data yang jauh lebih tinggi dan mendukung penggunaan karakter kanji dan cina. 2. Dapat digunakan oleh siapa saja secara gratis seperti Denso yang memiliki hak paten terhadap QR Code. 3. Tidak memerlukan suatu struktur data khusus untuk menggunakannya. 4. Sebagian besar ponsel di jepang sudah memiliki kamera yang dapat mengakses QR Code dan tersambung ke internet dengan hanya membaca URL yang telah dikodekan ke dalam QR Code. Pada umumnya QR Code digunakan untuk menanamkan informasi alamat situs suatu perusahaan.Di Indonesia, QR Code pertama kali diperkenalkan oleh KOMPAS. Dengan adanya QR Code pada koran harian di Indonesia ini, pembaca mampu mengakses berita melalui ponselnya bahkan bisa memberi masukan atau opini ke reporter atau editor surat kabar tersebut. QR Code dapat digunakan pada ponsel yang memiliki aplikasi pembaca QR Code dan memiliki akses internet GPRS atau WiFi atau 3G untuk menghubungkan ponsel dengan situs yang dituju via QR Code tersebut. Pelanggan, yang dalam hal ini adalah pengguna ponsel hanya harus mengaktifkan program pembaca QR Code, mengarahkan kamera ke QR Code, selanjutnya program pembaca akan secara otomatis memindai data yang telah tertanam pada QR Code. Jika QR Code berisikan alamat suatu situs, maka pelanggan dapat langsung mengakses situs tersebut tanpa harus lebih dulu mengetikkan alamat dari situs yang dituju. Jika ingin mengakses QR Code dengan ponsel tanpa kamera, maka hal pertama yang harus dilakukan oleh pengguna adalah dengan menjalankan terlebih dahulu aplikasi peramban yang ada pada ponsel, lalu masukkan URL halaman yang bersangkutan, selanjutnya masukkan “ID” atau 7 digit nomor yang tertera di bawah kode dan klik tombol Go, maka pengguna akan memperoleh konten digital yang diinginkan. Hal ini tentu mempermudah pelanggan dalam mendapatkan informasi yang ditawarkan oleh pemilik usaha. Jenis-jenis aplikasi yang dapat membaca QR Code antara lain misalnya Kaywa Reader , yang dapat di instal pada ponselnokia, iMatrix, aplikasi untuk iPhonedan 4 ZXing Decoder Online yang dapat digunakan untuk mendekode QR Code berupa imaji dengan memasukkan URL image maupun dengan menguploadnya. QR Code memiliki kapasitas tinggi dalam data pengkodean, yaitu mampu menyimpan semua jenis data, seperti data numerik, data alphabetis, kanji,kana,hiragana,simbol,dan kode biner. Secara spesifik, QR Code mampu menyimpan data jenis numerik sampai dengan 7.089 karakter, data alphanumerik sampai dengan 4.296 karakter, kode binari sampai dengan 2.844 byte, dan huruf kanji sampai dengan 1.817 karakter. Selain itu QR Code memiliki tampilan yang lebih kecil daripada kode batang.Hal ini dikarenakan QR Code mampu menampung data secara horizontal dan vertikal, oleh karena itu secara otomatis ukuran dari tampilannya gambar QR Code bisa hanya seperspuluh dari ukuran sebuah kode batang.Tidak hanya itu QR Code juga tahan terhadap kerusakan, sebab QR Code mampu memperbaiki kesalahan sampai dengan 30%.Oleh karena itu, walaupun sebagian simbol QR Code kotor ataupun rusak, data tetap dapat disimpan dan dibaca. Tiga tanda berbentuk persegi di tiga sudut memiliki fungsi agar simbol dapat dibaca dengan hasil yang sama dari sudut manapun sepanjang 360 derajat. 2.5.2 Struktur QR Code QR Code adalah simbol jenis matriks dengan struktur sel diatur dalam persegi.Ini terdiri dari pola fungsi untuk mempermudah pembacaan data dan area data di mana data disimpan.QR Kode memiliki pola pencarian, pola penataan, pola waktu, dan zona tenang. Gambar 2.3Struktur QR Code 5 1. Pola Pencarian Pola untuk mendeteksi posisi QR Code. Dengan mengatur pola ini di tiga sudut dari simbol, posisi, ukuran ,dan sudut simbol dapat dideteksi . Pola finder ini terdiri dari struktur yang dapat dideteksi segala arah (360°) . 2. Pola Penataan Pola untuk mengoreksi distorsi dari QR Code.Hal ini sangat efektif untuk mengoreksi distorsi nonlinear. Pusat koordinat pola keselarasan akan diidentifikasi untuk mengoreksi distorsi simbol. Untuk tujuan ini ,sebuah sel isolasi hitam ditempatkan dalam pola keselarasan untuk membuatnya lebih mudah untuk mendeteksi pusat koordinat pola keselarasan. 3. Pola Waktu Pola untuk mengidentifikasi pusat koordinat setiap sel dalam QR Code dengan pola hitam dan putih diaturbergantian yang diatur bergantian.Hal ini digunakan untuk mengoreksi pusat koordinat sel data bila simbol yang rusak atau ketika ada kesalahan sel.Diatur dalam kedua arah vertikal dan horisontal. 4. Zona Diam Sebuah ruang batas yang diperlukan untuk membaca QR Code.Zona tenang ini membuat lebih mudah untuk memiliki simbol terdeteksi dari antara gambar dibaca oleh sensor CCD. 5. Luas data Data QR Kode akan disimpan (dikodekan) ke daerah data. Bagian abu-abu pada Gambar merupakan area tersebut.Hal tersebut merupakan data akan dikodekan ke dalam angka biner '0 'dan '1' berdasarkan aturan encoding. Angka-angka biner '0 'dan '1 ' akan diubah menjadi sel hitam dan putih. 2.3 Aplikasi Mobile 2.3.1 Pengenalan Perangkat Mobile Perangkat mobile memiliki banyak jenis dalam hal ukuran, desain dan layout, tetapi mereka memiliki kesamaan karakteristik yang sangat berbeda dari sistem desktop. 1. Ukuran yang kecil 6 Perangkat mobile memiliki ukuran yang kecil.Konsumen menginginkan perangkat yang terkecil untuk kenyamanan dan mobilitas mereka. 2. 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. 3. 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 harddisk dan RAM, Anda dapat menemukan mereka dalam ukuran yang pas dengan sebuah kemasan kecil. 4. 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 oleh baterai-baterai. 5. Kuat dan dapat diandalkan Karena perangkat mobile selalu dibawa kemana saja, mereka harus cukup kuat untuk menghadapi benturan-benturan, gerakan, dan sesekali tetesan-tetesan air. 6. Konektivitas yang terbatas Perangkat mobile memiliki bandwith rendah, beberapa dari mereka bahkan tidak tersambung.Kebanyakan dari mereka menggunakan koneksi wireless. 7. 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. 7 2.3.2 Konsep Aplikasi Mobile Mobile dapat diartikan sebagai “berpindah” jadi aplikasi mobile berarti aplikasi yang dapat dijalankan walaupun pengguna berpindah atau karena pengguna melakukan gerakan perpindahan.Oleh sebab itu, alat yang paling populer dalam aplikasi mobile adalah ponsel. Ada beberapa tipe dalam aplikasi mobile, dapat dijelaskan sebagai berikut: 1. Based on technology used a) Server-Request Based Berbicara mengenai server-request based, perangkat mobile yang termasuk dalam kategori ini merequest (melakukan permintaan) dari server. Perangkat memakai WAP, menggunakan WML yakni sebuah markup language khusus berbasis XML.Keuntungan dari server-request based adalah plaformnya yang independent, mudah diterapkan, serta pengguna ditawarkan jenis aplikasi yang beragam. Sementara kerugiannya adalah masih banyak perangkat mobile yang belum mendukung WAP, dikenakannya biaya untuk data, serta interface yang terbatas.Di kehidupan nyata, implementasi dari dari server-request based ini sebagai berikut menggunakan web server dengan pengaturan tambahan di konfigurasi dan file WML dibuat selayaknya membuat file HTML. b) SMS Based SMS (Short Message Service) adalah pengiriman pesan singkat antara perangkat mobile dengan sebuah server. Namun pada SMS based, karakternya hanya terbatas kurang lebih 160 karakter.Platformnya yang independen serta perangkat mobile yang sebagian besar sudah menerapkan SMS adalah keuntungan dari SMS based. Namun, tetap saja ditemukan kerugian, diantaranya pembayaran untuk setiap pengiriman sms, interface yang hanya text dan user harus mengingat sebagian besar perintahnya serta panjang teks sangat terbatas.Untuk implementasinya, SMS based menggunakan interface antara perangkat mobile dengan server dan aplikasi menunggu data dari interface dan mengirim data melalui interface tersebut. 8 c) SIM-card Based Aplikasi diletakkan di atas SIM-card, serta dapat diakses melalui menu baru yang akan muncul di ponsel dan pengiriman data lewat sms. Namun khusus untuk javacard, aplikasi bersifat downloadable.Keuntungan dari sim-card based ini adalah data disimpan secara lokal dan dapat digunakan bila akan berganti perangkat mobile. Namun kerugiannya adalah size yang terbatas sehingga aplikasi harus sangat kecil serta sulit diterapkan.Karena implementasinya adalah user harus mendownload javacard serta menggunakan simulator. d) Mobile Equipment Based Aplikasi diletakkan di perangkat mobile, contoh pemrogramannya seperti sistem operasi yang dapat berjalan di perangkat mobile serta pengiriman data melalui SMS.Keuntungan yang diperoleh seperti interface yang sangat mudah serta jenis aplikasi yang beragam, bahkan dapat diguakan untuk aplikasi berat.Namun, sifatnya yang berupa platform dependent sehingga bila mengubah perangkat mobile kemungkinan aplikasi dan data tidak dapat digunakan. 2. Based on function a) Information, pengiriman informasi ke perangkat mobile pengguna. b) Communication, komunikasi antara pengguna dengan satu atau lebih pengguna yang lain c) Entertainment, aplikasi hiburan seperti games d) Productivity Tools, aplikasi yang dapat meningkatkan prouktivitas walaupun sering berpindah e) Commerce and Banking, transaksi jual beli melalui perangkat mobile f) Location Based, aplikasi yang dapat mengubah data sesuai dengan lokasi user. Lokasi dapat ditentukan oleh GPS dan sel yang ditempati oleh user. Dari segi bisnis, perangkat mobile memainkan peranan yang penting karena untuk menjalankan aplikasi ini, dibutuhkan biaya yang mahal serta para operator cenderung mencari aplikasi yang menguntungkan. “Always look for a way an application can make money”, seperti B2C yakni komersial, kemudian 9 B2B menjual aplikasi ke bisnis serta pulsa/SMS seperti mengusahakan user sering menggunakan SMS. 2.4 Sistem Operasi Android 2.4.1 Pengantar Sistem Operasi Android Android adalah software untuk perangkat mobile yang mencakup sistem operasi, middleware dan aplikasi kunci.Pengembangan aplikasi pada platform Android menggunakan bahasa pemrograman Java. Serangkaian aplikasi inti Android antara lain klien email, program SMS, kalender, peta, browser, kontak, dan lain-lain. Gambar 2.4 Logo Android Logo android sering disebut sebagai si robot hijau.Logo tersebut terinspirasi robot R2D2 di starwars. Dengan menyediakan sebuah platform pengembangan yang terbuka, pengembang Android menawarkan kemampuan untuk membangun aplikasi yang sangat kaya dan inovatif. Pengembang bebas untuk mengambil keuntungan dari perangkat keras, akses informasi lokasi, menjalankan background services, mengatur alarm, tambahkan pemberitahuan ke status bar, dan banyak lagi. Android bergantung pada versi Linux 2.6 untuk layanan sistem inti seperti keamanan, manajemen memori, manajemen proses, network stack, dan model driver. Kernel juga bertindak sebagai lapisan abstraksi antara hardware dan seluruh software stack. Android adalah sistem operasi untuk telepon seluler-ponsel-handphone yang berbasis Linux.Android menyediakan platform terbuka bagi para pengembang buat menciptakan aplikasi mereka sendiri untuk digunakan oleh bermacam peranti bergerak.Awalnya, Google Inc. membeli Android Inc., 10 pendatang baru yang membuat peranti lunak untuk ponsel. Kemudian untuk mengembangkan Android, dibentuklah Open Handset Alliance, konsorsium dari 34 perusahaan peranti keras, peranti lunak, dan telekomunikasi, termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia. Pada saat perilisan perdana Android, 5 November 2007, Android bersama Open Handset Alliance menyatakan mendukung pengembangan standar terbuka pada perangkat seluler. Di lain pihak, Google merilis kode–kode Android di bawah lisensi Apache, sebuah lisensi perangkat lunak dan standar terbuka perangkat seluler. Di dunia ini terdapat dua jenis distributor sistem operasi Android.Pertama yang mendapat dukungan penuh dari Google atau Google Mail Services (GMS) dan kedua adalah yang benar–benar bebas distribusinya tanpa dukungan langsung Google atau dikenal sebagai Open Handset Distribution (OHD). 2.4.2 Fitur Fitur yang tersedia dalam Sistem Operasi Android adalah: 1. Kerangka aplikasi: itu memungkinkan penggunaan dan penghapusan komponen yang tersedia. 2. Dalvik mesin virtual: mesin virtual dioptimalkan untuk perangkat mobile. 3. Grafik: grafik di 2D dan grafis 3D berdasarkan pustaka OpenGL. 4. SQLite: untuk penyimpanan data. 5. Mendukung media: audio, video, dan berbagai format gambar (MPEG4, H.264, MP3,AAC, AMR, JPG, PNG, GIF) GSM, Bluetooth, EDGE, 3G, dan WiFi (hardwaredependent) Kamera, Global Positioning System (GPS), kompas, dan accelerometer (tergantung hardware) 2.4.3 Android bagi Komunitas Terbuka (Oper Source) Android memiliki berbagai keunggulan sebagai software yang memakai basis kode komputer yang bisa didistribusikan secara terbuka (open source) sehingga pengguna bisa membuat aplikasi baru di dalamnya.Android memiliki 11 aplikasi native Google yang terintegrasi seperti pushmailGmail, Google Maps, dan Google Calendar. Para penggemar open source kemudian membangun komunitas yang membangun dan berbagi Android berbasis firmware dengan sejumlah penyesuaian dan fitur-fitur tambahan, seperti FLAC lossless audio dan kemampuan untuk menyimpan download aplikasi pada microSDcard. Mereka sering memperbaharui paket-paket firmware dan menggabungkan elemen-elemen fungsi Android yang belum resmi diluncurkan dalam suatu carrier-sanction firmware. 2.5 Java Java adalah sebuah bahasa pemrograman yang populer dikalangan paraakademisi dan praktisi komputer.Javajuga dapat dijalankan di telepon genggam. Java dikembangkan pertama kali olehJames Gosling dari SunMicrosystems pada tahun 1990-an. Java pertamakali dikembangkan untuk memenuhi kebutuhan akan sebuah bahasakomputer yang ditulis satu kali dan dapat dijalankan dibanyak sistemkomputer berbeda tanpa perubahan kode berarti. Kebanyakan bahasakomputer yang ada memiliki keterbatasan migrasi sistem yang berbeda.Java diciptakan sebagai sebuah bahasa baru dengan implementasi yangberbeda.Bahasa Java merupakan bahasa berorientasi objek yang diturunkandari C++ dengan banyak penyempurnaan.Pada umumnya, para pakarpemrograman berpendapat bahwa bahasa Java memiliki konsep yangkonsisten dengan teori pemrograman objek dan aman untuk digunakan.Kini universitas-universitas di berbagai negara berpaling dari Pascal atauC++ kemudian memilih Java sebagai bahasa untuk belajar pemrograman. 2.5.1 Versi Awal Versi awal Java ditahun 1996 sudah merupakan versi release sehingga dinamakan Java Versi 1.0. Java versi ini menyertakan banyak paket standar awal yang terus dikembangkan pada versi selanjutnya: 1. java.lang: Peruntukan kelas elemen-elemen dasar. 12 2. java.io: Peruntukan kelas input dan output, termasuk penggunaan berkas. 3. java.util: Peruntukan kelas pelengkap seperti kelas struktur data dan kelas kelas penanggalan. 4. java.net: Peruntukan kelas TCP/IP, yang memungkinkan berkomunikasi dengan komputer lain menggunakan jaringan TCP/IP. 5. java.awt: Kelas dasar untuk aplikasi antarmuka dengan pengguna (GUI) 6. java.applet: Kelas dasar aplikasi antar muka untuk diterapkan pada penjelajah web. 2.5.2 1. Kelebihan Multiplatform. Kelebihan utama dari Java ialah dapat dijalankan di beberapa platform / sistem operasi komputer, sesuai dengan prinsip tulis sekali, jalankan di mana saja. Dengan kelebihan ini pemrogram cukup menulis sebuah program Java dan dikompilasi (diubah, dari bahasa yang dimengerti manusia menjadi bahasa mesin / bytecode) sekali lalu hasilnya dapat dijalankan di atas beberapa platform tanpa perubahan. Kelebihan ini memungkinkan sebuah program berbasis java dikerjakan diatas operating systemLinux tetapi dijalankan dengan baik di atas Microsoft Windows. Platform yang didukung sampai saat ini adalah Microsoft Windows, Linux, Mac OS dan Sun Solaris. Penyebabnya adalah setiap sistem operasi menggunakan programnya sendiri-sendiri (yang dapat diunduh dari situs Java) untuk meninterpretasikan bytecode tersebut. 2. OOP (Object Oriented Programming - Pemrogram Berorientasi Objek) merupakan paradigma pemrograman yang berorientasikan kepada objek. Semua data dan fungsi di dalam paradigma ini dibungkus dalam kelaskelas atau objek-objek. Bandingkan dengan logika pemrograman terstruktur. Setiap objek dapat menerima pesan, memproses data, dan mengirim pesan ke objek lainnya. Model data berorientasi objek dikatakan dapat memberi fleksibilitas yang lebih, kemudahan mengubah program, dan digunakan luas dalam teknik piranti lunak skala besar. Lebih jauh lagi, pendukung OOP mengklaim bahwa OOP lebih mudah dipelajari bagi 13 pemula dibanding dengan pendekatan sebelumnya, dan pendekatan OOP lebih mudah dikembangkan dan dirawat. 3. Perpustakaan kelas yang lengkap, Java terkenal dengan kelengkapan library/perpustakaan (kumpulan program program yang disertakan dalam pemrograman java) yang sangat memudahkan dalam penggunaan oleh para pemrogram untuk membangun aplikasinya. Kelengkapan perpustakaan ini ditambah dengan keberadaan komunitas Java yang besar yang terus menerus membuat perpustakaan-perpustakaan baru untuk melingkupi seluruh kebutuhan pembangunan aplikasi. 4. Bergaya C++, memiliki sintaks seperti bahasa pemrograman C++ sehingga menarik banyak pemrogram C++ untuk pindah ke Java. Saat ini pengguna Java sangat banyak, sebagian besar adalah pemrogram C++ yang pindah ke Java. Universitas-universitas di Amerika Serikat juga mulai berpindah dengan mengajarkan Java kepada murid-murid yang baru karena lebih mudah dipahami oleh murid dan dapat berguna juga bagi mereka yang bukan mengambil jurusan komputer. 5. Pengumpulan sampah otomatis, memiliki fasilitas pengaturan penggunaan memori sehingga para pemrogram tidak perlu melakukan pengaturan memori secara langsung (seperti halnya dalam bahasa C++ yang dipakai secara luas). 2.6 Eclipse IDE Eclipse adalah sebuah IDE (Integrated Development Environment) untuk mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platform-independent). Berikut ini adalah sifat dari Eclipse: 1. Multi-platform: Target sistem operasi Eclipse adalah Microsoft Windows, Linux, Solaris, AIX, HP-UX dan Mac OS X. 2. Mulit-language: Eclipse dikembangkan dengan bahasa pemrograman Java, akan tetapi Eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lainnya, seperti C/C++, Cobol, Python, Perl, PHP, dan lain sebagainya. 14 3. Multi-role: Selain sebagai IDE untuk pengembangan aplikasi, Eclipse pun bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat lunak, seperti dokumentasi, test perangkat lunak, pengembangan web, dan lain sebagainya. Eclipse pada saat ini merupakan salah satu IDE favorit dikarenakan gratis dan open source, yang berarti setiap orang boleh melihat kode pemrograman perangkat lunak ini. Selain itu, kelebihan dari Eclipse yang membuatnya populer adalah kemampuannya untuk dapat dikembangkan oleh pengguna dengan komponen yang dinamakan plug-in. 2.6.1 Arsitektur Sejak versi 3.0, Eclipse pada dasarnya merupakan sebuah kernel, yang mengangkat plug-in. Apa yang dapat digunakan di dalam Eclipse sebenarnya adalah fungsi dari plug-in yang sudah diinstal. Ini merupakan basis dari Eclipse yang dinamakan Rich Client Platform (RCP). Berikut ini adalah komponen yang membentuk RCP: 1. Core platform 2. OSGi 3. SWT (Standard Widget Toolkit) 4. JFace 5. Eclipse Workbench Secara standar Eclipse selalu dilengkapi dengan JDT (Java Development Tools), plug-in yang membuat Eclipse kompatibel untuk mengembangkan program Java, dan PDE (Plug-in Development Environment) untuk mengembangkan plug-in baru. Eclipse beserta plug-in-nya diimplementasikan dalam bahasa pemrograman Java. Konsep Eclipse adalah IDE yang terbuka (open), mudah diperluas (extensible) untuk apa saja, dan tidak untuk sesuatu yang spesifik. Jadi, Eclipse tidak saja untuk mengembangkan program Java, akan tetapi dapat digunakan untuk berbagai macam keperluan, cukup dengan menginstal plug-in yang dibutuhkan. Apabila ingin mengembangkan program C/C++ terdapat plug- 15 inCDT(C/C++ Development Tools). Selain itu, pengembangan secara visual bukan hal yang tidak mungkin oleh Eclipse, plug-inUML2 tersedia untuk membuat diagram UML. Dengan menggunakan PDE setiap orang bisa membuat plug-in sesuai dengan keinginannya. Salah satu situs yang menawarkan plug-in secara gratis seperti Eclipse downloads by project. 2.6.2 Versi Peluncuran Sejak tahun 2006, EclipseFoundation mengkoordinasikan peluncuran Eclipse secara rutin dan simultan yang dikenal dengan namaSimultaneous Release. Setiap versi peluncuran terdiri dari EclipsePlatform dan juga sejumlah proyek yang terlibat dalam proyek Eclipse.Tujuan dari sistem ini adalah untuk menyediakan distribusi Eclipse dengan fitur-fitur dan versi yang terstandarisasi.Hal ini juga dimaksudkan untuk mempermudah deployment dan maintenance untuk sistem enterprise, serta untuk kenyamanan.Peluncuran simultan dijadwalkan pada bulan Juni setiap tahunnya. 2.7 Android Development Kit Android pengembangan perangkat lunak adalah proses dimana aplikasi baru yang dibuat untuk sistem operasi Android . Aplikasi biasanya dikembangkan di Jawa bahasa pemrograman menggunakan Android Software Development Kit , tetapi alat pembangunan lainnya yang tersedia. Pada April 2011 lebih dari 200.000 aplikasi telah dikembangkan untuk Android, dengan lebih dari 3 miliar download. PlatformAndroid juga telah tumbuh menjadi favorit di kalangan pengembang mobile.Sebuah penelitian menunjukkan bahwa lebih dari 67% dari pengembang mobile menggunakan platform, pada saat publikasi. 2.7.1 Android SDK Android software development kit (SDK) meliputi seperangkat alat pengembangan. Ini termasuk debugger ,perpustakaan , sebuah handset emulator (berdasarkan QEMU), dokumentasi, kode contoh, dan tutorial. Saat ini platform pengembangan yang didukung termasuk 16 komputer yang menjalankan Linux(setiap desktop modern distribusi Linux), MacOSX 10.4.9 atau yang lebih baru, WindowsXP atau nanti. Secara resmi didukung lingkungan pengembangan terpadu (IDE) adalah Eclipse (saat ini 3.5 atau 3.6) menggunakan Android Development Tools (ADT) Plugin, meskipun pengembang dapat menggunakan editor teks apapun untuk mengedit file XMLJava dan kemudian menggunakan baris perintah alat ( Java Development Kit dan Apache Ant diperlukan) untuk menciptakan, membangun dan debug aplikasi Android serta melekat kontrol perangkat Android (misalnya, memicu reboot, menginstal paket perangkat lunak (s) jarak jauh). Perangkat tambahan untuk Android SDK berjalan seiring dengan perkembangan platform Android secara keseluruhan.SDK juga mendukung versi dari platformAndroid dalam kasus pengembang ingin menargetkan aplikasi mereka di perangkat yang lebih tua. Alat pengembangan merupakan komponen download, sehingga setelah satu telah mengunduh versi terbaru dan platform, platform yang lebih tua dan alat juga dapat dilakukandownload untuk pengujian kompatibilitas. Aplikasi Android yang dikemas dalam APK.Format dan disimpan di bawah /data/appfolder pada OSAndroid (folder dapat diakses hanya untuk pengguna root untuk alasan keamanan).APK paket berisi.Dexfile (dikompilasi file kode byte disebut Dalvikexecutable) fileresource, dll. 17