Aplikasi Tips Pola Hidup Sehat dan Diet

BAB 2

LANDASAN TEORI

2.1 Sekilas Sistem Operasi Android

Menurut buku karya Alfa Satyaputra dan Eva Maulina Aritonang yang berjudul
“Beginning Android Programming with ADT Bundle” (2014), android adalah
sebuah sistem operasi untuk smartphone dan tablet. Dimana sistem operasi ini dapat
diilustrasikan sebagai jembatan antara piranti dan penggunanya, sehingga
pengguna bisa berinteraksi dengan device-nya dan menjalankan aplikasi-aplikasi
yang tersedia pada device.

Pada buku karya Nazruddin Safaat H yang berjudul “Android,
Pemrograman Aplikasi Mobile Smartphone dan Tablet PC Berbasis Android”
mengatakan bahwa android adalah sebuah sistem operasi untuk perangkat mobile
berbasis linux yang mencakup sistem operasi, middleware dan aplikasi.

Android menyediakan platform terbuka bagi para pengembang untuk
menciptakan aplikasi mereka. Awalnya, Google Inc. membeli Android Inc. yang
merupakan pendatang baru untuk urusan peranti lunak smartphone. Kemudian,

untuk mengembangkan Android dibentuklah Open Handset Alliance, sebuah
konsorsium dari 34 perusahaan peranti keras, peranti lunak, dan telekomunikasi,
termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia.

Universitas Sumatera Utara

8

2.2 Platform Android

Platform adalah teknologi yang digunakan sebagai dasar atas mana aplikasi lainnya,
proses atau teknologi yang dibangun. Pada komputer pribadi, platform adalah
perangkat lunak dasar atau komputer itu sendiri dan perangkat lunak atau sistem
operasi yang mana perangkat lunak lainnya bisa berjalan.

Android dipuji sebagai platform mobile pertama yang lengkap, terbuka, dan
bebas. Para desainer dapat melakukan pendekatan yang komprehensif ketika
mereka sedang mengembangkan platform android dalam membangun perangkat
lunak dan memungkinkan untuk peluang pengembangan aplikasi.


Platform android disediakan melalui lisensi open source. Pengembang
dapat dengan bebas untuk mengembangkan aplikasi yang menggunakan linux
kernel 2.6 ini.

Android adalah aplikasi yang bebas untuk dikembangkan. Tidak ada lisensi
atau biaya royalti untuk dikembangkan pada platform android ini. Tidak ada biaya
keanggotaan yang diperlukan. Tidak ada biaya pengujian, bahkan tidak ada kontrak
yang diperlukan. Aplikasi untuk android dapat didistribusikan dan diperdagangkan
dalam bentuk apapun.

Dalam hal ini, android dibangun atas dasar sistem operasi linux yang
bersifat open source. Android memilih linux sebagai dasar pembuatannya
dikarenakan linux memiliki probilitas yang baik, sistem keamanan yang bagus,
serta fitur-fitur menarik.

Universitas Sumatera Utara

9

Gambar 2.1 Arsitektur Android

Linux merupakan sistem operasi dengan keamanan yang tinggi. Android
mengandalkannya karena keamanan yang dimiliki linux tersebut. Seluruh aplikasi
android berjalan sesuai dengan proses-proses linux. Linux hadir dengan banyak
fitur yang bermanfaat. Android mengambil banyak manfaatnya, seperti dukungan
manajemen memori, manajemen power, dan jaringan (Gargenta, 2011).

2.3 Perkembangan Android

Perkembangan versi – versi android menurut buku karya Alfa Satyaputra
dan Eva Maulina Aritonang ialah sebagai berikut.
1. Android 1.0 Apple Pie
Telah dirilis setelah versi Android beta dan menjadi versi komersial pertama
yang hadir untuk para konsumen. Di antara fitur yang menjadi andalan saat itu
adalah :

Universitas Sumatera Utara

10

