4 BAB II LANDASAN TEORI 2.1 Konsep Dasar Program Menurut Kadir (2014:15)mendefinisikan bahwa ”program adalah kumpulan instruksi yang ditujukan untuk komputer. Melalui program, komputer dapat agar dapat melaksanakan suatu tugas tertentu sesuai yang telah ditentukan oleh pemprogram” Tanpa program, komputer sesungguhnya tidak dapat berbuat apa-apa. Itulah sebabnya sering dikatakan bahwa komputer mencangkup tiga aspek penting berupa perangkat keras (hardware), perangkat lunak (sofware) yang dalam hal ini berupa program, dan perangkat akal (brainware) atau orang yang berperan terhadap operasi komputer maupun pengembang perangkat lunak. Dengan kata lain, program merupakan salah satu bagian penting pada komputer, yang mengatur komputer agar melakukan tindakan sesuai dengan yang dikehendaki oleh pembuatnya. Suatu program ditulis dengan mengikuti kaidah bahasa pemerograman tertentu. Bahasa pemrograman dapat dianalogikan dengan bahasa yang digunakan manusia (bahasa manusia). Sebagaimana diketahui, ada bermacam-macam bahasa manusia, seperti bahasa inggris, bahasa indonesia, dan bahasa batak. Kumpulan instruksi dalam bahasa manusia yang berupa sejumlah kalimat dapat anda analogikan dengan suatu program. Manusia dapat mengerjakan suatu instruksi berdasarkan kalimat-kalimat dan komputer bisa menjalankan suatu instruksi menurut program.
32
Embed
BAB II LANDASAN TEORI - repository.bsi.ac.id · manusia, seperti bahasa inggris, bahasa indonesia, dan bahasa batak. Kumpulan instruksi dalam bahasa manusia yang berupa sejumlah kalimat
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
4
BAB II
LANDASAN TEORI
2.1 Konsep Dasar Program
Menurut Kadir (2014:15)mendefinisikan bahwa ”program adalah
kumpulan instruksi yang ditujukan untuk komputer. Melalui program, komputer
dapat agar dapat melaksanakan suatu tugas tertentu sesuai yang telah ditentukan
oleh pemprogram” Tanpa program, komputer sesungguhnya tidak dapat berbuat
apa-apa. Itulah sebabnya sering dikatakan bahwa komputer mencangkup tiga
aspek penting berupa perangkat keras (hardware), perangkat lunak (sofware) yang
dalam hal ini berupa program, dan perangkat akal (brainware) atau orang yang
berperan terhadap operasi komputer maupun pengembang perangkat lunak.
Dengan kata lain, program merupakan salah satu bagian penting pada komputer,
yang mengatur komputer agar melakukan tindakan sesuai dengan yang
dikehendaki oleh pembuatnya.
Suatu program ditulis dengan mengikuti kaidah bahasa pemerograman
tertentu. Bahasa pemrograman dapat dianalogikan dengan bahasa yang digunakan
manusia (bahasa manusia). Sebagaimana diketahui, ada bermacam-macam bahasa
manusia, seperti bahasa inggris, bahasa indonesia, dan bahasa batak. Kumpulan
instruksi dalam bahasa manusia yang berupa sejumlah kalimat dapat anda
analogikan dengan suatu program. Manusia dapat mengerjakan suatu instruksi
berdasarkan kalimat-kalimat dan komputer bisa menjalankan suatu instruksi
menurut program.
5
Dalam konteks pemprograman, terdapat sejumlah bahasa pemprograman
seperti Pascal, C, Basic. Menurut tingkatanya, bahasa-bahasa Pemprograman
dapat dikelompokan menjadi:
1. Bahasa tingkat tinggi (high-level lenguage)
2. Bahasa tingkat rendah (low-level lenguage)
Bahasa tingkat tinggi adalah bahasa pemprograman yang berorientasi
kepada bahasa manusia. Program yang dibuat yang dibuat menggunakan bahasa
pemprograman yang mudah dipahami manusia. Biasanya menggunakan kata-
kata bahasa Inggris, misal IF untuk menyatakan “Jika” dan AND untuk
menyatakan “Dan” termasuk dalam kelompok bahasa ini yaitu Java, C++, dan
Basic.
Bahasa tingkat rendah adalah bahasa pemprograman yang berorientasi
pada mesin bahasa ini menggunakan kode biner (yang mengenal kode 0 dan 1),
atau kode sedehana yang menggantikan kode-kode tertentu dalam sistem biner.
Yang tergolong dalam atau kelompok bahasa ini adalah bahasa mesin dan
bahasa rakitan. Bahasa- bahasa tersebut sangat sulit dipahami oleh orang awam.
Programer harus mengusai operasi komputer secara teknis. Namun, bahasa jenis
ini memberikan eksekusi program yang sangat cepat. Selain itu, bahasa mesin
bersifat sangat tergantung padad mesin (machine dependent) artinya, bahasa
mesin antar mesin yang satu dengan yang lain sangat berbeda.
2.2 Java
Menurut Kadir (2014:15) mendefinisikan bahwa “Java adalah
pemprograman yang terkenal. Java banyak digunakan untuk membangun
6
program, dirilis pertama kali pada tahun 1995 oleh Sun Microsystem. Penciptanya
adalah Jamae Gosling”.
Java berorientasi pada pemprograman berorientasi objek (object oriented
programing dan OOP) adalah suatu pendekatan yang memungkinkan suatu kode
yang digunakan untuk menyusun program menjadi lebih mudah untuk digunakan
kembali (istilahya “reusability”), lebih handal, dan lebih mudah dipahami. Salah
satu fitur dalam OOP adalah pewarisan. Fitur inilah yang membuat suatu kode
yang telah ditulis dalam bentuk kelas sangat mudah untuk diwariskan ke kelas lain
guna mendukung sifat reusable.
Dalam terminologi OOP, kelas adalah suatu cetakan yang membentuk objek,
Sebagai contoh, java menyediakan kelas bernama string. Dengan menggunakan
kelas tersebut, objek (atau terkadang disebut instan kelas) yang berisi nama orang
serta objek yang berisi alamat orang bisa dibentuk.
Sebuah kelas mengandung dua bagian penting yang disebut atribut dan perilaku.
Atribut adalah data yang membedakan satu objek dengan objek lain. Atribut
dinyatakan dengan variabel instan. Perilaku menyatakan suatu tindakan yang
dikenakan terhadap suatu objek misalnya untuk mengubah atribut dalam objek,
perilaku diimplementasikan dengan menggunakan metode.
2.3.Android
Menurut Safaat H (2015:1) mendefinisikan 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 yang
7
membuat peranti lunak untuk ponsel/smartphone. Kemudian untuk
mengembangkan Android, di bentuklah Open Handset Alliance, konsorium
dari 34 perusahaan perantikeras, peranti lunak, dan telekomunikasi, termasuk
Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia.
2.3.1. Android : Platform Masa Depan
Android dipuji sebagai “Platform mobile pertama yang lengkap,
terbuka, dan bebas”.
1. Lengkap (Complete Platform): Para desainer dapat melakukan
pendekatan komprehensif ketika mereka sedang mengembangkan
platform Android. Android merupakan system oprasi yang aman dan
banyak menyediakan tools dalam membangun sofware dan
memungkinkan untuk peluang pengembangan aplikasi.
2. Terbuka (Open Source Platform): Platform android disediakan melalui
lisensi open source. Pengembangan dapat dengan bebas untuk
mengembangkan aplikasi. Android sendiri menggunakan Linux Kernel
2.6.
3. Free (Free Platform): Android adalah platform/aplikasi yang bebas
untuk develope. Tidak ada lisensi atau biaya royalti untuk
dikembangkan pada platform android. Tidak ada biaya keanggotaan
diperlukan. Tidak diperlukan biaya pengujian. Tidak ada kontrak yang
diperlukan. Aplikasi untuk android dapat didistribusikan dan
diperdagangkan dalam bentuk apapun.
Android merupakan generasi baru platform mobile, platform yang
memberikan pengembang untuk melakukan pengembangan sesuai dengan
8
yang diharapkannya. Sistem operasi yang mendasari android dilisensikan
di bawah GNU, General Public Lisensi Versi 2 (GPLv2), yang sering
dikenal dengan “copyleft” lisensi dimana setiap perbaikan pihak ketiga
harus jatuh di bawah terms. Android didistribusikan di bawah lisensi
Apache Sofware (ASL/Apache2), yang memungkinkan untuk distribusi
kedua dan seterusnya. Komersialisasi pengembang (produsen handset
khususnya) dapat memilih untuk meningkatkan platform tanpa harus
memberikan perbaikan mereka kemasyarakat open source. Sebaiknya,
pengembang dapat keuntungan dari perangkat tambahan seperti perbaikan
dan mendistribusikan ulang pekerjaan mereka di bawah lisensi apapun
yang mereka inginkan. Pengembang aplikasi android diperbolehkan untuk
mendistribusikan aplikasi mereka di bawah skema lisensi apapun yang
mereka inginkan.
2.3.2. Arsitektur Android
Secara garis besar arsitektur android dapat dijelaskan dan
digambarkan sebagai berikut:
1. Application dan Widgets
Application dan Widgets ini adalah layer di mana
berhubungan dengan aplikasi saja, dimana kita biasanya download
aplikasi kemudain 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 bahas pemerograman java.
9
2. 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 resources, 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 (reuse).
Sehingga bisa kita simpulkan Applications Frameworks
ini adalah layer dimana para pembuat aplikasi melakukan
pengembangan/pembuatan aplikasi yang akan dijalankan di
sistem operasi android, karean pada layer ini aplikasi dapat
dirancang dan dibuat, seperti content-providers yang berupa sms
dan panggilan telepon.
Komponen-komponen yang termasuk di dalam
Applications Frameworks adalah sebagai berikut:
a. Views
b. Content Provider
c. Resource Manager
d. Nitification Manager
10
e. Activity Manager
3. Libraries
Libraries ini adalah layer dimana fitur-fitur android berada,
biasanyan para pembuat aplikasi mengakses libraries untuk
menjalankan aplikasinya. Berjalan diatas karnel, layer ini meliputi
berbagai library C/C++ inti seperti Libc dan SSl, serta:
a. Libraries media untukpemutaran media audio dan video
b. Libraries untuk manajemen tampilan
c. Libraries graphics mencangkup 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
f. Libraries LiveWebcore mencangkup modern web browser
dengan egine embeded web view
g. Libraries 3D yang mencangkup implementasi OpenGL ES 1.0
API’s
4. Android Run Time
Layer yang membuat aplikasi android dapat dijalankan di
mana dalam prosesnya menggunakan implementasi linux. Dalvik
Virtual Machine(DVM) merupakan mesin yangmemebentuk dasar
kerangka aplikasi android, didalam android run time dibagi
menjadi dua bagian yaitu:
11
a. Core libraries: Aplikasi android dibangundalambahasa java,
sementara Dalvik sebagai virtual masinnya 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 masin berbasis register yang
dioptimalkan untuk menjalankan fungsi-fungsi secara efisien,
dimana merupakan pengembangan yang mampu membuat
linux karnel untuk melakukan threading dan manajemen
tingkat rendah.
5. Linux Karnel
Linux karnel adalah layer dimana inti dari operating sistem
android itu berada. Berisi file-file system yang mengatur sistem
processing, memory, resource, drivers, dan sistem-sistem operasi
android lainnya. Linux kernel yang digunakan android adalah linux