BAB II LANDASAN TEORI
2.
Landasan Teori Dalam membuat tugas akhir ini yaitu “ Informasi Museum di Jakarta Selatan
Berbasis Mobile” membutuhkan landasan-landasan teori yang berguna untuk memberikan petunjuk kepada penulis agar aplikasi ini dapat terselesaikan dengan baik. 2.1.
Sekilas Tentang Objek Wisata Museum DKI Jakarta Dareah Khusus Ibu Kota Jakarta adalah Ibu Kota Negara Republik Indonesia, kota
metropolitan terbesar ke enam di dunia dan kota terbesar di Indonesia. Jakarta adalah Pusat Pemerintahan Jakarta juga merupakan pusat bisnis dan perdagangan. Hal ini pula yang menjadi magnet bagi orang-orang untuk pergi ke Jakarta yang merupakan daerah tujuan urbanisasi yang menyebabkan Jakarta semakin unik karena hampir semua suku di Indonesia ada di Jakarta, ini pula yang menjadi daya tarik wisata di Jakarta. 2.2.
Aplikasi Mobile Mobile Application atau dalam bahasa Indonesianya : Aplikasi Bergerak adalah
suatu aplikasi yang di buat secara khusus untuk berjalan pada mobile device. Mobil device ini pada umumnya dikelompokkan berdasarkan platformnya, beberapa kategori platform ini adalah : Blackberry Symbian Windows Mobile Android iPhone dll. Pada umumnya Mobile Application spesifik dikembangkan berdasarkan masing-masing platform. Mobile Application biasanya di install ke mobile device dengan cara yang mudah,
8
cukup dengan OTA atau Over The Air, Bluetooth dan send file via (Email, Direct Download by URL, send file BBM or Chat). Alat komunikasi telepon seluler atau sering disebut Handphone atau HP pada saat ini sudah bukan merupakan barang mewah, dan hampir sebagian besar masyarakat Indonesia memilikinya. Keberadaan alat tersebut dapat dirasakan manfaat nya untuk saling berkomunikasi pada saat bersamaan. Fasilitas yang ditawarkan ponsel pun beragam, mulai dari SMS (Short Message Service), email, bahkan sekarang sebuah aplikasi dapat dijalankan di ponsel. Aplikasi yang ada di ponsel sangat beragam, aplikasi game , aplikasi perkantoran akan sangat membantu untuk memudahkan pekerjaan. Aplikasi yang dapat dijalankan di ponsel dibuat dengan menggunakan bahasa pemrograman C ataupun Java. Perkembangan teknologi mobile devices yang cepat membuat fungsi dari telepon seluler tersebut semakin bertambah tidak hanya untuk melakukan hubungan telepon dengan orang lain dan mengirimkan pesan atau SMS tetapi juga sebagai sarana komunikasi yang lain. Seiring dengan perkembangan teknologi nirkabel dan kemudahan akses internet, para produsen kemudian mencari cara baru untuk beriklan, mengapa ponsel menjadi menarik untuk dijadikan media promosi? Media-media konvensional yang selama ini kerap dijadikan sarana beriklan seperti televisi, radio dan media cetak menjadi kurang efektif mengingat pola konsumsi informasi yang dilakukan konsumen kini sangat berbeda. 2.3.
Java Menurut Eko Priyo Utomo, 2013. Java merupakan salah satu bahasa pemrograman
yang bersifat multiplatform dengan slogan dari para pengembangnya adalah ‘Write once run everywhere” sehingga aplikasi yang dikembangkan menggunakan bahasa Java akan dapat dijalankan pada berbagai macam platform atau system operasi. Java pertama kali lahr dari The Green Project yang telah berjalan selama 18 bulan, dimulai pada awal tahun 1991 sampai tahun 1992. Project tersebut dimotori oleh Patrick Naughton, Mike Sheridon, James Gosling dan Bill Joy beserta sembilan programmer lainnya dari Sun Microsystems. Salah satu hasil project ini adalah mascot Duke yng dibuat oleh Joe Palrang. Pada perkembangan selanjutnya, project ini diberi nama Oak, diambil dari nama pohon yang tumbuh didepan jendela ruangan kerja James Gosling. Selanjutnya nama Oak ini tidak dipakai lagi karena sudah ada perangkat lunak lain yang telah terdaftar dengan 9
menggunakan nama yang sama. Sebagai pengganti digunakan nama “Java” yang diambil dari nama kopi murni yang menjadi kesukaan Gosling. Para pengembang bahasa Java menginginkan agar bahasa yang mereka buat nantinya dapat terintegrasi dengan pirantipiranti yang ada sehingga dapat berkomunikasi satu sama lain. Sun Microsystem pun kemudian membuat sebuah JVM (Java Runtime Machnie) yang diimplementasikan dalam bentuk JRE (Java Runtime Environment). Versi Java yang telah dirilis beserta tanggal rilisnya seperti berikut : JDK 1.0 (23 Januari 1996) JDK 1.1 (19 Februari 1997) J2SE 1.2 (8 Desember 1998) J2SE 1.3 (8 Mei 2000) J2SE 1.4 (6 Februari 2002) J2SE 5.0 (30 September 2004) Java SE 6 (11 Desember 2006) Java SE 7 (28 Juli 2011) Kompiler dan interpreter untuk program Java berbentuk Java Development Kit (JDK) yang diproduksi oleh Sun Microsystems. JDK ini dapat didownload gratis dari situs http://java.sun.com.
Interpreter untuk program Java sendiri sering juga disebut Java
Runtime atau Java Virtual Machine. Interpreter Java, tanpa kompilernya, disebut Java Runtime Environment (JRE) dapat didownload juga di situs yang sama. Untuk mengembangkan program Java dibutuhkan JDK, sementara jika hanya ingin menjalankan bytecode Java cukup dengan JRE saja. Namun untuk mengeksekusi applet (sebuah bytecode Java juga) Anda biasanya tidak perlu lagi mendownload JRE karena browser yang Javaenabled telah memiliki JVM sendiri.
2.3.1. Kelebihan Java Bahasa pemrograman lain yang telah ada sebelum Java lahir sudah merupakan Bahasa ang baik dan mudah dipelajari oleh programmer professional. Akan tetapi para programmer ini menginginkan sesuatu yang baru yang memiliki banyak hal yang menyelesaikan masalah mereka. Utamanya adalah keamanan kode mereka. Hal ini
10
melahirkan pikiran yang revolusioner untuk menemukan Bahasa pemrograman lain yang disebut Java. Tidak hanya keamanan tapi juga beberapa hal yang sering disebut sebagai Java-Buzzword. Kata-kata ini menjelaskan berbagai fitur tambahan dan beberapa hal yang membuat Java demikian sukses dan diterima oleh dunia perangkat lunak. Berikut ini keuntungan dari Java antara lain : 1) Java merupakan Bahasa pemrograman berorientasi objek, mudah dipelajari, terutama untuk programmer yang sudah menguasai C atau C++ 2) Bahasa pemrograman Java menganjurkan prakte membuat program yang baik dan automatic garbage collection membantu anda untuk menghindari kebocoran memori. Orientasi objeknya, arsitektur komponen JavaBeans dan jangakauannya yang luas, API yang mudah diperluas, memungkinkan anda menggunakan kode yang ada. 3) Bahasa pemrograman Java lebih mudah dari C++, pemrograman akan menjadi 2 kali lipat lebih cepat dengan jumlah baris yang jauh lebih sedikit. 4) Anda dapat menjalankan program Anda pada banyak platform dengan TIDAK menggunakan library yang ditulis spesifik untuk platform tertentu 5) Tulis sekali, jalankan di mana saja . Karena aplikasi yang ditulis dalam bahasa Java dikompilasi ke dalam kode byte yang bebas platform, aplikasi yang ditulis dapat jalan secara konsisten pada platform apa saja. 6) Dengan Java Web Start, pengguna program Anda akan dapat menggunakan aplikasi Anda dengan mudah. Sistem pengecekan versi otomatis pada saat program dimulai menjamin pengguna Anda selalu menjalankan versi terkini. Apabila versi baru tersedia, Java Web Start akan melakukan instalasi secara otomatis.
2.3.2. Kekurangan Java Diantara kekurangan Java antara lain adalah : 1) Penggunaan memori yang cukup banyak, lebih besar daripada Bahasa tingkat tinggi sebelum generasi Java, seperti C/C++ dan Pascal. Namun hal ini memang sesuai dengan fitur beragam yang dimiliki oleh Java. 11
2) Mudah didekompilas. Dekompilasi adalah proses membalikkan dari kode jadi menjadi kode sumber. Ini dimungkinkan karena kode jadi Java merupakan bytecode yang menyimpan banyak atribut Bahasa tingkat tinggi, seperti nama-nama kelas, metode dan tipe data. 3) Tulis sekali, jalankan dimana saja. Masih ada beberapa hal yang tidak kompatibel antara platform satu dengan platform lain. Untuk J2SE misalnya SWT-AWT bridge yang sampai sekarang tidak berfungsi pada Mac OS X. 2.4.
Android Android adalah sebuah sistem operasi yang berbasis Linux untuk telepon seluler
seperti telepon pintar dan komputer tablet. Sistem operasi ini bersifat open source (terbuka) sehingga para programmer dapat membuat aplikasi secara mudah untuk digunakan oleh bermacam perangkat bergerak. Pada awalnya yang mengembangkan Sistem Operasi Android ini adalah Android Inc, kemudian dibeli oleh Google Inc yang setelah itu terus menerus melakukan pengembangan ke teknologi yang lebih baik dan dikeluarkan oleh Google Inc pada bulan November 2007. Pemrograman perangkat ini menggunakan Bahasa pemrograman Extensible Markup Language (XML) dan Java.
2.4.1. Sistem Operasi Android 2.4.1.1.
Pengenalan Sistem Operasi Android
Android dalam buku karya Agus Wahadyo & Sudarma S, 2012 adalah system operasi yang biasa disematkan pada gadget, baik itu handphone atau tablet. Android adalah system operasi untuk telepon seluler yang merupakan hasil modifikasi linux. Android sejauh ini termasuk system operasi yang cepat sekali memperbarui software mereka. Jangan heran jika saat ini Android, baik itu tablet atau handphone begitu digandrungi. Bisa dibilang peranan table dan handphone ini bias menggantikan peran dari sebuah komputer jinjing apabila digunakan untuk kebutuhan entertainment, seperti mendengarkan lagu, menonton video, mengiri email, bermain game juga kegiatan hiburan online lainnya. Android, Inc. didirikan di Palo Alto, California, pada bulan Oktober 2003 oleh Andy Rubin, Rich Miner , Nick Sears dan Chris White untuk mengembangkan perangkat seluler pintar yang lebih sadar akan lokasi dan preferensi penggunanya.Tujuan awal pengembangan Android adalah untuk mengembangkan sebuah sistem operasi canggih yang diperuntukkan
12
bagi kamera digital, namun kemudian disadari bahwa pasar untuk perangkat tersebut tidak cukup besar, dan pengembangan Android lalu dialihkan bagi pasar telepon pintar untuk menyaingi Symbian dan Windows Mobile (iPhone Apple belum dirilis pada saat itu).Meskipun
para
pengembang
Android
adalah
pakar-pakar
teknologi
yang
berpengalaman, Android Inc. dioperasikan secara diam-diam, hanya diungkapkan bahwa para pengembang sedang menciptakan sebuah perangkat lunak yang diperuntukkan bagi telepon seluler. Masih pada tahun yang sama, Rubin kehabisan uang. Steve Perlman, seorang teman dekat Rubin, meminjaminya $10.000 tunai dan menolak tawaran saham di perusahaan. Google mengakuisisi Android Inc. pada tanggal 17 Agustus 2005, menjadikannya sebagai anak perusahaan yang sepenuhnya dimiliki oleh Google. Pendiri Android Inc. seperti Rubin, Miner dan White tetap bekerja di perusahaan setelah diakuisisi oleh Google. Setelah itu, tidak banyak yang diketahui tentang perkembangan Android Inc., namun banyak anggapan yang menyatakan bahwa Google berencana untuk memasuki pasar telepon seluler dengan tindakannya ini. Di Google, tim yang dipimpin oleh Rubin mulai mengembangkan platform perangkat seluler dengan menggunakan kernel Linux. Google memasarkan platform tersebut kepada produsen perangkat seluler dan operator nirkabel, dengan janji bahwa mereka menyediakan sistem yang fleksibel dan bisa diperbarui. Google telah memilih beberapa mitra perusahaan perangkat lunak dan perangkat keras, serta mengisyaratkan kepada operator seluler bahwa kerjasama ini terbuka bagi siapapun yang ingin berpartisipasi. Pada tanggal 5 November 2007, Open Handset Alliance (OHA) didirikan. OHA adalah konsorsium dari perusahaan-perusahaan teknologi seperti Google, produsen perangkat seluler seperti HTC, Sony dan Samsung, operator nirkabel seperti Sprint Nextel dan T-Mobile, serta produsen chipset seperti Qualcomm dan Texas Instruments. OHA sendiri bertujuan untuk mengembangkan standar terbuka bagi perangkat seluler. Saat itu, Android diresmikan sebagai produk pertamanya; sebuah platform perangkat seluler yang menggunakan kernel Linux versi 2.6. Telepon seluler komersial pertama yang menggunakan sistem operasi Android adalah HTC Dream, yang diluncurkan pada 22 Oktober 2008. 2.4.1.2.
Sejarah Sistem Operasi Android
13
Seperti teknologi lainnya, Android muncul tidak langsung canggih seperti saat ini. Teknologinya yang bersifat open source, terus berkembang dan selalu terbuka untuk digunakan dan dikembangkan siapa saja. Mungkin inilah yang membuat Android begitu dicintai. Versi beta muncul pertama kali pada November 2007, Android benar-benar dipasarkan dengan versi Android 1.0 pada September 2007 dengan kode nama Apple Pie. Android versi ini disematkan pada sebuah handphone HTC Dream. Pada versi ini fitur-fitur seperti Web Browser, Wifi, Blueetooth, SMS, Google Mail, Google Search, Media Player, Youtube Player, Google Maps, Google Calendar, Alarm dan fitur standar smartphone lainnya. Perkembangan Android terbagi menjadi beberapa versi hingga saat ini. Beberapa versi Android tersebut antara lain : a. Android 1.1 Google merilis Android versi 1.1 pada 9 Maret 2009. Android versi memperbaiki bugs yang ada pada system Android versi sebelumnya. Juga ada perbaikan dalam penggunaan speakerphone, menyimpan attachment dan system layout. b. Android 1.5 (Cupcake) Versi yang mulai menyematkan fitur-fitur seperti virtual keyboard yang bisa dimunculkan pada semua aplikasi dan bisa diputar secara vertical atau horizontal. FItur voice (suara) juga sudah ada di Android versi ini. Jadi jika Anda merasa kesulitan denga virtual keyboard untuk mengetik, Anda memiliki pilihan untuk memasukkan teks lewat suara. Versi ini juga sudah bisa melakukan sharing foto atau video via email, sms, atau youtube. c. Android 1.6 (Donut) Pada versi ini ada perbaikan pada Android Market. Di sini Anda bias mendapatkan berbagai aplikasi sesuai kebutuhan. Karena sifatnya yang terbuka untuk developer manapun, Android Market tumbuh dengan sangat cepat. Namun saat ini seiring munculnya aplikasi-aplikasi baru, aplikasi jahat juga ikut muncul. Versi 1.6 juga ada fitur Quick Search Box, memanggil aplikasi, Contact dan sebagainya yang bias Anda atur pengaktifannya sendiri. d. Android 2.0/2.1 (Éclair)
14
Kemampuan baru un versi ini adalah sinkronisasi daftar kontak dari berbagai akun. Fitur lain, Quick Contact yang akan memudahkan Anda dalam menghubungi teman Anda, baik itu via telpon, Gmail atau yang lainnya. Dukungan fitur Bluetooth 2.1 juga mulai bias digunakan dari versi ini. Juga adanya fitur live wallpaper yang membuat tampilan wallpaper bergerak dan lebih hidup.
e. Android 2.2 (Froyo : Frozen Yogurt) Versi ini menyempurnakan proses dalam system agar dapat bekerja lebih cepat. Juga mengubah cara kerja system agar aplikasi dapat dijalankan dari katu memori SD Card, walaupun tidak bisa diterapkan pada semua aplikasi. Di versi 2.2 ini Android sudah mulai bisa dijadikan portable wi-fi hotspot. Perbaikan lainnya juga pada sisi browser yang aksesnya lebih cepat. Juga ada perbaikan dari Android Market yang menyematkan fitur update pada aplikasi, bisa dijalankan otomatis juga bisa dijalankan manual. f. Android 2.3 (Gingerbread) Versi ini memperbaiki performa untuk kebutuhan bermain game, seperti animasi yang lebih halus, kualitas multimedia dan respon yang meningkat. Adanya video chat lewat Google Talk, sudah mendukung dual Camera depan belakang, perbaikan fitur copy paste efek suara dan lain-lainnya. g. Android 3.0/3.1/3.2 (Honeycomb) Android versi ini secara khusus diperuntukkan untuk tablet. Dari sisi fitur tampilan dan pengoperasian banyak berbeda dari Android 2.x. Namun walaupun begitu, fiturfitur dan kecanggihan Android tetaplah sama, hanya saja kebiasaan dengan tombol di body dihilangkan dan beberapa hal lainnya yang cukup berbeda. Yang menarik adalah kemampuannya membace perangkat via USB, seperti untuk membaca flashdisk, mouse, keyboard bahkan joystick. h. Android 4.0 (ICS: Ice Cream Sandwich) Android versi ini resmi diluncurkan Oktober 2011 di Hongkong. Beberapa gadget sudah disematkan Android ini. Versi ini hadir dengan tampilan layout yang lebih menarik, termasuk font Roboto yang futuristic. Browser dan kamera juga mengalami beberapa perbaikan. Fitur yang paling sering dibicarakan orang adalah fitur Face 15
Unlock, membuka kunci dengan deteksi wajah. Ada juga fitur Android Beam, komunikasi langsung antara perangkat Android dimana kita bisa bertukar link, kontak, alamat, youtube dan lain-lain.
2.5.
Fitur Android Perangkat Android memiliki beberapa fitur perangkat keras dan lunak didalamnya ,
yang dapat dimanfaatkan developer dalam
membangun aplikasi. Fitur tersebut dibagi
menjadi 2 bagian yaitu :
2.5.1. Fitur Perangkat Keras Hampir seluruh aspek kehidupan manusia saat ini tidak dapat dilepaskan dari teknologi, khususnya teknologi komputer. Dapat dilihat bahwa untuk menuliskan suatu dokumen, orang cenderung sudah meninggalkan mesin ketik manual dan sudah digantikan perannya oleh komputer. Supaya komputer dapat digunakan untuk mengolah data, maka harus berbentuk suatu sistem yang disebut dengan sistem komputer. Secara umum, sistem terdiri dari elemen-elemen yang saling berhubungan membentuk satu kesatuan untuk melaksanakan suatu tujuan pokok dari sistem tersebut. Tujuan pokok dari sistem komputer adalah mengolah data untuk menghasilkan informasi sehingga perlu didukung oleh elemen-elemen yang terdiri dari perangkat keras (hardware), perangkat lunak (software), dan brainware. Perangkat keras adalah peralatan komputer itu sendiri, perangkat lunak adalah program yang berisi perintah-perintah untuk melakukan proses tertentu, dan brainware adalah manusia yang terlibat di dalam mengoperasikan serta mengatur sistem komputer. Ketiga elemen sistem komputer tersebut harus saling berhubungan dan membentuk satu kesatuan. Perangkat keras tanpa perangkat lunak tidak akan berarti apa-apa, hanya berupa benda mati. Kedua perangkat keras dan lunak juga tidak dapat berfungsi jika tidak ada manusia yang mengoperasikannya. Perangkat keras adalah bagian-bagian dari material komputer. Dalam hal ini perangkat keras antara lain :
16
1. Touchscreen adalah sebuah perangkat input komputer yang bekerja dengan adanya sentuhan tampilan layar menggunakan jari atau pena digital. 2. Perangkat Android memiliki fitur layar sentuh (touchscreen) yang memberikan beberapa kemungkinan bagi pengguna untuk berinteraksi dengan aplikasi dengan menggunakan jari. Pengguna dapat melakukan swipe, flip, drag dan pinch untuk zoom. Android juga mendukung multitouch yang berarti keseluruhan layar dapat disentuh dengan satu atau lebih jari pada saat bersamaan. 3. GPS adalah sistem untuk menentukan letak di permukaan bumi dengan bantuan penyelarasan (synchronization) sinyal satelit. 4. Sistem operasi Android mendukung GPS yang memungkin developer untuk mengakses lokasi pengguna. Contoh applikasi yang memanfaatkan GPS adalah Aplikasi Peta (Map) yang menunjukkan lokasi pengguna dan memberikan petunjuk untuk menuju suatu lokasi. 5. Accelerometer adalah sebauh tranduser yang berfungsi untuk mengukur percepatan, mendeteksi dan mengukur getaran, ataupun untuk mengukur percepatan akibat gravitasi bumi. 6. Androd mendukung Accelerometer, yaitu perangkat yang digunakan unruk mengukur percepatan. Acceleremeter dapat memberitahukan apabila suatu Perangkat Android bergerak, atau terguncang atau berbalik arah posisinya. 7. SD Card 8. Android memiliki fitur yang memungkin pengguna atau aplikasi untuk mengakses (menyimpan atau membuka) file pada SD Card. SD Card merupakan media penyimpanan medium yang digunakan Perangkat Android dan beberapa perangkat mobile lain non Android sebagai media penyimpanan.
2.5.2. Fitur Perangkat Lunak Perangkat Lunak adalah istilah umum untuk data yang diformat dan disimpan secara digital termasuk progam komputer , dokumentasinya dan berbagai informasi yang bisa dibaca dan ditulis oleh komputer. Dalam hal ini fitur perangkat lunak antara lain : 1.
Internet adalah seluruh jaringan komputer yang saling terhubung menggunakan standar sistem global Transmission Control Protocol/Internet Protocol Suite (TCP/IP) sebagai 17
protocol pertukaran paket (packet switching communication protocol) untuk melayani miliaran pengguna di seluruh dunia. 2.
Kemampiuan akses internet pada Android memberikan banyak keunggulan. Berbagai informasi secara real-time dapat diperoleh dengan mudah dengan internet. Contoh, sebagai pengguna, dapat menggunaan internet untuk melihat jadwal pemutaran film bioskop, cuacu suatu area dan lainnya. Sebagaia developer, dapat menggunakan internet untuk akses secara real-time kepada data, update data. Developer juga dapat menggunakan internet untuk menyimpan berbagai asset untuk kemudian digunakan suatu aplikasi, seperti dilakukan Pandora dan Youtube.
3.
Audio dan Video Support
4.
Sistem operasi Android memungkinkan developer menyertakan audio dan video dalam aplikasi dengan mudah.
5.
Contact
6.
Android memungkinkan akses ke contact yang tersimpan dapat Perangkat Android. Developer dapat menggunakan fitur ini untuk menampilkaan contacts dalam cara baru yang berbeda.
7.
Security - Android memungkinkan aplikasi untuk melakukan banyak hal. Akan tetapi Android juga menyiapkan mekanisme keamanan berupa permission berkaitan dengan beberapa tugas.
8.
Google APIs : Sistem operasi Android memungkinkan dengan tidak terbatas membuat panggilan telepon, mengorganisasi contacts atau meng-install aplikasi. Developer dapat mengintegrasikan peta map) ke dalam suatu aplikasi dengan menggunakan Maps Aps yang mengandung Map Widgets. Berbagai fitur dapat ditambahkan dengan Maps API, antara lain : Menampilakan suatu lokasi di peta, mendapatkan panduan navigasi dan Komunikasi data antara aplikasi dengan clouds
2.6.
Sistem Android Sistem Operasi Android di ponsel memang terbilang masih baru, tetapi Sistem
Operasi Android telah mengalami perkembangan yang cukup pesat. Diciptakan sebagai tandingan iOS, Android menunjukkan grafik perkembangan yang signifikan, tentunya hal
18
itu juga tidak lepas dari dukungan para pabrikan ponsel besar yang juga ikut andil menghadirkan ponsel-ponsel bersistem operasi Android.
Gambar 1 Skema Arsitektur Android - [Google IO, Android Anatomy and Physiology]
Dalam paket sistem operasi Android terdiri dari beberapa unsur diantara nya adalah : 1.
Layer Application dan Widget Puncak dari diagram skema arsitektur android adalah lapisan aplikasi dan widget.
Lapisan aplikasi merupakan lapisan yang paling tampak pada pengguna ketika menjalankan program. Pengguna hanya akan melihat program ketika digunakan tanpa mengetahui proses yang terjadi dibalik lapisan aplikasi. Lapisan ini berjalan dalam Android runtime dengan menggunakan kelas dan service yang tersedia pada framework aplikasi. Lapisan aplikasi android sangat berbeda dibandingkan dengan sistem operasi lainnya. Pada android semua aplikasi, baik aplikasi inti (native) maupun aplikasi pihak ketiga berjalan
19
diatas lapisan aplikasi dengan menggunakan pustaka API (Application Programming Interface) yang sama.
2.
Layer Applications Framework Kerangka aplikasi menyediakan
kelas-kelas yang dapat digunakan untuk
mengembangkan aplikasi android. Selain itu, juga menyediakan abstraksi generik untuk mengakses perangkat, serta mengatur tampilan user interface dan sumber daya aplikasi. Bagian terpenting dalam kerangka aplikasi android adalah sebagai berikut [Hello Android 2nd Edition]: a. Activity Manager, berfungsi untuk mengontrol siklus hidup aplikasi dan menjaga keadaan ”Backstack“ untuk navigasi penggunaan. b. Content Providers, berfungsi untuk merangkum data yang memungkinkan digunakan oleh aplikasi lainnya, seperti daftar nama. c. Resource Manager, untuk mengatur sumber daya yang ada dalam program. Serta menyediakan akses sumber daya diluar kode program, seperti karakter, grafik, dan file layout. d. Location Manager, berfungsi untuk memberikan informasi detail mengenai lokasi perangkat android berada. e. Notification Manager, mencakup berbagai macam peringatan seperti, pesan masuk, janji, dan lain sebagainya yang akan ditampilkan pada status bar.
3.
Layer Libraries Android menggunakan beberapa paket pustaka yang terdapat pada C/C++ dengan
standar Berkeley Software Distribution (BSD) hanya setengah dari yang aslinya untuk tertanam pada kernel Linux. Beberapa pustaka diantaranya: a) Media Library untuk memutar dan merekam berbagai macam format audio dan video. b) Surface Manager untuk mengatur hak akses layer dari berbagai aplikasi. c) Graphic Library termasuk didalamnya SGL dan OpenGL, untuk tampilan 2D dan 3D.
20
d) SQLite untuk mengatur relasi database yang digunakan pada aplikasi. e) SSl dan WebKit untuk browser dan keamanan internet. Pustaka-pustaka tersebut bukanlah aplikasi yang berjalan sendiri, namun hanya dapat digunakan oleh program yang berada di level atasnya. Sejak versi Android 1.5, pengembang dapat membuat dan menggunakan pustaka sendiri menggunakan Native Development Toolkit (NDK). 4.
Android Runtime Pada android tertanam paket pustaka inti yang menyediakan sebagian besar fungsi
android. Inilah yang membedakan Android dibandingkan dengan sistem operasi lain yang juga mengimplementasikan Linux. Android Runtime merupakan mesin virtual yang membuat aplikasi android menjadi lebih tangguh dengan paket pustaka yang telah ada. Dalam Android Runtime terdapat 2 bagian utama, diantaranya: a) Pustaka Inti, android dikembangkan melalui bahasa pemrograman Java, tapi Android Runtime bukanlah mesin virtual Java. Pustaka inti android menyediakan hampir semua fungsi yang terdapat pada pustaka Java serta beberapa pustaka khusus android. b) Mesin Virtual Dalvik, Dalvik merupakan sebuah mesin virtual yang dikembangkan oleh Dan Bornstein yang terinspirasi dari nama sebuah perkampungan yang berada di Iceland. Dalvik hanyalah interpreter mesin virtual yang mengeksekusi file dalam format Dalvik Executable (*.dex). Dengan format ini Dalvik akan mengoptimalkan efisiensi penyimpanan dan pengalamatan memori pada file yang dieksekusi. Dalvik berjalan di atas kernel Linux 2.6, dengan fungsi dasar seperti threading dan manajemen memori yang terbatas. [Nicolas Gramlich, Andbook, anddev.org].
5.
Linux Kernel Android dibangun di atas kernel Linux 2.6. Namun secara keseluruhan android
bukanlah linux, karena dalam android tidak terdapat paket standar yang dimiliki oleh linux lainnya. Linux merupakan sistem operasi terbuka yang handal dalam manajemen memori 21
dan proses. Oleh karenanya pada android hanya terdapat beberapa servis yang diperlukan seperti keamanan, manajemen memori, manajemen proses, jaringan dan driver. Kernel linux menyediakan driver layar, kamera, keypad, WiFi, Flash Memory, audio, dan IPC (Interprocess Communication) untuk mengatur aplikasi dan lubang keamanan. 2.7.
Komponen Aplikasi Android Fitur penting android adalah bahwa satu aplikasi dapat menggunakan elemen dari
aplikasi lain. Sebagai contoh, sebuah aplikasi memerlukan fitur scroller dan aplikasi lain telah mengembangkan fitur scroller yang baik dan memungkinkan aplikasi lain menggunakannya. Maka pengembang tidak perlu lagi mengembangkan hal serupa untuk aplikasinya, cukup menggunakan scroller yang telah ada (developer.android.com) Agar fitur tersebut dapat bekerja, sistem harus dapat menjalankan aplikasi ketika setiap bagian aplikasi itu dibutuhkan, dan pemanggilan objek java untuk bagian itu. Oleh karenanya android berbeda dari sistem-sistem lain, Android tidak memiliki satu tampilan utama program seperti fungsi main() pada aplikasi lain. Sebaliknya, aplikasi memiliki komponen penting yang memungkinkan sistem untuk memanggil dan menjalankan ketika dibutuhkan. Antara lain adalah:
1.
Activities Activity merupakan bagian yang paling penting dalam sebuah aplikasi, karena
Activity menyajikan tampilan visual program yang sedang digunakan oleh pengguna. Setiap Activity dideklarasikan dalam sebuah kelas yang bertugas untuk menampilkan antarmuka pengguna yang terdiri dari Views dan respon terhadap Event. Setiap aplikasi memiliki sebuah activity atau lebih. Biasanya pasti akan ada activity yang pertama kali tampil ketika aplikasi dijalankan. Perpindahan antara activity dengan activity lainnya diatur melalui sistem, dengan memanfaatkan activity stack. Keadaan suatu activity ditentukan oleh posisinya dalam tumpukan acitivity, LIFO (Last In First Out) dari semua aplikasi yang sedang berjalan. Bila suatu activity baru dimulai, activity yang sebelumnya digunakan maka akan dipindahkan ketumpukan paling atas. Jika pengguna ingin menggunakan activity sebelumnya, cukup menekan tombol Back, atau menutup activity yang sedang digunakan, maka activity yang
22
berada diatas akan aktif kembali. Memory Manager android menggunakan tumpukkan ini untuk menentukan prioritas aplikasi berdasarkan activity, memutuskan untuk mengakhiri suatu aplikasi dan mengambil sumber daya dari aplikasi tersebut. Ketika activity diambil dan disimpan dalam tumpukkan activity terdapat 4 kemungkinan kondisi transisi yang akan terjadi [Reto Meier, Profesional Android Application Development, Wiley Publishing, Canada, 2009]: a. Active, setiap activity yang berada ditumpukan paling atas, maka dia akan terlihat, terfokus, dan menerima masukkan dari pengguna. Android akan berusaha untuk membuat activity aplikasi ini untuk untuk tetap hidup dengan segala cara, bahkan akan menghentikan activity yang berada dibawah tumpukkannya jika diperlukan. Ketika activity sedang aktif, maka yang lainnya akan dihentikan sementara. b. Paused, dalam beberapa kasus activity akan terlihat tapi tidak terfokus pada kondisi inilah disebut paused. Keadaan ini terjadi jika activity transparan dan tidak fullscreen pada layar. Ketika activity dalam keadaan paused, dia terlihat active namun tidak dapat menerima masukkan dari pengguna. Dalam kasus ekstrim, android akan menghentikan activity dalam keadaan paused ini, untuk menunjang sumber daya bagi activity yang sedang aktif. c. Stopped, ketika sebuah activity tidak terlihat, maka itulah yang disebut stopped. Activity akan tetap berada dalam memori dengan semua keadaan dan informasi yang ada. Namun akan menjadi kandidat utama untuk dieksekusi oleh sistem ketika membutuhkan sumberdaya lebih. Oleh karenanya ketika suatu activity dalam kondisi stopped maka perlu disimpan data dan kondisi antarmuka saat itu. Karena ketika activity telah keluar atau ditutup, maka dia akan menjadi inactive. d. Inactive, kondisi ketika activity telah dihentikan dan sebelum dijalankan. Inactive activity telah ditiadakan dari tumpukan activity sehingga perlu restart ulang agar dapat tampil dan digunakan kembali. Kondisi transisi ini sepenuhnya ditangani oleh manajer memori android. Android akan memulai menutup aplikasi yang mengandung activity inactive, kemudian stopped activity, dan dalam kasus luar biasa paused activity juga akan di tutup. 23
2.
Services Suatu service tidak memiliki tampilan antarmuka, melainkan berjalan di background
untuk waktu yang tidak terbatas. Komponen service diproses tidak terlihat, memperbarui sumber data dan menampilkan notifikasi. Service digunakan untuk melakukan pengolahan data yang perlu terus diproses, bahkan ketika Activity tidak aktif atau tidak tampak.
3.
Intents Intents merupakan sebuah mekanisme untuk menggambarkan tindakan tertentu,
seperti memilih foto, menampilkan halaman web, dan lain sebagainya. Intents tidak selalu dimulai dengan menjalankan aplikasi, namun juga digunakan oleh sistem untuk memberitahukan ke aplikasi bila terjadi suatu hal, misal pesan masuk. Intents dapat eksplisit atau implisit, contohnya jika suatu aplikasi ingin menampilkan URL, sistem akan menentukan komponen apa yang dibutuhkan oleh Intents tersebut.
4.
Broadcast Receivers Broadcast Receivers merupakan komponen yang sebenarnya tidak melakukan apa-
apa kecuali menerima dan bereaksi menyampaikan pemberitahuan. Sebagian besar Broadcast berasal dari sistem misalnya, Batere sudah hampir habis, informasi zona waktu telah berubah, atau pengguna telah merubah bahasa default pada perangkat. Sama halnya dengan service, Broadcast Receivers tidak menampilkan antarmuka pengguna. Namun, Broadcast Receivers dapat menggunakan Notification Manager untuk memberitahukan sesuatu kepada pengguna.
5.
Content Providers Content Providers digunakan untuk mengelola dan berbagi database. Data dapat
disimpan dalam file sistem, dalam database SQLite, atau dengan cara lain yang pada prinsipnya sama. Dengan adanya Content Provider memungkinkan antar aplikasi untuk
24
saling berbagi data. Komponen ini sangat berguna ketika sebuah aplikasi membutuhkan data dari aplikasi lain, sehingga mudah dalam penerapannya.
2.7.1. Siklus Hidup Aplikasi Android
25
Gambar 2 - Sayed . Y. Hashimi and Satya Komatineni, Pro Android, Apress, USA 2009
Activity adalah suatu kelas yang disediakan oleh Android guna mengimplementasikan siklus hidup suatu kelas-kelas pada suatu aplikasi. Oleh karena itu, kelas Activity wajib diturunkan ke kelas-kelas lain pada aplikasi. Jika kalian masih bingung dengan konsep kelas dan keturunan (inherintance), sebaiknya kalian belajar mengenai bahasa pemograman Java terlebih dahulu karena sesungguhnya pemograman Android berangkat dari bahasa pemograman Java. Berikut ilustrasi di dalam kode pemograman. package com.thenewboston.travis; Import android.os.Bundle; Public class StartingPoint extends Activity { Nama kelas yang kita inisiasi adalah StartingPoint yang berada dalam package bernama com.thenewboston.travis. Package adalah suatu pembungkus atau suatu kemasan yang berisi banyak kelas-kelas. Setelah Activity menurunkan sifat-sifatnya atau dengan kata lain setelah StartingPoint melakukan extends kepada kelas Activity, maka siklus di atas berlaku pula pada kelas StartingPoint. Siklus sesungguhnya berisi dengan masing-masing state yang sebenarnya adalah suatu method yang dimiliki kelas activity .Berikut penjelasan pada masing-masing state : onCreate() Method ini dipanggil ketika activity pertama kali dibuat onStart() Method ini dipanggil ketika sebuah activity tampil ke pengguna onResume() Method ini dipanggil ketika activity yang berjalan pada saat itu dihentikan sementara (paused) dan activity sebelumnya dijalankan kembali(resumed). (Hasil dari method OnRestart()) onFreeze() Method ini dipanggil ketika activity berada dalam keadaan freeze atau tidak merespon akibat sedang sibuk mengerjakan task tertentu pada sistem onPause()
26
Method ini dipanggil ketika activity di hentikan sementara (pause) dan berikutnya ketika dijalankan kembali akan berada dalam posisi resume dan memanggil method OnResume() onStop() Method ini dipanggil ketika activity tidak lagi tampak kepada pengguna. onDestroy() Method ini dipanggil sebelum activity dihancurkan (destroy) oleh sistem (baik secara manual maupun untuk kepentingan pelonggaran memori onRestart() Method ini dipanggil ketika acitivity dijalankan kembali setelah state Stop 2.8.
Pengertian UML (Unified Modelling Language) Menurut Adi Nugroho, 2010, UML (Unified Modelling Language) adalah Bahasa .
Pemodelan sesungguhnya digunakan untuk penyederhanaan permasalahan-permasalahan yang kompleks sedemikian rupa sehingga lebih mudah dipelajari dan dipahami. Sebagai contoh alih-alih membawa planet bumi ke meja kita, kita mungkin akan membawa peta-peta tentang bagian bumi tertentu ke meja kita untuk kita pelajari lebih jauh. Dalam hal ini sasaran model sesungguhnya adalah abstraksi segala sesuatu yang ada di planet bumi menjadi gambaran-gambaran yang lebih mudah dipelajari dan dipahami. Adapun tujuan pemodelan adalah serupa dengan yang kita singgung di atas yaitu sebagai sarana analis, pemahaman, visualiasasi dan komunikasi antar anggota time pengembang serta sebagai sarana dokumentasi. Pada UML (Unified Modelling Language) di kenal beberapa diantaranya sebagai berikut : 2.8.1. Use Case Diagram Menurut Adi Nugroho, 2010, use case sesungguhnya merupakan unit koheren dari fungsionalitas sistem/perangkat lunak yang tampak dari luar dan diekspresikan sebagai urutan pesan-pesan yang dipertukarkan unit-unit sistem dengan satu atau lebih actor yang ada di luar sistem. Kegunaan use case sesungguhnya adalah untuk mendefinisikan suatu bagian perilaku sistem yang bersifat koheren tanpa perlu menyingkapkan struktur internal sistem/perangkat lunak yang sedang dikembangkan. Definisi use case di dalamnya mencakup semua perilaku yang ada dalam sistem yang sedang kita parameter-parameter 27
yang tersedia bagi suatu aksi pada transisi. Jika sinyal memiliki turunan, setiap turunan dari sinyal memungkinkan terjadinya transisi.
2.8.2. Activity Diagram Activity Diagram adalah teknik untuk mendeskripsikan logika procedural, proses bisnis dan aliran kerja dalam banyak kasus. Activity diagram mempunyani peranan seperti hanya flowchart akan tetapi perbedaannya dengan flowchart adalah activity diagram bisa mendukung perilaku parallel sedangkan flowchart tidak bisa. Activity diagram merupakan state diagram khusus, dimana sebagian besar state dalah action dan sebagian besar transisi di trigger oleh selesainya state sebelumnya (internal processing). Oleh karena itu activity diagram tidak menggambarkan behavior internal sebuah sistem dan interaksi antar subsistem secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara umum.
2.9.
SQL (Structure Query Language) SQL (Structure Query Language) merupakan sebuah bahasa untuk berkomunikasi
dengan sebuah database. Dengan menggunakan SQL kita dapat mengambil data ataupun mengubah data dari suatu database Statement SQL umumnya dikelompokkan menjadi 3 bagian : 1. DDL (Data Definition Language) adalah statement yang digunakan untuk mendefinisikan skema atau struktur dari suatu database. Terdiri dari : CREATE - membuat suatu objek dalam database. ALTER - mengubah struktur objek dari suatu database. DROP - menghapus objek dari suatu database. TRUNCATE - menghapus semua record dari sebuah tabel, termasuk semua alokasi ruang untuk record tersebut ikut dihapus. RENAME - mengganti nama suatu objek database. 2. DML (Data Manipulation Language) adalah statement yang digunakan untuk mengelola data di dalam skema atau struktur objek. SELECT - mendapatkan data dari suatu database.
28
INSERT - memasukkan data ke dalam sebuah tabel. UPDATE - mengubah data yang sudah ada dalam sebuah tabel. DELETE - menghapus record dari sebuah tabel, alokasi ruang tidak dihapus.
3. DCL (Data Control Language). GRANT - memberikan hak akses pengguna ke database. REVOKE - mencabut atau menarik kembali hak akses yang telah diberikan dengan statement GRANT SQLite Manager SQLite Manager merupakan sebuah program yang sangat membantu programmer dalam mengelola database SQLite seperti membuat tabel, index dan menjalankan perintah-perintah SQL. Program ini sangat mudah digunakan dan betul-betul bermanfaat untuk berbagai keperluan praktis. Dengan semakin beragamnya pengembangan berbagai aplikasi di platform Android , beberapa aplikasi mulai berkembang semakin kompleks dan membutuhkan media penyimpanan informasi dalam bentuk database terstruktur. Di dalam android sendiri sudah disediakan database secara default yang berada di dalam library Android yaitu SQLite. Untuk keperluan operasi database pada smartphone SQLite sangat memadai karena ukurannya yang kecil, cepat dan ringan dalam hal sumber daya. Karena sifatnya sebagai embedded database, SQLite tidak memiliki server namun bentuknya adalah library yang akan dipanggil saat program dijalankan. Seperti halnya database pada umumnya, SQLite memiliki objek-objek seperti table, view dan index. Perintah-perintah SQL-nya pun sangat mirip seperti yang biasa digunakan yaitu SELECT, INSERT, UPDATE, DELETE dan sebagainya. Eclipse punya ‘pandangan’ yang berbeda dalam mengelola pluginnya. Dalam eclipse, plugin plugin dikelompokan dalam
perspective. Konsep perspective ini selain memudahkan
berganti mode programming, juga tidak boros memori. Misalkan anda programer Java dan 29
anda pindah ke mode C/C++ misalkan, maka semua fitur C/C++ akan di load ke memori dan fitur java akan dimatikan. Hal ini menyebabkan eclipse jauh lebih cepat dibanding Netbeans.
Eclipse punya banyak perspective, untuk melihatnya, anda bisa mengakses ke menu Windows -> Open Perspective. Namun, dalam pemrograman java dan android, kita hanya membutuhkan 2 perspective yaitu Persective java dan perspective DDMS. DDMS adalah kependekan dari
Dalvik Debug Monitor Server. Intinya DDMS adalah
perspective untuk debuging aplikasi Android. Memahami cara kerja DDMS dan fiturnya akan memudahkan anda mencari error pada aplikasi android yang anda bangun. Untuk berpindah ke mode ddms, cukup klik ke menu Windows -> Open Perspecive ->DDMS.
DDMS mempunyai banyak jendela yang kesemuanya berhubungan dengan debugging, antara lain : Device Status Menampilkan status dari emulator atau Smartphone (jika anda menggunakan real device untuk debuging aplikasi), Dengan melihat bagian Device, bisa kita lihat proses yagn sedang berjalan di emulator tersebut. Fitur lain dari Device Emulator adalah mengambil screenshot dari tampilan di emulator, Panduan cara mengambil screenshot akan saya bahas secara terpisah.
30
Logcat Locat digunakan untuk memonitor proses dibelakang aplikasi android. Logcat akan mencatat semua Eror, Warning, debug dan info. Setiap menjalankan aplikasi logcat akan terus bergerak untuk melihat aktivitas yang terjadi di aplikasi ini.
Emulator Control Bagian ini dipakai untuk mengatur ‘emulasi/simulasi’ SMS, nomor telepon dan Location Control untuk membuat simulasi aplkasi Location based service. Jika anda membuat aplikasi berbasis Google map atau aplikasi yang berhubungan dengan SMS/Telepon, maka pasti akan berurusan dengan emulator control.
31
File Explorer File explorer dipakai untuk mentransfer file dari dan ke emulator. Misalkan anda membuat aplikasi database sqlite, anda bisa mengambil databasenya lewat File explorer.
Network Statistic Digunakan untuk memonitor penggunaan bandwidth, jika anda membuat aplikasi client server, kita bisa melihat trafic bandwidthnya disini.
32
2.10. Eclipse Eclipse awalnya dikembangkan oleh IBM untuk menggantikan perangkat lunak IBM Visual Age for Java 4.0. Produk ini diluncurkan oleh IBM pada tanggal 5 November 2001, yang menginvestasikan sebanyak US$ 40 juta untuk
pengembangannya. Semenjak itu
konsursium Eclipse Foundation mengambil alih untuk pengembangan Eclipse lebih lanjut dan pengaturan organisasinya. Dalam pengembangan aplikasi Android biasanya para pengembang (developer Android) menggunakan Eclipse sebagai Integrated Development Environment (IDE). IDE merupakan program komputer yang memiliki beberapa fasilitas yang diperlukan dalam pembangunan perangkat lunak. Eclipse tersedia secara bebas untuk merancang dan mengembangkan aplikasi Android. Eclipse merupakan IDE terpopuler dikalangan developer Android, karena Eclipse memiliki Android plug-in lengkap yang tersedia untuk mengembangkan aplikasi Android. Selain itu Eclipse juga mendapat dukungan langsung dari Google untuk menjadi IDE pengembangan Android, membuat project Android diman source software langsung dari situs resminya Google. Selain Eclipse dapat pula menggunakan IDE Netbeans untuk pengembangan aplikasi Android. Sampai saat ini Eclipse memiliki 4 versi package, yaitu : Indigo Package, Helios Package, Galileo Package, Ganymade Package dan Europa Package. Dari total download pada situs resmi Eclipse yaitu http://www.eclipse.org/ sebanyak 988,945 pengunduh Eclipse Classic Indigo pertanggal 20 Agustus 2011. Aplikasi Android dapat dikembangkan pada system operasi, diantaranya : Windows XP, Vista dan 7 Mac OS X atau lebih baru Linux
2.10.1. IDE Eclipse Eclipse merupakan komunitas open source yang bertujuan menghasilkan platform pemrograman terbuka. Eclipse terdiri dari framework yang dapat dikembangkan lebih lanjut, peralatan bantu untuk membuat dan memanage software sejak awal hingga diluncurkan. Platform Eclipse didukung oleh ekosistem besar yang terdiri dari vendor tekonologi, start-up inovatif, universitas, riset institusi serta individu. 33
Banyak orang mengenal Eclipse sebagai IDE (integrated development environment) untuk bahasa Java, tapi Eclipse lebih dari sekedar IDE untuk Java. Secara umum Eclipse digunakan untuk membangun software inovatif berstandar industri, dan alat bantu beserta frameworknya membantu pekerjaan menjadi lebih mudah. Lisensi Eclipse menggunakan EPL (Eclipse Public License), yaitu lisensi yang memungkinkan organisasi untuk menjadikan Eclipse sebagai produk komersialnya, dan pada saat yang sama meminta orang yang melakukan perubahan untuk mengkontribusikan hasilnya kembali kepada komunitas. Instalasi 1. Anda membutuhkan Java 6 JRE atau keatas untuk menjalankan Eclipse. 2. Download Eclipse IDE for Java Developers untuk menggunakan kode pada situs Belajar Java ini. 3. Gunakan utility pada sistem operasi anda untuk membuka kompresi file tersebut ke dalam hard disk anda.
2.10.2. Arsitektur Eclipse 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: Core platform OSGi SWT (Standard Widget Toolkit) JFace 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
34
Development Environment) untuk mengembangkan plug-in baru. Eclipse beserta plug-innya diimplementasikan dalam bahasa pemrograman Java. Konsep Eclipse adalah IDE yang terbuka (open), mudah diperluas (extensible) untuk apa saja, dan tidak untuk sesuatu yang spesifik[2]. 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-in CDT (C/C++ Development Tools). Selain itu, pengembangan secara visual bukan hal yang tidak mungkin oleh Eclipse, plug-in UML2 tersedia untuk membuat diagram UML. Dengan menggunakan PDE setiap orang bisa membuat
plug-in
sesuai
dengan
keinginannya
(id.wikipedia.org/wiki/Eclipse_(perangkat_lunak).
2.10.3. Versi Eclipse Sejak tahun 2006, Eclipse Foundation mengkoordinasikan peluncuran Eclipse secara rutin dan simultan yang dikenal dengan nama Simultaneous Release. Setiap versi peluncuran terdiri dari Eclipse Platform 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. Kode Peluncuran
Tanggal Peluncuran
Platform
Nama Proyek
Eclipse 3.0
28 Juni 2004
3.0
Eclipse 3.1
28 Juni 2005
3.1
Callisto
30 Juni 2006
3.2
Callisto Project
Europa
29 Juni 2007
3.3
Europa Project
Ganymede
25 Juni 2008
3.4
Ganymede Project
Galileo
24 Juni 2009
3.5
Galileo Project
Helios
23 Juni 2010
3.6
Tabel 1 Versi Eclipse (id.wikipedia.org/wiki)
35
2.11.
Museum Daerah Jakarta Selatan
2.11.1. Sekilas Sejarah Museum Museum, berdasarkan definisi yang diberikan International Council of Museums disingkat ICOM, adalah institusi permanen, nirlaba, melayani kebutuhan publik, dengan sifat terbuka, dengan cara melakukan usaha pengoleksian, mengkonservasi, meriset, mengomunikasikan, dan memamerkan benda nyata kepada masyarakat untuk kebutuhan studi, pendidikan, dan kesenangan. Karena itu ia bisa menjadi bahan studi oleh kalangan akademis, dokumentasi kekhasan masyarakat tertentu, ataupun dokumentasi dan pemikiran imajinatif pada masa depan dan sejak tahun 1977 tiap tanggal 18 Mei diperingati sebagai hari Hari Museum Internasional. Di Indonesia, museum yang pertama kali dibangun adalah Museum Radya Pustaka. Selain itu dikenal pula Museum Gajah yang dikenal sebagai yang terlengkap koleksinya di Indonesia, Museum Wayang, Persada Soekarno, Museum Tekstil serta Galeri Nasional Indonesia yang khusus menyajikan koleksi seni rupa modern Indonesia. Pada awalnya, museum bermula sebagai tempat untuk menyimpan koleksi milik individu, keluarga atau institusi kaya. Benda-benda yang disimpan biasanya merupakan karya seni dan benda-benda yang langka, atau kumpulan benda alam dan artefak arkeologi.
2.11.2. Museum Polri Kepolisian Negara Republik Indonesia (Polri) terbentuk dari perjalanan sejarah yang panjang dari masa penjajahan kolonial dan masa perjuangan kemerdekaan Indonesia. Di awal kelahirannya, Polri tidak saja harus menjalankan tugas pemolisian sebagai pelindung dan penjaga ketertiban masyarakat tetapi juga mendapat tugas sebagai kekuatan perang dalam perjuangan bersenjata mempertahankan kemerdekaan Indonesia. Dalam perjalanan sejarah Indonesia, Polri turut berperan menumpas berbagai pemberontakan kelompok separatis dan menjaga keutuhan Negara Kesatuan Republik Indonesia. Di masa kepemimpinan Presiden Soekarno, Polri terlibat dalam operasi tempur
36
seperti operasi Trikora dan Dwikora. Di masa kepemimpinan Presiden Soeharto (1967 – 1998), Polri menjadi bagian dari Angkatan Bersenjata Republik Indonesia (ABRI) dan terlibat dalam berbagai operasi militer seperti di Timor Leste, Nanggroe Aceh Darussalam, dan Papua. Sejak 1998, pergantian kekuasaan dan perubahan politik Indonesia memberikan dampak pada organisasi Polri. Sebagai institusi kepolisian, Polri berupaya mewujudkan diri sebagai lembaga yang profesional dalam menjalankan fungsi perlindungan dan pelayanan masyarakat. Museum Polri, didirikan atas semangat untuk mengenang sejarah dan mendalami tentang kepolisian Indonesia. Awalnya, gagasan pembentukan museum ini muncul dari Kapolri yang saat itu memimpin, Jenderal Polisi Bambang Hendarso Danuri. Dulu, dalam berbagai lawatan ke luar negeri, Pak Bambang selaku Kapolri saat itu, selalu diajak oleh kepolisian setempat ke museum kepolisian yang ada di sana. Kemudian muncullah ide untuk membuat museum ini, mengingat pentingnya sejarah kepolisian Indonesia serta panjangnya sejarah yang menyertainya. Tujuan pendirian museum ini sendiri, tidak lain adalah untuk melestarikan
nilai-nilai
kesejarahan
Kepolisian
Negara
Republik
Indonesia
dan
pewarisannya kepada generasi mendatang. Polri sangat berperan dalam menciptakan keamanan, baik di masa sebelum kemerdekaan hingga sekarang. Melihat sejarah terbentuknya, Polri memiliki perjalanan yang begitu panjang dari masa penjajahan kolonial dan masa perjuangan kemerdekaan Indonesia. Di awal kelahirannya, Polri tidak saja harus menjalankan tugas pemolisian sebagai pelindung dan penjaga ketertiban masyarakat tetapi juga mendapat tugas sebagai kekuatan perang dalam perjuangan bersenjata mempertahankan kemerdekaan Indonesia. Polisi Indonesia, bisa disebut juga sebagai polisi pejuang sejak dicetuskannya Proklamasi Kemerdekaan RI. Deklarasi Polisi Istimewa di Surabaya tak lama setelah proklamasi kemerdekaan dilanjutkan dengan konsolidasi organisasi kepolisian yang bersifat nasional pada 1 Juli 1946 oleh Kepala Kepolisian Negara Jenderal Polisi R.S. Soekanto, menjadi dasar keunikan sejarah Kepolisian Negara Republik Indonesia dibanding institusi kepolisian negara-negara lain.
37
Bagaimanapun, tema kesejarahan tersebut disusun dalam sebuah sudut pandang yang menyajikan tema besar tentang upaya POLRI dalam menyelenggarakan keamanan dan ketertiban serta dinamika internal-eksternal yang mempengaruhi sosok lembaga kepolisian RI. Melalui Museum Polri, diharapkan muncul gambaran tentang watak kelembagaan POLRI yang semakin modern, profesional, dan mandiri sesuai dengan tuntutan perkembangan zaman. Landasan pemikiran inilah yang menjadikan inisiatif pembangunan Museum Polri memiliki nilai strategis. Pertama, Museum Polri menjadi instrumen yang menunjukkan posisi dan peran Polri dalam perkembangan sejarah masyarakat Indonesia. Ekspresi kesejarahan tersebut menjadi dasar pembentukan ligitimasi Polri sebagai lembaga yang dibentuk untuk melindungi, melayani, dan mengayomi masyarakat Indonesia. Tidak dapat disangkal Kepolisian Negara Republik Indonesia lahir seiring dengan dinamika perjuangan membangun negara, menjaga keutuhan wilayah RI dari perpecahan dan sisa-sisa pemberontakan separatisme dekade 1950an, dan di samping perannya sebagai pejuang (kombatan) dalam proses kelahiran negara baru, tetap memiliki peran utaman dalam menjaga dan melindungi masyarakat dari berbagai bentuk kejahatan yang muncul sesuai permasalahan zamannya. Kedua, Museum Polri menjadi lukisan yang menggambarkan kiprah para anggota kepolisian RI, mulai dari tingkat paling bawah sampai pimpinan tertinggi, mulai dari ibukota sampai ke pelosok-pelosok terpencil, dan mulai dari mereka yang bekerja di jalan raya sampai mereka yang memanfaatkan teknologi mutakhir dalam melindungi masyarakat dari ancaman kejahatan, penipuan, narkotika, kekerasan, dan teror. Museum Polri memiliki arti strategis membangun kesadaran korps (esprit de corps) dan solidaritas kolektif anggota kepolisian RI tentang peran masing-masing jajaran kepolisian dan arti penting mereka dalam kehidupan sehari-hari masyarakat Indonesia. Ketiga, Museum Polri pada akhirnya memiliki peran vital sebagai alat pembelajaran bagi seluruh jajaran anggota kepolisian RI tentang peran dan fungsi mereka di tengah masyarakat Indonesia. Informasi yang ditampilkan dalam Museum Polri menunjukkan kepada setiap anggota tentang bagaimana profesi mereka sebagai anggota kepolisian
38
seharusnya dilakukan. Juga dituangkan bagaimana tradisi kepemimpinan secara spesifik lahir di dalam lembaga kepolisian seperti dicontohkan oleh mereka yang telah menjalankan tugas memimpin lembaga kepolisian RI. Dalam kaitan ini, terdapat ruang bersama untuk saling belajar bagi anggota Kepolisian Negara Republik Indonesia terhadap rekan-rekan kolega mereka yang menjalankan tugas di dalam situasi dan konteks sosial, budaya, ekonomi, dan politik yang beragam di dalam masyarakat Indonesia yang plural. Keempat, pembangunan Museum Polri diletakkan di atas dasar acuan kekayaan sejarah Kepolisian Negara Republik Indonesia yang beragam dari segi geografi dan pengalaman kesejarahan masing-masing wilayah. Di samping karakternya yang bersifat nasional, museum ini dirancang untuk menampung informasi 'lokal' dari masing-masing daerah yang berkait dengan sejarah kepolisian. Dengan demikian, Museum Polri menyajikan keunikan pengalaman sejarah masing-masing wilayah Kepolisian Negara Republik Indonesia lengkap dengan simbol-simbol kelembagaan, monumen dan situs-situs sejarah, serta cerita mengenai tokoh penting kepolisian di masing-masing wilayah sebagai gambaran masyarakat Indonesia yang bhinneka tunggal ika. Kelima, Museum Polri pada akhirnya adalah sebuah karya dan sumbangan institusi kepolisian RI kepada masyarakat umum dengan menjadikannya sebagai ruang publik baru yang memperkaya pengalaman sehari-hari masyarakat Indonesia (khususnya yang tinggal di Jakarta atau berkesempatan mengunjungi ibukota). Museum Polri dirancang untuk menjadi bagian integral kehidupan sehari-hari masyarakat, berbaur dengan kesibukan perkantoran, perdagangan, dan hal-hal yang terjadi dalam kehidupan manusia di sekitar lingkungan museum. Melalui Museum Polri, setiap anggota masyarakat dapat belajar tentang sejarah masa lalu mereka, dan pada saat yang sama dapat menikmati karya seni yang ditampilkan di Museum Polri, menghadiri acaraacara pameran, atau bahkan sekadar menjadi tempat singgah di waktu luang mereka dan berdiskusi tentang tema-tema aktual dalam masyarakat. Dengan demikian, Museum Polri akan menjadi salah satu pusat kebudayaan yang memperkaya kehidupan masyarakat. Di museum ini, ditampilkan beragam koleksi menarik, seperti kendaraan patrol yang pernah digunakan para polisi dari masa ke masa, koleksi senjata, ribuan foto dan berbagai benda bersejarah, replika pesawat dan kapal, dan sebagainya. Selain itu, museum ini juga 39
sudah mengusung konsep modern, dengan dilengkapi beberapa media interaktif, salah satunya ruang audio visual yang berada di lantai tiga bangunan museum. Selain itu, di lantai dua bangunan museum terdapat kids corner, di mana lokasi ini menjadi tempat favorit bagi pengunjung anak-anak. [www.museum.polri.go.id] Lokasi Museum Polri Museum Polri terletak di Jalan Trunojoyo No. 3 Kebayoran Baru, Jakarta Selatan atau bersampingan dengan Markas Besar Polisi Republik Indonesia. Jam Kunjungan / Waktu Buka Selasa – Minggu : 09.00 – 16.00 Tiket Masuk : Gratis
2.11.3. Museum Satria Mandala Sejarah perjuangan bangsa Indonesia dalam rangka merebut dan mempertahankan Negara Kesatuan Republik Indonesia (NKRI) memakan waktu yang cukup panjang dengan pengorbanan jiwa dan raga maupun harta benda yang tak ternilai harganya. Perjuangan bangsa Indonesia dengan TNI sebagai intinya, berjuang secara bahu membahu dalam suasana kebersamaan. Dalam perjalanan sejarah dapat disarikan bahwa sejarah perjuangan nasional termasuk didalam sejarah TNI mempunyai peran penting dalam meningkatkan jiwa dan semangat serta memperkuat jati diri bangsa dalam mencapai tujuan nasional. Karena dengan belajar sejarah masyarakat bangsa diharapkan mampu bersikap serta bertindak arif dan bijaksana dalam menghadapi masa depan. Oleh karenanya minat prajurit dan masyarakat untuk memahami dan menempatkan kehidupan berbangsa dan bernegara senantiasa harus ditumbuhkembangkan. Museum-museum, monumen, dan perpustakaan di lingkungan Pusjarah TNI, menyajikan peninggalan sejarah perjuangan bangsa Indonesia, khususnya sejarah perjuangan TNI dalam merebut, mempertahankan, dan mengisi kemerdekaan melalui diorama-diorama. Diantaranya diorama yang menggambarkan tentang kejayaan Nusantara dan cita-cita mempersatukan bangsa tersaji di Museum Keprajuritan Indonesia. Sedangkan
40
diorama-diorama yang terdapat di Museum Satriamandala menggambarkan tentang sejarah kelahiran Tentara Nasional Indonesia (TNI). Yang di dalamnya terdapat Gedung Waspada Purbawisesa yang menyajikan diorama yang menggambarkan perjuangan TNI bersamasama rakyat dalam menumpas gerombolan separatis DI/TII. Selanjutnya penyajian diorama tentang peristiwa pemberontakan G30S/PKI terhadap NKRI terdapat di Monumen Pancasila Sakti. Selain itu koleksi-koleksi sumber tertulis, seperti buku-buku dan majalah-majalah yang berkaitan dengan sejarah perjuangan TNI tersedia di Perpustakaan TNI. Melalui museum-museum, monumen, dan perpustakaan, masyarakat akan memahami perjuangan bangsa Indonesia khususnya sejarah
perjuangan TNI dan sekaligus
menumbuhkan motivasi untuk meneladani semangat juang para pahlawan bangsa. Museum Satriamandala terletak di Jalan Jenderal Gatot Subroto no.14, Jakarta Selatan. Gedung museum ini sebelumnya dikenal sebagai Wisma Yaso yaitu tempat kediaman Ratna Sari Dewi Soekarno dan tempat Bung Karno disemayamkan sebelum dimakamkan di Blitar, Jawa Timur. Di museum ini tersimpan berbagai benda sejarah yang berkaitan dengan perjuangan Tentara Nasional Indonesia (TNI) dari tahun 1945 sampai sekarang, seperti aneka senjata berat maupun ringan, atribut ketentaraan, panji-panji dan lambang-lambang di lingkungan TNI, kendaraan perang seperti tank dan panser, berbagai jenis pesawat terbang peninggalan masa lalu. Satu diantaranya adalah pesawat Cureng yang pernah diterbangkan oleh Agustinus Adisutjipto serta tandu yang dipergunakan Panglima Besar Jenderal Sudriman saat bergerilya melawan penjajah. Di dalam museum terdapat 74 diorama yang menggambarkan peranan TNI dalam membela dan mempertahankan Negara Kesatuan Republik Indonesia (NKRI). Satu diantaranya adalah diorama yang menggambarkan tentang Pertempuran Surabaya pada tanggal 10 November 1945. Masih dalam kompleks Museum Satriamandala terdapat Gedung Waspada Purbawisesa menyajikan diorama yang menggambarkan perjuangan TNI bersama-sama rakyat menumpas gerombolan separatis DI/TII di Jawa Barat, Jawa Tengah, Aceh, Kalimantan Selatan, dan Sulawesi pada tahun 60-an.
41
Selain diorama, dipamerkan pula dokumen, peta operasi, dan benda-benda relik lainnya. Fasilitas lain di museum ini adalah Taman Bacaan Anak, kios cenderamata, kantin, serta gedung serbaguna yang berkapasitas 600 kursi untuk berbagai kegiatan dan pertemuan. Lokasi Museum Satria Mandala Jln. Gatot Subroto No. 14, Jakarta Selatan Jam Kunjungan / Waktu Buka Selasa – Minggu : 09.00 – 14.30 Senin/Hari besar Nasional tutup Tiket Masuk : Untuk dewasa : Rp. 2.500,Untuk anak-anak : Rp. 1.500,-
2.11.4. Museum Reksa Artha Museum Reksa Artha (Reksa Artha Museum Indonesia) adalah museum sejarah yang terletak di Jakarta, Indonesia. Museum ini memiliki koleksi item bersejarah yang berkaitan dengan pencetakan rupiah Indonesia. Beberapa koleksi uang kertas Rupiah bersejarah dari masa kemerdekaan hingga era Orde Baru, printer uang abad ke-20, alat koin membuat dan gambar bersejarah tentang ORI (Oeang Republik Indonesia) yang pada masa lalu digunakan untuk mempertahankan kedaulatan ekonomi di awal kemerdekaan. Bangunan museum ini awalnya sebuah gudang tinta Perum Peruri. Museum Reksa Artha adalah salah satu dari banyak museum di Indonesia dengan rendahnya jumlah pengunjung. Museum ini sering ditutup dan begitu janji harus dibuat sebelum mengunjungi museum. Selain mesin pencetak uang, museum ini juga memamerkan mesin potong, alat repro buatan Inggris, koleksi uang lama, timbangan uang logam, mesin giling plat uang logam, dan lukisan-lukisan hasil imajinasi para pejuang yang menempel di dinding yang mengelilingi museum. Selanjutnya, pengunjung bisa menyaksikan stempel uang serta hasil karya Peruri
42
yang bukan berupa uang, seperti buku tabungan, paspor, pita cukai, materai, sertifikat tanah, dan dokumen sekuriti lainnya
Lokasi Museum Reksa Artha Jln. Lebak Bulus I Cilandak, Jakarta Selatan Telp. 021-7692089 Jam Kunjungan / Waktu Buka Selasa – Kamis : 09.00 – 15.00 Tiket Masuk : Gratis
43