BAB II LANDASAN TEORI · Fortan, Cobol, Ada, PL/I, Algol, Pascal, C, C++, Basic, Prolog, LISP, PRG,...
Transcript of BAB II LANDASAN TEORI · Fortan, Cobol, Ada, PL/I, Algol, Pascal, C, C++, Basic, Prolog, LISP, PRG,...
4
BAB II
LANDASAN TEORI
2.1. Konsep Dasar Program
Menurut Kadir (2012:2) menjelaskan bahwa “Yang dimaksud dengan program
adalah kumpulan intruksi yang digunakan untuk mengatur komputer agar melakukan
suatu tindakan tertentu”. Tanpa program sesungguhnya komputer tidak dapat berbuat
apa – apa. Itulah sebabnya sering dikatakan bahwa komputer mencakup tiga aspek
penting, berupa perangkat keras (hardware), perangkat lunak (software) yang dalam
hal ini berupa program, dan perangkat akal (brainware) atau orang yang berperan
terhadap operasi komputer maupun pengembangan perangkat lunak. Dengan kata
lain, program merupakan salah satu bagian penting pada komputer, yang mengatur
komputer agar melakukan tindakan yang sesuai dengan yang dikehendaki oleh
pembuatnya.
Suatu program ditulis dengan mengikuti kaidah bahasa pemrograman tertentu.
Bahasa pemrograman dapat dianalogikan dengan bahasa yang digunakan manusia
(bahasa manusia).
5
2.1.1. Bahasa Pemrograman
Menurut Munir (2011:16) menjelaskan bahwa “Hingga saat ini terdapat puluhan
bahasa pemrograman. Kita dapat menyebutkan antara lain bahasa rakitan (assembly),
Fortan, Cobol, Ada, PL/I, Algol, Pascal, C, C++, Basic, Prolog, LISP, PRG, bahasa-
bahasa simulasi seperti CSMP, Simscript, GPSS, Dinamo, dan masih banyak lagi.
Belakangan juga muncul bahasa pemrograman baru seperti Java dan C#.”
Berdasarkan tujuan aplikasinya, bahasa pemrograman dapat digolongkan
menjadi dua kelompok :
1. Bahasa pemrograman bertujuan khusus (specific purpose programming language).
Yang termasuk kelompok ini adalah Cobol (untuk terapan bisnis dan administrasi),
Fortan (aplikasi komputasi ilmiah), bahasa Assembly (aplikasi pemrograman mesin),
Prolog (aplikasi kecerdasan buatan), bahasa-bahasa simulasi (Simscript), dan
sebagainya.
2. Bahasa pemrograman bertujuan umum (general purpose programing language)
yang dapat digunakan untuk berbagai aplikasi. Yang termasuk kelompok ini adalah
bahasa Pascal, Basic, dan C, C++.
Tentu saja pembagian ini tidak benar-benar kaku. Bahasa-bahasa bertujuan
khusus tidak berarti tidak bias digunakan untuk aplikasi lain. Cobol misalnya, dapat
juga digunakan untuk terapan ilmiah, tetapi tentu kemampuan ya sangat terbatas.
Yang jelas, bahasa-bahasa pemrograman yang berbeda dikembangkan untuk
bermacam-macam kegunaan yang berbeda pula.
6
Berdasarkan “kedekatan” bahasa pemrograman apakah lenih condong kebahasa
mesin atau ke bahasa masnusia, maka bahasa pemrograma juga dapat dikelompokan
atas dua macam:
1. Bahasa tingak rendah. Bahasa tingkat ini dirancang agar setiap instruksinya
langsung dikerjakan oleh komputer, tanpa harus melalui penerjemah (translator).
Contohnya adalah bahasa mesin (machine language). Bahasa mesin adalah
sekumpulan kode biner (0 dan1). Setiap perintah dalam bahasa mesin langsung
“dimengerti” oleh mesin dan langsung dikerjakan. Bahasa assembly dimasukan
kedalam kelompok ini karena notasi yang dipakai dalam bahasa ini merupakan
bentuk “manusiawi” dari bahasa mesin, dan untuk melaksanakan instruksinya masih
diperlukan penerjemahan (oleh assembler) ke dalam bahasa mesin.
2. Bahasa tingkat tinggi. Bahasa jenis ini membuat program menjadi lebih mudah
dipahami, lebih “mausiawi”, dan lebih dekat ke bahasa manusia (bahasa inggris
terutama). Kelemahannya, program dalam bahasa tingkat tinggi tidak dapat langsung
dilaksanakan oleh komputer. Ia perlu diterjemahkan terlebih dahulu oleh sebuah
translator bahasa (yang disebut kompilator atau compiler) ke dalam bahasa mesin
sebelum akhirnya dieksekusi oleh CPU. Contoh bahasa tingkat tinggi adalah Pascal,
PL/I, Ada, Cobol, Basic, Fortan, C, C++, dan sebagainya.
7
2.1.2. ANDROID
Menurut Edy (2012:5) menjelaskan bahwa “Android adalah system operasi
embedded yang sangat bergantung pada kernel linux untuk layanan-layanan core-nya,
tapi android bukanlah linux embedded. Missalnya android tidak mendukung utilitas
standard linux, seperti X-Windows dan GNU C libraries tidak didukung.”
Sedangkan menurut Safaat H (2015:1) menjelaskan bahwa “Android adalah
sistem operasi yang mencakup sistem operasi, middleware dan aplikasi.”
Android menyediakan platform terbuka bagi para pengembang untuk
menciptakan aplikasi mereka.
1. Versi Android
Menurut Safaat H (2015:10) menjelaskan bahwa “Telepon pertama yang
menggunakan sistem operasi android adlah HTC Dream, yang dirilis pada 22 oktober
2008”. Pada penghujung tahun 2010 diperkirakan hamper semua vendor seluler
didunia menggunakan Android sebagai operating system. Adapun versi-versi
Android yang pernah dirilis adalah sebagai berikut :
a. Android versi 1.1
Pada 9 maret 2009, Google merilis Android versi 1.1 Android versi ini
delingkapi dengan pembaharuan estetis pada aplikasi, jam, alarm, voice search
(pencarian suara), pengiriman pesan dengan gmail, dan pemberitahuan email.
b. Android versi 1.5 (cupcake)
Pada pertengahan Mei 2009, Google kembali merilis telepon seluler dengan
menggunakan android dan SDK (Software Development Kit) dengan versi 1.5
(Cupcake). Terdapat beberapa pembaruan termasuk juga penambahan beberapa
8
fitur dalam seluler versi ini yakni kemampuan merekam dan menonton video
dengan modus kamera, mengupload video ke Youtube dan gambar ke Picasa
langsung dari telepon, dukungan Bluetooth A2DP, kemampuan terhubung secara
otomatis ke headset Bluetooth, animasi layar, dan keyboard pada layar yang
dapat di sesuaikan dengan sistem.
Sumber :http://theinspirationroom.com/daily/design/2013/9/android-cupcake-logo.jpg
Gambar II.1 android cupcake
c. Android versi 1.6 (Donut)
Donut (versi 1.6) dirilis pada September dengan menampilkan proses
pencarian yang lebih baik disbanding sebelumnya, penggunaan baterai indikator
dan control applet VPN. Fitur lainnya adalah galeri yang memungkinkan
pengguna untuk memilih foto yang akan dihapus; kamera, camcorder dan galeri
yang diintegrasikan, CDMA/EVDO, 802.1x, VPN, Gestures, dan Text-to-speech
engine (tidak tersedia pada semua ponsel, pengadaan resolusi VWGA).
9
Sumber:http://vignette2.wikia.nocookie.net/logopedia/images/c/c5/Android-1_6-donut.jpg/revision/latest?cb=20130520200422
Gambar II.2
Android Dounut
d. Android versi 2.0/2.1 (eclair)
Pada 3 desember 2009 kembali diluncurkan ponsel android dengan versi
2.0/2.1 (Eclair), perubahan yang dilakukan adalah pengoptimalan hardware,
peningkatan Google HTML5, daftar kontak yang baru, dukungan flash untuk
kamera 3.2MP, digital Zoom, dan Bluetooth 2.1.
10
Sumber:http://vignette1.wikia.nocookie.net/logopedia/images/2/25/Eclair_2009.png/revision/latest?cb=20130520200626
Gambar II.3
android éclair
e. Android versi 2.2 (Froyo : Frozen Yoghurt)
Pada bulan mei 2010 Android versi 2.2 Rev 1 diluncurkan. Android inilah
yang sekarang sangat banyak beredar dipasaran, salah satunya adalah dipakai
Samsung FX tab yang sudah ada di pasaran. Fitur yang tersedia di Android versi
ini sudah kompleks diantaranya adalah:
1) Kerangka aplikasi memungkinkan penggunaan dan penghapusan
komponen yang tersedia.
2) Dalvik Virtual Machine dioptimalkan untuk perangkat mobile.
3) Grafik: grafik di 2D dan grafis 3D berdasarkan libraries OpenGL.
4) SQLite: untuk penyimpanan data.
5) Mendukung media: audio, video, dan berbagai format gambar (MPEG4,
H.264, MP3, AAC, AMR, JPG, PNG,GIF)
11
6) GSM, Bluetooth, EDGE, 3G, dan WiFi (hardware independent)
7) Kamera, Global Positioning System (GPS), kompas, dan accelerometer
(tergantung hardware).
Sumber : http://www1-lw.xda-cdn.com/files/2010/05/froyo.png
Gambar II.4 android froyo
f. Android versi 2.3 (Gingerbread)
Android versi 2.3 diluncurkan pada desember 2010, hal-hal yang direvisi dari
versi sebelumnya adalah kemampuan seperti berikut:
1) SIP-based VoIP
2) Near Field Communication (NFC)
3) Gyroscope dan sensor
4) Multiple cameras support
5) Mixable audio effects
6) Download manager
12
Sumber:http://cdn2.knowyourmobile.com/sites/knowyourmobilecom/files/styles/gallery_wide/public/7/67/181759.jpg?itok=VK-AEMs9
Gambar II.5 Android Gingerbread
g. Android versi 3.0 (Honeycomb)
Versi paling baru ini yang dirilis pada tahun 2011 ini mendukung multi
prosesseor dan juga peningkatan kemampuan hardware untuk grafis.
Sumber : http://img.cnmo-img.com.cn/452_500x375/451338.jpg
Gambar II.6 Android Honeycomb
13
h. Android versi 4.0 (Ice Cream Sandwich)
Diumumkan pada tanggal 19 oktober 2011, membawa fitur Honeycomb untuk
smartphone dan menambahkan fitur baru termasuk membuka kunci dengan
pengenalan wajah, jaringan data pemantauan penggunaan dan kontrol, terpadu
kontak jaringan sosial, perangkat tambahan fotografi, mencari email secara
offline, dan berbagi informasi dengan menggunakan NFC.
Sumber:http://i.huffpost.com/gen/275928/GOOGLE-ICE-CREAM-SANDWICH-
LOGO-GOOGLE-IO.jpg
Gambar II.7 Android Ice Cream Sandwich
i. Android Versi 4.1 (Jelly Bean)
Android 4.1 Jelly Bean yang resmi diluncurkan, dan sudah mulai bergulir
pada pertengahan juli 2012. Fitur-fitur yang didukung oleh sistem operasi ini
yaitu, Google Now, Project Buter (membuat android berjalan pada solid
60fps, lengkap dengan triple buffering dan forced vsync), Notifications,
Browser (Google Chrome), Android Beam, dan aplikasi kamera yang lebih
baik.
14
2. Kelebihan Android
Menurut Komputer (2012:6) Kelebihan android dibanding dengan operating system
lain:
a. Open source, sehingga user dapat membuat aplikasi berbasis android aplikasi
android bisa dibuat dengan framework yang free juga.
b. Multitasking, ponsel android bisa menjalankan berbagai aplikasi, missal
browsing dan mendengarkan lagu dalam waktu yang bersamaan.
c. Notifikasi, SMS, Twitter, Facebook, Email, semuanya bernotifikasi dilayar
utama.
d. Sinkronisasi kontak (Froyo), semua kontak di FB, Yahoo, Google, Twitter
akan menjadi kontak di hp secara otomatis jika sinkronisasi diaktifkan,
sehingga user dapat mengakses status di Twitter, FB, dan keterangan apakah
user sedang online atau tidak.
e. Tidak terpaku satu hp, Android bukan hanya milik Google, dari awal
pengembangannya adalah bersama-sama dengan beberapa merk hp terkenal.
LG, Motorola, SAMSUNG, Sony Ericsson juga menyediakan jajaran hp
Android.
f. Widget, pada layar utama Android terdapat widget yang memudahkan user
mengakses aplikasi Android, missal menampilkan status terbaru di FB dan
Twitter, atau melihat kondisi cuaca daerah tertentu (tentunya dibutuhkan
koneksi internet).
g. Google Play (dahulu Android Market), terdapat banyak aplikasi yang bisa
anda download baik itu Free atau bebayar.
15
3. Kekurangan Android
Kekurangan yang bisa dijadikan pertimbangan menggunakan HP Android, antara
lain:
a. Koneksi Internet, sebenarnya koneksi internet bisa dimatikan tapi jika
dimatikan itu artinya anda tidak bisa menikmati fasilitas Android seperti
notifikasi sosial media maupun email.
b. Iklan, di setiap aplikasi hamper selalu muncul iklan, kecuali bawaan Android
nya sendiri atau aplikasi berbayar.
4. Android SDK (Software Development Kit)
menurut Safaat H (2015:5) menjelaskan bahwa “Andoid SDK adalah tool API
(Application Programming Interface) yang diperlukan untuk mulai mengembangkan
aplikasi pada platform Android menggunakan bahasa pemrograman Java”. Android
merupakan subset perangkat lunak untuk ponsel yang meliputi sistem operasi,
middleware dan aplikasi kunci yang di release oleh Google. Saat ini disediakan
Android SDK (Software Development Kit) sebagai alat bantu dan API untuk mulai
mengembangkan aplikasi pada platform aplikasi-netral, Android memberi Anda
kesempatan untuk membuat Aplikasi yang kita butuhkan yang bukan yang bukan
merupakan aplikasi bawaan Handphone/Smartphone. Beberapa fitur-fitur Android
yang paling penting adalah :
a. Framework Aplikasi yang mendukung penggantian komponen dan
reusable.
b. Mesin Virtual Dalvik dioptimalkan untuk perangkat mobile.
c. Integrated browser berdasarkan engine open source WebKit.
16
d. Grafis yang dioptimalkan dan didukung oleh libraries grafis 2D, grafis 3D
berdasarkan spesifikasi OpenGL ES 1,0 (Opsional akselerasi hardware).
e. SQLite untuk menyimpan data.
f. Media Support yang mendukung audio, video, dan gambar (MPEG4,
H.264, MP3, AAC, AMR, JPG, PNG, GIF), GSM Telephony (tergantung
hardware).
g. Bluetooth, Edge, 3G, dan WiFi (tergantung hardware).
h. Kamera, GPS, kompas, dan accelerometer (tergantung hardware).
i. Lingkungan Development yang lengkap dan kaya termasuk perangkat
emulator, tools untuk debugging, profil dan kinerja memori, dan plugin
untuk IDE Eclipse.
5. ADT (Android Development Tools)
Menurut Safaat H (2015:6) menjelaskan bahwa “Android Development Tools
(ADT) adalah plugin yang didesain untuk IDE Eclipse yang memberikan kita
kemudahan dalam mengembangkan aplikasi android dengan menggunakan IDE
Eclipse”. Dengan menggunakan ADT untuk Eclipse akan memudahkan kita dalam
membuat aplikasi project android, membuat GUI aplikasi, dan menambahkan
komponen-komponen yang lainnya, begitu juga kita dapat melakukan running
aplikasi menggunakan Android SDK melalui Eclipse. Dengan ADT juga kita dapat
melakukan pembuatan package android (.apk) yang digunakan untuk distribusi
aplikasi android yang kita rancang.
17
Mengembangkan aplikasi android dengan menggunakan ADT di Eclipse sangat
dianjurkan dan mudah untuk memulai mengembangkan aplikasi android. Berikut
adalah versi ADT untuk eclipse yang sudah dirilis:
a. ADT 12.0.0 (July 2011)
b. ADT 11.0.0 (June 2011)
c. ADT 10.0.1 (March 2011)
d. ADT 10.0.0 (February 2011)
e. ADT 9.0.0 (January 2011)
f. ADT 8.0.1 (December 2010)
g. ADT 8.0.0 (December 2010)
h. ADT 0.9.9 (September 2010)
i. ADT 0.9.8 (September 2010)
j. ADT 0.9.7 (May 2010)
k. ADT 0.9.6 (March 2010)
l. ADT 0.9.5 (December 2009)
m. ADT 0.9.4 (October 2009)
Semakin tinggi platform android yang kita gunakan, dianjurkan menggunakan
ADT yang lebih terbaru, karena biasanya munculnya platform baru diikuti oleh
munculnya versi ADT yang terbaru. Untuk melakukan instalasi ADT di Eclipse dapat
dilakukan secara online maupun offline.
18
6. Arsitektur Android
Secara garis besar arsitektur android dapat dijelaskan dan digambarkan sebagai
berikut :
a. Applications and Widgets
Applications and Widgets ini adalah layer dimana kita berhubungan dengan
aplikasi saja, di mana biasanya kita download aplikasi kemudian kita lakukan
instalasi dan jalankan aplikasi tersebut. Di layer terdapat aplikasi inti termasuk
klien email, program SMS, kalender, peta, browser, kontak, dan lain-lain. Semua
aplikasi ditulis menggunakan bahasa pemrograman Java.
b. Application Frameworks
Android adalah “Open Development Platform” yaitu android menawarkan
kepada pengembang atau memberi kemampuan kepada pengembang untuk
membangun aplikasi yang bagus dan inovatif. Pengembang bebas untuk
mengakses perangkat keras, akses informasi resource, menjalankan service
background, mengatur alarm, dan menambahkan status notifications, dan
sebagainya. Pengembang memiliki akses penuh menuju API framework seperti
yang dilakukan oleh aplikasi yang kategori inti. Arsitektur aplikasi dirancang
supaya kita dengan mudah dapat menggunakan kembali komponen yang sudah
digunakan.
19
Sehingga bisa kita simpulkan applications frameworks ini adalah layer di
mana para pembuat aplikasi melakukan pengembangan/ pembuatan aplikasi yang
akan dijalankan di sistem operasi Android, karena pada layer inilah aplikasi
dapat dirancang dan dibuat, seperti content providers yang berupa sms dan
panggilan telepon.
Komponen-komponen yang termasuk di dalam applications frameworks adlah
sebagai berikut:
1) Views
2) Content Provider
3) Resource Manager
4) Notifications Manager
5) Activity Manager
c. Libraries
Libraries ini adalah layer di mana fitur-fitur Android berada, biasanya para
pembuat aplikasi mengakses libraries untuk menjalankan aplikasinya. Berjalan di
batas kernel, Layer ini meliputi berbagai library C/C++ inti seperti Libc dan SSL,
serta:
a. Libraries media untuk pemutaran media audio dan video
b. Libraries untuk manajemen tampilan
c. Libraries Graphics mencakup SGL dan OpenGL untuk grafis 2D dan 3D
d. Libraries SQLite untuk dukungan database
e. Libraries SSL dan WebKit terintegrasi dengan web browser dan security
20
f. Libraries LiveWebcore mencakup modern web browser dengan engine
embedded web view
g. Libraries 3D yang mencakup implementasi OpenGL ES 1.0 API’s
d. Android Run Time
Layer yang membuat aplikasi android dapat dijalankan dimana dalam
prosesnya menggunakan implementasi Linux. Dalvik Virtual Machine (DVM)
merupakan mesin yang membentuk dasar kerangka aplikasi android. Di dalam
Android Run Time dibagi menjadi dua bagian yaitu:
a. Core Libraries: aplikasi Android dibangun dalam bahasa Java, sementara
Dalvik sebagai virtual mesinnya bukan Virtual Machine Java, sehingga
diperlukan sebuah libraries yang berfungsi untuk menterjemahkan bahasa
java/c yang ditangani oleh Core Libraries.
b. Dalvik Virtual Machine: Virtual mesin berbasis register yang dioptimalkan
untuk menjalankan fungsi-fungsi secara efisien dimana merupakan
pengembangan yang mampu membuat linux kernel untuk melakukan
threading dan manajemen tingkat rendah.
e. Linux Kernel
Linux Kernel adalah dimana inti dari operating sistem android itu berada.
Berisi file-file system yang mengatur system processing, memory, resource,
drivers, dan sistem-sistem operasi android lainnya. Linux kernel yang digunakan
android adlah linux kernel release 2.6.
21
Sumber : http://socmedtech.com/wp-content/uploads/2014/10/android.jpg
Gambar II.8 Arsitektur Android
7. Fundamental Android
Menurut Safaat H (2015:9) menjelaskan bahwa :
Aplikasi Android ditulis dalam bahasa pemrograman Java. Kode java dikompilasi
bersama dengan data file resource yang dibutuhkan oleh aplikasi, di mana
prosesnya di package oleh tools yang dinamakan “apt tools” ke dalam paket
Android sehingga menghasilkan file dengan ekstensi apk. File apk itulah yang kita
sebut dengan aplikasi, dan nantinya dapat di install di perangkat mobile.
22
Ada empat jenis komponen pada aplikasi Android yaitu :
a. Activities
Suatu activity akan menyajikan user interface (UI) kepada pengguna,
sehingga pengguna dapat melakukan interaksi. Sebuah aplikasi android bisa jadi
hanya memiliki satu activity, tetapi umumnya aplikasi memiliki banyak activity
tergantung pada tujuan aplikasi dan desain dari aplikasi tersebut. Satu activity
biasanya akan dipakai untuk menampilkan aplikasi atau yang bertindak sebagai
user interface (UI) saat aplikasi diperlihatkan kepada user. Untuk pindah dari
satu activity ke activity lain kita dapat melakukannya dengan satu event, misalnya
click tombol, memilih opsi atau menggunakan triggers tertentu. Secara hirarki
sebuah windows activity dinyatakan dengan method Activity.setContentView().
ContentView adalah objek yang berada pada root hirarki.
b. Service
Service tidak memiliki Graphic User Interface (GUI), tetapi service berjalan
secara background, sebagai contoh dalam meminkan musik, service mungkin
memainkan musik atau mengambil data dari jaringan, tetapi setiap service harus
berada dalam kelas induknya. Misalnya, media player sedang memutar lagu dari
list yang ada, aplikasi ini akan memiliki dua atau lebih activity yang
memungkinkan user untuk memilih lagu misalnya, atau menulis sms sambil
player sedang jalan. Untuk menjaga music tetap dijalankan, activity player dapat
menjalankan service. Service dijalankan pada thread utama dari proses aplikasi.
23
c. Broadcast Receiver
Broadcast Receiver berfungsi sebagai menerima dan bereaksi untuk
menyampaikan notifikasi. Contoh broadcast seperti notifikasi zona waktu
berubah, baterai low, gambar telah selesai diambil oleh kamera, atau pengubahan
referensi bahasa yang digunakan. Aplikasi juga dapat menginisiasi broadcast
misalnya memberikan informasi pada aplikasi lain bahwa ada data yang telah
diunduh ke perangkat dan siap untuk digunakan.
Broadcast receiver tidak memiliki user interface (UI), tetapi memiliki sebuah
activity untuk merespon informasi yang mereka terima, atau mungkin
menggunakan Notification Manager untuk memberitahu kepada pengguna,
seperti lampu latar atau vibrating (getaran) perangkat, dan lain sebagainya.
d. Content Provider
Content Provider membuat sekumpulan aplikasi data secara spesifik sehingga
bisa digunakan oleh aplikasi lain. Data disimpan dalam file sistem seperti
database SQLite. Content Provider menyediakan cara untuk mengakses data
yang dibutuhkan oleh suatu activity, misalnya ketika kita menggunakan aplikasi
yang membutuhkan peta (Map), atau apliaksi yang membutuhkan untuk
mengakses data kontak dan navigasi, maka disinilah fungsi content provider.
24
2.1.3. Java
Menurut kadir (2014:16) menjelaskan bahwa “bahasa java dikembangkan di Sun
Micro systems dan mulai diperkenalkan kepada public pada tahun 1995. Seperti
halnya C++, Java juga merupakan bahasa bahasa yang berorientasi objek. Dengan
demikian, java juga memudahkan dalam pembuatan aplikasi yang berskala besar.”
Sebagai bahasa yang beraras tinggi, yang menggunakan perintah-perintah yang
mudah dimengerti oleh manusia, java mempunyai keunggulan yakni bersifat
universal. Sebagai bahasa yang universal, java bias dijumpai di berbagai platform
(Linux, Unix, Windows, Mac, dan lain-lain). Hal yang menarik lagi, hasil kompilasi
java yang dinamakan bytecode dapat dijalankan di berbagai platform sepanjang di
sistem target memiliki Java Runtime Environment {JRE}.
2.1.4. Eclipse
Menurut Safaat H (2011:16) menjelaskan bahwa “Eclipse adalah IDE untuk
pengembangan java atau android, dapat dijalankan di semua platform (platform
independent)”. Berikut ini adalah sifat dari Eclipse:
1. Multi-platform: Target sistem operasi Eclipse adalah Microsoft Windows, Linux,
AIX, HP-UX dan Mac OS X.
2. Multi-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.
25
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 merpakan 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 popular adalah
kemampuannya untuk dapat dikembangkan oleh pengguna dengan komponen yang
dinamakan plug-in.
Menurut Supardi (2012:20) menjelaskan bahwa “Pada kotak dialog New Android
Project terdapat beberapa bagian yang perlu anda pahami sebelum membuat aplikasi
Android”. Bagian-bagian tersebut antara lain:
a. Project name, adalah nama proyek Eclipse nama direktori yang berisi berkas-
berkas proyek.
b. Content, berkaitan dengan project yang akan dibuat, apakah membuat project baru,
atau meneruskan dari project yang telah dibuat sebelumnya.
c. Build target, merupakan konfigurasi target platform yang diinginkan untuk
membuat aplikasi.
d. Application name, adalah judul aplikasi anda. Nama yang akan muncul pada
perangkat android.
e. Package name, adalah name space paket (mengikuti aturan yang sama untuk paket
dalam bahasa pemrograman java) dimana semua kode sumber (source code) anda
26
diletakan. Nama ini juga menjadi nama paket dimana sub activity yang akan
dihasilkan.
f. Create activity, adalah nama untuk class sub yang akan dihasilkan plug-in. ini akan
menjadi sebuah sub kelas dari kelas Android Activity. Sebuah Activity adalah
sebuah kelas yang dapat menjalankan dan melakukan pekerjaan.
g. Min SDK Version, menentukan tingkat API minimum yang dibutuhkan oleh
aplikasi anda. Biasanya API yang levelnya lebih tinggi mendukung API yang
dibawahnya namun belum tentu sebaliknya.
Sebuah project Android terbangun dari beberapa directory. Untuk dapat melihat
Struktur Project dari aplikasi Android anda dapat meliahat melalui jendela project
explorer. Secara umum project Android memiliki struktur yaitu:
a. Direktori src (source code), merupakan folder yang berisi source java class untuk
masing-masing activity. Jika anda membuat sumber daya yang baru, secara
otomatis akan dibuat referensi dengan suatu nilai identitas untuk “R.Java”. nilai
identitas inilah yang akan menjadi acuan bagi java class unutk mengakses kepada
sumber daya tersebut, jadi jangan lakukan perubahan secara manual pada
“R.Java”.
b. Direktori “assets”, dapat digunakan untuk menyimpan data apa aja mengakses data
melalui AssetsManager dengan metode getAssets().
c. Director res, berisi gambar atau image dan data XML seperti animasi, color,
drawable, layout, menu, raw, value, xml.
27
d. AndroidManifest.xml, merupakan file xml yang menggambarkan tentang aplikasi
apa yang sedang dikembangkan dan komponen apa saja yang digunakan seperti
activity, service dan lain sebagainya pada aplikasi. AndroidManifest yang akan
pertama dijalankan oleh Android untuk menjalankan aplikasi yang dikembangkan.
e. Default.properties, file property yang digunakan mengcompile atau menginstall
aplikasi pada device.
f. Bin, directory bin berisi aplikasi ketika kita menjalankannya. Libs, directory
untuk meletakan library tambahan yang digunakan dalam aplikasi.
2.1.5. XML
Menurut Nugroho (2008:171) menjelaskan bahwa “XML merupakan bahasa
berbasis panandaan (tag) untuk mendekripsikan data/informasi tanpa memperdulikan
aplikasi yang kelak akan menggunakannya”. Hal ini cukup kontras disbanding
HTML yang mendefinisikan bagaimana data/informasi ditampilkan dan sangat
bergantung pada aplikasi apa (misalnya browser) yang akan menggunkannya. Meski
demikian aplikasi yang akan menggunakan XML harus tahu aturan yang berlaku
dalam pembuatan berkas XML agar aplikasi tersebut mampu memanfaatkannya.
XML memungkinkan kita untuk membuat struktur kita sendiri, tidak seperti HTML
yang menggunakan struktur yang bersifat baku (standard).
Secara umum, W3C (World Wide Web Consortium), sebuah organisasi internasional
yang akan mengatur kaidah HTML, dan XML, memberikan penjelasan tentang XML
sebagai berikut:
28
1. XML merupakan metode untuk meletakan data terstruktur dalam berkas teks.
2. XML mirip dengan HTML, tetapi XML bukan HTML. Seperti HTML, XML
menggunakan penanda (kata-kata yng dibatasi oleh’<’ dan ‘>’) dan atribut,
sementara HTML menspesifikasi arti masing-masing penanda dan atributnya.
3. XML merupakan teks, tetapi ia tidak memiliki arti apa-apa jika dibaca apa
adanya. Berkas XML adalah berkas teks. Oleh karena itu memungkinkan para
ahli (pemrogram) dengan mudah melakukan pemeriksaan kesalahan aplikasi.
4. XML adalah teknologi. Di XML versi 1.0 tumbuh berbagai aturan tambahan
yang menyediakan sekumpulan penanda dan atribut, atau panduan untuk suatu
tugas yang spesifik.
5. XML boros tempat penyimpanan, tetapi bukan masalah. Karena XML berformat
teks dan menggunakan penanda untuk membatasi data maka berkas XML
cenderung berukuran besar dibandingkan yang berformat biner.
6. XML berlisensi bebas, mandiri terhadap platform dan mendapat dukungan
penuh.
7. XML mudah diproses. Dengan menggunakan format terstruktur, kita dapat
merancang struktur berbasis XML yang dapat diproses menggunakan program.
8. XML bersifat hierarki. Struktur XML yang berbasis simpul (node)
memungkinkan terhadapnya dilakukan pemrosesan secara cepat, memungkinkan
padanya dilakukan pencarian, pengaturan ulang (rearrangement), serta konstruksi
dinamis.
29
Berkas XML harus mengikuti aturan-aturan tertentu. Adapun aturan itu
dideskripsikan sebagai berikut:
a. Dokumen harus berbasis teks. Semua dokumen XML harus berformat teks
ASCII (American Standard Code for Information Interchange). Dokumen XML
dapat merujuk data biner atau mereka dapat dikompres dan dikembalikan ke
bentuk semula saat aplikasi dijalankan, tetapi dokumen XML yang mendasarinya
harus dikodekan dalam bentuk ASCII.
b. XML bersifat case-sensitive, semua nama berkas XML, elemen, atribut,
deklarasi, entisitas, dan intruksi pemrosesan bersifat peka kepitalisasi. Huruf
kapital dan huruf kecil berbeda makna.
c. Baris pertama dokumen XML harus dimulai dengan prolog dengan deklarasi
xml. Deklarasi XML mendefinisikan dokumen sebagai berkas XML.
d. Penandaan membatasi elemen, sub elemen serta atribut, tetapi tidak harus
memiliki isi tertentu. Penandaan XML dinstruksikan dengan tanda <dan>, dan
harus memuat atribut didalamnya.
30
2.2. Peralatan Pendukung (Tool System)
2.2.1. Flowchart
Menurut Suarga (2006:6) menjelaskan bahwa ”Flowchart adalah suatu teknik
untuk menyusun rencana program telah diperkenalkan dan telah dipergunakan oleh
kalangan programmer komputer sebelum algoritma menjadi popular, yaitu
flowcharting. Flowchart adalah untaian symbol gambar (chart) yang menunjukan
aliran (flow) dari proses terhadap data. Simbol-simbol flowchart dapat
diklisifikasikan menjadi symbol untuk program dan symbol untuk sistem (peralatan
hardware).”
Berikut adalah 5 jenis Flowchart,yaitu :
1. Flowchart Sistem merupakan bagan yang menunjukan alur kerja atau apa
yang sedang dikerjakan di dalam sistem secara keseluruhan dan menjelaskan
urutan dari prosedur-prosedur yang ada di dalam sistem. Dengan kata lain,
flowchart ini merupakan deskripsi secara grafik dari urutan prosedur-prosedur
yang terkombinasi yang membentuk suatu sistem.
Flowchart terdiri dari data yang mengalir melalui sistem dan proses yang
mentransformasikan data itu. Data dan proses dalam flowchart sistem dapat
digambarkan secara online (dihubungkan langsung dengan komputer) atau
offline (tidak dihubungkan langsung dengan komputer, misalnya mesin tik,
cash register atau kalkulator).
2. Flowchart Dokumen bagan alir dokumen (document flowchart) atau disebut
juga bagan alir formulir (form flowchart) atau paperwork flowchart
merupakan bagan alir yang menunjukan arus dari laporan dan formulir
31
termasuk tembusan-tembusannya. Bagan alir dokumen ini menggunkan
simbol-simbol yang sama dengan dengan yang digunakan di dalam bagan alur
sistem.
3. Flowchart Skematik (schematic flowchart) merupakan bagan alir yang mirip
dengan bagan alir sistem, yaitu untuk menggambarkan prosedur di dalam
sistem. Perbedaanya adalah, bagan alir skematik selain menggunakan simbol-
simbol bagan alir sistem, juga menggunakan gambar-gambar komputer dan
peralatan lainnya yang digunakan. Maksud penggunaan gambar-gambar ini
adalah untuk memudahkan untuk dipahami, tetapi sulit dan lama
menggambarnya.
4. Flowchart Program (program flowchart) merupakan bagan yang menjelaskan
secara rinci langkah-langkah dari proses program. Bagan alir program dibuat
dari darivikasi bagan alir sistem.
Bagan alir program dapat terdiri dari dua macam, yaitu bagan alir logika
program (program logic flowchart) dan bagan alir program komputer
terperinci (detailed computer program flowchart). Bagan alir logika program
digunakan untuk menggambarkan tiap-tiap langkah di dalam program
komputer secara logika. Bagan alir logika program ini disiapkan oleh analisis
sistem.
32
5. Flowchart Proses merupakan teknik penggambaran rekayasa industrial yang
memecahkan dan menganalisis langkah-langkah selanjutnya dalam suatu
prosedur atau sistem. Bagan alir proses menggunakan lima buah simbol.
Flowchart Proses digunakan oleh perekayasa industrial dalam mempelajari
dan mengembangkan proses-proses manufacturing. Dalam analisis sistem,
flowchart ini digunakan secara efektif untuk menulusuri alur suatu laporan
atau form.
2.2.2. HIPO (Hierarchy plus Input-Process-Output)
HIPO (Hierarchy plus Input-Process-Output) merupakan alat dokumentasi
program yang dikembangkan dan didukung oleh IBM. Tetapi kini HIPO juga telah
digunakan sebagai alat bantu untuk merancang dan mendokumentasikan siklus
pengembangan sistem.
1. Sasaran HIPO
Hipo telah dirancang dan dikembangkan secara khusus untuk menggambarkan
suatu struktur bertingkat guna memahami fungsi dari modul-modul suatu sistem.
Hipo juga dirancang untuk menggambarkan modul-modul yang harus diselesaikan
oleh pemrogram. HIPO tidak dipakai untuk menunjukan instruksi-instruksi program
yang akan digunakan, disamping itu HIPO juga menyediakan penjelasan yang lengap
dari input yang akan digunakan, proses yang akan dilakukan serta output yang
diinginkan.
33
2. Diagram HIPO
HIPO menggunakan tiga macam diagram untuk masing-masing tingkatannya,
yaitu sebagai berikut:
a. visual table of contents
diagram ini menggambarkan hubungan dari modul-modul dalam suatu sistem
secara berjenjang.
Gambar II.9
visual table of contents
34
b. overview diagrams
Digunakan untuk menunjukan secara garis besar hubungan dari input, proses
dan output, dimana bagian input menunjukan item-item data yang akan
digunakan oleh bagian proses. Bagian proses berisi langkah-langkah yang
menggambarkan kerja dari fungsi atau modul,dan bagian output berisi hasil
pemrosesan data.
Tabel II.1 Overview diagram
c. detail diagram
berisi elemen-elemen dari paket yang menggambarkan secara rinci kerja
dan fungsi atau modul.
Tabel II.2 Detail Diagrams
35
2.2.3. Adobe Photoshop
Menurut Hendratman (2010:ix) menjelaskan bahwa “Adobe Photoshop adalah
software grafis berbasis Bitmap (pixel), yang biasa dipakai untuk mengedit foto,
membuat ilustrasi bahkan desain web. Sehingga banyak digunakan distudio foto,
percetakan, production house, biro arsitektor, pabrik tekstil dan bidang yang berkaitan
dengan Teknologi Informasi (IT)”.
Interface Adobe Photoshop, Interface/tampilan muka adobe photoshop antara lain
terdiri dari:
a. Toolbar : berada dikiri layar berisi kumpulan tool (tombol dengan gambar).
Toolbar adalah alat utama untuk bekerja di photoshop
b. Menu : berada dikiri layar berupa text untuk perintah lanjut.
c. Property bar : setiap objek mempunyai sifat/ property yang berbeda. Anda
dapat mengaturnya dibagian atas layar
d. Palette : kumpulan library seperti warna, brush yang siap pakai
e. Palette well : sama seperti palette well namun dalam tampilan lain
f. Status bar : berada dibawah gambar/ bidang kerja anda. Disana ada informasi
penggunaan memory, efisiensi, zoom dll
g. Layer tab : pekerjaan anda yang terbagi dalam beberapa lapisan. Anda akan
banyak bidang kerja anda disini.