a) Android Market. Para pengguna bisa memanfaatkan aplikasi-aplikasi yang

ada di web itu dengan men-download atau meng-upgrade. Banyak sekali
aplikasi termasuk game android yang boleh diunduh secara gratis.

b) Kamera. Tetapi belum ada fasilitas yang lengkap untuk membuat hasil
kamera itu maksimal, seperti resolusi, kualitas gambar, kejernihan, dan
lainnya.

c) Shortcut icon. Dengan itu, pengguna bisa dengan mudah masuk ke aplikasi,
pesan, telepon atau yang lain karena bisa diletakkan pada homescreen.

2) Android 1.1 Banana Bread
Android 1.1 dirilis pada tanggal 9 Februari 2009 yang memiliki kode nama
Banana bread serta ukuran layar 320×480 HVA.

3) Android 1.5 Cupcake
Versi ini mulai memakai nama-nama makanan agar mudah diingat. Di antara
fitur yang diperbaharui adalah :
a) Dapat merekam sekaligus memutar video berekstensi MPEG-4 serta
3GP.
b) Dapat meng- copy dan paste tulisan saat membuka blog atau website.

c) Bisa menambahkan foto di kontak favorit.
d) Layar dilengkapi dengan animasi-animasi.
e) Layar dapat berputar secara otomatis.

Universitas Sumatera Utara

11

4) Android 1.6 Donut
a) Terdapat history bookmark untuk kontak dan web. Ini akan
mempermudah jika kita ingin melihat web yang pernah kita buka.
b) Beberapa aplikasi dapat melafalkan teks.
c) Kamera, perekam video, serta galery sudah diperbaharui agar lebih
maksimal penggunaannya.

5) Android Éclair
a) Penambahan fitur bluetooth 2.1
b) Fitur pencarian SMS dan MMS yang disimpan dan SMS yang paling
lama akan terhapus apabila mencapai batas yang ditentukan.
c) Keyboardvirtual diperbaharui agar mudah untuk mengetik tulisan.

d) Penambahan Google Maps versi 3.1.2
e) Versi : Android 2.0 , Android 2.0.1 , dan Android 2.1

6) Android 2.2–2.2.3 Froyo
a) Pembaharuan terhadap kecepatan kinerja android.
b) Peningkatan peluncur aplikasi dengan jalan pintas ke Telepon dan
aplikasi penjelajah web.
c) Memperbaharui fitur USB tethering serta hotspot Wi-Fi.
d) Terdapat fitur upgrade otomatis pada Google Play.
e) Kontak dapat di-share memakai Bluetooth.
f) Penambahan aplikasi Adobe Flash.

Universitas Sumatera Utara

12

7) Android Gingerbread
a) Akurasi terhadap keyboard virtual telah ditingkatkan. Ditambah lagi
dengan fitur input suara.
b) Fitur copypasteditingkatkan untuk mempermudah penggunanya.

c) Download Manager, untuk mempermudah proses pengunduhan
beberapa aplikasi termasuk game android.
d) Versi : Android 2.3 – 2.3.2 , Android 2.3.3 – 2.3.7

8) Android Honeycomb
a) Penambahan

sistem

bar

yang

berfungsi

untuk

mempercepat

pemberitahuan, status, serta tombol navigasi.

b) Fitur untuk melihat aplikasi yang sedang berjalan.
c) Galery baru bisa melihat foto-foto dengan fullscreen
d) Aplikasi Google Talk. Berfungsi sebagai obtolan.
e) Versi : Android 3.0 , Android 3.1 , dan Android 3.2

9) Android Ice Cream Sandwich
a) Membuat folder lebih gampang karena cukup dengan drag dan drop.
b) Tambahan webbrowser bawaan dari Chrome. Dapat membuka laman
sampai 16 tab
c) Beberapa huruf baru telah ditambahkan.
d) Data internet bisa dibatasi sesuai keinginan. Internet akan mati apabila
mencapai batas tersebut.

Universitas Sumatera Utara

13

e) Versi : Android 4.0 -4.0.2 , dan Android 4.0.3 – 4.0.4

10) Android Jelly Bean

a) Akses lebih cepat.
b) Dapat mematikan pemberitahuan pada aplikasi tertentu
c) Shortcut serta widget dapat disusun ulang atau diubah ukurannya sesuai
keinginan.
d) Aplikasi pada kamera ditambah.
e) Dapat menambahkan widget aplikasi tanpa harus root terlebih dulu.
f) Versi : Android 4.1 , Android 4.2 , dan Android 4.3

11) Android 4.4 KitKat
a) Status bar serta navigasi menjadi transparan pada homescreen.
b) Ilengkapi dengan Infrared
c) Akses API ditingkatkan.
d) Mode layar penuh diperbaharui
e) Tambahan BluetoothMessageAccessProfile.

12) Android 5.0 Lollipop
a) Sistem keamanan Lollipop dijalankan diatas sistem SELinux.
b) Tampilan lebih berwarna dan responsif.
c) Menawarkan fitur priority yang fungsinya tidak kalah dengan fitur
Apple Do Not Disturb milik iPhone.

d) Lebih hemat baterai.
13) Android 6.0 Marsmallow

Universitas Sumatera Utara

14

Menu aplikasi pada Android Marshmallow benar-benar dibuat baru. Desainnya
membuat pengguna merasa naik kelas dari versi sebelumnya karena lebih
dinamis. Selain itu, ada juga fitur memory manager yang memungkinkan
pengguna mengecek penggunaan memori pada tiap aplikasi. Rentan waktu
pengecekannya bisa disetel daritiga jam yang lalu hingga 24 jam sebelumnya.
Pembaruan kedua ditilik dari pengaturan volume. Pada Marshmallow,
pengguna bisa mengontrol volume yang berbeda-beda pada panggilan, media,
dan alarm. Keamanan juga mendapat peningkatan pada versiini. Google
memungkinkan vendor menyematkan sensor pemindai sidik jari karena sudah
didukung Marshmallow.

14)Android 7.0 Nougat
Nougat adalah versi Android termutakhir yang baru diperkenalkan pada ajang

kumpul developer Google I/O, pertengahan 2016 ini. Beberapa lama
setelahnya, Google menghadirkan Nougat secara resmi untuk publik.
Pembaruan paling mendasar pada versi Nougat adalah kehadiran Google
Assistant yang menggantikan Google Now. Asisten digital tersebut lebih bisa
diandalkan untuk menjalankan pelbagai fungsi. Fitur-fitur baru lainnya
mencakup layar split-screen saat dipakai multitasking, serta fitur Doze yang
telah dikenalkan di versi Android Marshmallow namun telah ditingkatkan.
Android Nougat juga memiliki dukungan terhadap platform virtual reality
terbaru Google.

Universitas Sumatera Utara

15

2.4 Database MySQL

Database adalah suatu kumpulan data-data yang disusun sedemikian rupa sehingga
membentuk informasi yang sangat berguna. Database terbentuk dari sekelompok
data-data yang memiliki jenis/sifat yang sama. Ambil contoh, data-data berupa
nama-nama, kelas-kelas, alamat-alamat. Semua data tersebut dikumpulkan menjadi
satu menjadi kelompok data baru, sebut saja sebagai data-data mahasiswa.

Demikian juga, kumpulan dari data-data mahasiswa, data-data dosen, datadata keuangan dan lainnya dapat dikumpulkan lagi menjadi kelompok besar,
misalkan data-data politeknik elektronika. Bahkan dalam perkembangannya, datadata tersebut dapat berbentuk berbagai macam data, misalkan dapat berupa
program, lembaran-lembaran untuk entry (memasukkan) data, laporan-laporan.
Kesemuanya itu dapat dikumpulkan menjadi satu yang disebut dengan database.
Salah satu bahasa database yang populer adalah SQL.

MySQL biasa dibaca mai-es-ki-el atau mai-se-kuel adalah suatu perangkat
lunak database relasi (Relational Database Management System atau RDBMS)
seperti halnya Oracle, Postgresql, MS SQL dan sebagainya.

SQL atau singkatan dari Structured Query Language ialah suatu sintaks
perintah-perintah tertentu atau bahasa pemrograman yang digunakan untuk
mengelola suatu database. Jadi, MySQL dan SQL tidaklah sama. Singkatnya,
MySQL ialah perangkat lunaknya dan SQL adalah bahasa perintahnya.

Universitas Sumatera Utara

16

Ketika dibandingkan antara MySQL dengan sistem database yang lain, maka perlu
difikirkan apa yang paling penting sesuai kebutuhan. Apakah tampilan, support,
fitur-fitur SQL, kondisi keamanan dalam lisensi, atau masalah harga. Dengan
pertimbangan tersebut, MySQL memiliki banyak hal yang bisa ditawarkan, antara
lain :
1. Berdasarkan kecepatannya, banyak ahli memberikan pendapat bahwa MySQL
merupakan server tercepat.
2. MySQL memiliki performa tinggi namun merupakan database yang simpel
sehingga mudah di-setup dan dikonfigurasi.
3. MySQL cenderung gratis untuk penggunaan tertentu.
4. MySQL mengerti bahasa SQL (Structured Query Language) yang merupakan
pilihan sistem database moderen.
5. Banyak klien dapat mengakses server dalam satu waktu. Mereka dapat
menggunakan banyak database secara simultan.
6. Database MySQL dapat diakses dari semua tempat di internet dengan hak akses
tertentu.
7. MySQL dapat berjalan dalam banyak varian Unix dengan baik, sebaik seperti
saat berjalan di sistem non-Unix.
8. MySQL mudah didapatkan dan memiliki source code yang boleh
disebarluaskan sehingga bisa dikembangkan lebih lanjut.
9. Dapat dikoneksikan pada bahasa C, C++, Java, Perl, PHP dan Python.

Universitas Sumatera Utara

17

Jika hal-hal diatas ialah kelebihan yang dimiliki oleh MySQL, maka MySQL juga
memiliki kekurangan seperti :
1. Untuk koneksi ke bahasa pemrograman visual seperti visual basic, delphi, dan
foxpro, MySQL kurang mendukung. Karena koneksi ini menyebabkan field
yang dibaca harus sesuai dengan koneksi dari program visual tersebut. Dan ini
yang menyebabkan MySQL jarang dipakai dalam program visual.
2. Data yang ditangani belum begitu besar.

2.5 XAMPP Control Panel

XAMPP merupakan tool yang menyediakan paket perangkat lunak ke dalam satu
buah paket. Dengan menginstall XAMPP maka tidak perlu lagi melakukan instalasi
dan konfigurasi web server Apache, PHP dan MySQL secara manual. XAMPP akan
menginstalasi dan mengkonfigurasikannya secara otomatis untuk anda atau auto
konfigurasi.

Anda

bisa

mendownload

aplikasi

xampp

di

//www.apachefriends.org/en/xampp-window.html.

2.6 PHP: Hypertext Preprocessor

Menurut dokumen resmi PHP, PHP adalah singkatan dari PHP Hypertext
Preprocessor. Ia merupakan bahasa pemrograman yang berbentuk skrip yang
ditempatkan didalam server dan diproses di server. Hasilnyalah yang akan
dikirimkan ke klien, tempat pemakai menggunakan browser.

Universitas Sumatera Utara

18

Secara khusus, PHP dirancang untuk membentuk android dinamis.
Artinya, ia dapat membentuk suatu tampilan berdasarkan permintaan terkini.
Misalnya, untuk menampilkan isi database ke halaman android.

PHP bersifat bebas dipakai. Tidak perlu membayar apapun untuk
menggunakan perangkat lunak ini. Berikut contoh sederhana skrip PHP.



2.7 PHP dan MySQL Sebagai Web Service

Web service merupakan sesuatu yang berbeda jika dibandingkan dengan website.
Website sendiri dirancang dengan tampilan atau user interface yang baik sedangkan
web service tidak. Web service tidak dirancang untuk berinteraksi langsung dengan
pengguna. Sesuai dengan namanya, web service hanya menyediakan layanan saja.

Sehingga, web service sendiri dapat disebut sebagai sebuah aplikasi yang dibuat
agar dapat dipanggil atau diakses oleh aplikasi lain melalui internet dengan
menggunakan format pertukaran data sebagai pengiriman pesan. Web service juga
memungkinkan untuk dipanggil dengan menggunakan protokol lain seperti SMTP
(Simple Mail Transfer Protocol), namun yang paling umum digunakan ialah HTTP.
Karena web service menggunakan protokol HTTP, tentu PHP sebagai bahasa
pemrograman web menjadi salah satu kekuatan dalam bahasa pemrogaman yang

Universitas Sumatera Utara

19

mengelola web service. Banyak teknik dan metode untuk menghasilkan web service
dengan PHP, pembuatan web service dengan format XML dan JSON yang diambil
dari database MySQL lewat bahasa pemrograman PHP.

2.8 Intregreted Developnment Environment

Menurut buku karya Nazruddin Safaat H, para pengembang aplikasi android
memiliki beberapa pilihan ketika membuat aplikasi berbasis androidnya.
Kebanyakan para pengembang menggunakan Eclipse yang tersedia secara bebas
untuk merancang dan mengembangkan aplikasi android.

Eclipse adalah IDE yang paling populer untuk pengembangan android,
karena memiliki android plug-in yang tersedia untuk memfasilitasi pengembangan
android. selain itu eclipse juga mendapat dukungan langsung dari Google untuk
menjadi IDE pengembangan aplikasi android. Ini terbukti dengan adanya
penambahan plug-in pada eclipse untuk membuat project android dimana source
software langsung dari situs resminya Google. Walaupun eclipse cukup populer di
kalangan umum, namun tidak menutup kemungkinan untuk menggunakan IDE lain
seperti Netbeans.

2.9 Flowchart

Flowchart merupakan bagan atau gambar yang memperlihatkan hubungan antarproses beserta instruksinya. Gambaran ini dinyatakan dengan simbol yang mana

Universitas Sumatera Utara

20

dari tiap-tiap simbol mewakili proses tertentu. Sedangkan hubungan antar-proses
tadi digambarkan dengan garis-garis.

Flowchart merupakan langkah awal pembuatan program. Setelah flowchart
selesai disusun, selanjutnya pemrogram menerjemahkannya ke dalam bentuk
program menggunakan bahasa pemrograman. Berikut ini adalah simbol-simbol
standar pada sebuah flowchart beserta fungsinya.

Tabel 2.1. Simbol Flowchart
No

Nama

1

Terminator

Digunakan untuk
mewakili simbol start atau
end.

2

Arrow

Menunjukkan alur proses.

3

Rectangle

Menunjukkan langkah
pemrosesan.

4

Trapezium

Simbol untuk inputoutput.

5

Document

Digunakan untuk
mewakili output.

Decision

Simbol yang berfungsi
untuk menyatakan
keputusan.

Preparation

Simbol yang berfungsi
untuk proses inisialisasi
atau pemberian harga
awal.

6

7

Simbol

Fungsi

Universitas Sumatera Utara

21

Tabel 2.1. Lanjutan
No

Nama

Simbol

Fungsi

Connector

Simbol untuk keluarmasuk atau
penyambungan proses
pada halaman yang
berbeda.

9

Manual Input

Simbol untuk
pemasukkan data secara
manual melalui keyboard.

10

Manual
Operation

Simbol yang
menunjukkan pengolahan
yang tidak dilakukan oleh
komputer.

11

Predefine
Process

Simbol untuk pelaksanaan
suatu bagian (subprosedur)

12

Display

Simbol yang menyatakan
peralatan output yang
digunakan seperti layar,
printer, plotter, dan
sebagainya.

13

Magnetic Disk

Simbol yang digunakan
untuk penyimpanan data
ke database.

Storage Data

Simbol yang menyatakan
input yang berasal dari
disk atau disimpan ke
disk.

8

14

Universitas Sumatera Utara

22

2.10

Data Flow Diagram

Data Flow Diagram adalah alat perancangan sistem yang berorientasi pada alur
data dengan konsep dekomposisi yang dapat digunakan untuk penggambaran
analisa maupun perancangan sistem yang mudah dikomunikasikan ke pengguna
ataupun ke pembuat program.

Didalam DFD terdapat tiga level, yaitu :
1. Diagram Konteks (DFD Level 0)
Diagram konteks menggambarkan satu lingkaran besar yang dapat
mewakili seluruh proses yang terdapat dalam suatu sistem. Diagram konteks
merupakan tingkatan tertinggi dalam Data Flow Diagram dan biasanya
diberi penomoran nol. Semua entitas eksternal ditunjukkan dalam diagram
konteks beserta dengan aliran-aliran data utama, baik dari dan menuju
sistem.
2. Diagram Nol (DFD Level 1)
Diagram nol merupakan satu lingkaran besar yang mewakili lingkaranlingkaran kecil yang ada pada diagram konteks. Dengan kata lain diagram
nol merupakan pemecahan dari diagram konteks.
3. Diagram Rinci
Lebih rinci lagi, diagram rinci adalah diagram yang menguraikan prosesproses yang terdapat di dalam diagram nol.

Berikut merupakan simbol-simbol standar menurut Yourdan dan DeMarco
yang digunakan untuk membuat sebuah Data Flow Diagram.

Universitas Sumatera Utara

23

Tabel 2.2. Simbol Data Flow Diagram
No

Nama

1

Kesatuan Luar

2

Arus Data

3

Proses

4

Simpanan Data

2.11

Simbol

Media

Nama data store

Fungsi
Sebagai kesatuan
(entitas) di lingkungan
luar sistem yang dapat
berupa orang,
organisasi, sumber asli
transaksi, atau penerima
akhir.
Berfungsi untuk
menghubungkan antara
proses, simpanan data,
dan kesatuan luar.
Berupa kegiatan atau
proses yang sedang
dilakukan.
Menunjukkan informasi
yang tersimpan.

Entity Relationship Diagram

Entity Relationship Diagram merupakan suatu model untuk menjelaskan hubungan
antar-data dalam basis data berdasarkan objek-objek dasar data yang mempunyai
hubungan antar-relasi.

Menurut salah satu para ahli, Brady dan Loonam (2010), Entity Relationship
Diagram (ERD) merupakan salah satu teknik yang digunakan untuk memodelkan
kebutuhan data dari suatu organisasi. Komponen penyusun ERD adalah sebagai
berikut.

Universitas Sumatera Utara

24

Tabel 2.3. Komponen ERD
No

Nama

Simbol

Fungsi

1

Entitas

Persegi panjang untuk
entitas

2

Atribut

Ellips untuk atribut

3

Relasi

Belah ketupat mewakili
relasi

4

Garis

Garis menghubungkan

Entitas adalah objek dalam dunia nyata yang dapat dibedakan dengan objek
lain, seperti mahasiswa, dosen, departemen. Sedangkan setiap entitas pasti memiliki
elemen yang disebut atribut yang berfungsi untuk mendeskripsikan karakter dari
entitas tersebut. Misalnya, atribut dari mahasiswa adalah nim dan nama. Relasi
merupakan gambaran antar-entitas.

Universitas Sumatera Utara