Anda di halaman 1dari 73

BUKU INFORMASI

MENUNJUKKAN PLATFORM OPERATING


SYSTEM DAN BAHASA PEMROGRAMAN DI
DALAM PERANGKAT LUNAK
J.612000.001.01

KEMENTERIAN KETENAGAKERJAAN R.I.


DIREKTORAT JENDERAL PEMBINAAN PELATIHAN DAN PRODUKTIVITAS
DIREKTORAT BINA STANDARDISASI KOMPETENSI DAN PELATIHAN KERJA
Jl. Jend. Gatot Subroto Kav. 51 Lt. 6.A Jakarta Selatan
2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

DAFTAR ISI

DAFTAR ISI -------------------------------------------------------------------------------------- 2


BAB I PENDAHULUAN ------------------------------------------------------------------------ 4
A. Tujuan Umum --------------------------------------------------------------------- 4
B. Tujuan Khusus -------------------------------------------------------------------- 4
BAB II MENUNJUKKAN JENIS PLATFORM SISTEM OPERASI BERBASIS MOBILE -- 5
A. Pengetahuan yang diperlukan dalam menunjukkan platform operating
system dan bahasa pemrograman di dalam perangkat lunak ----------- 5
1. Cara menunjukkan arsitektur dasar sistem operasi berbasis mobile
sesuai dengan perangkat keras yang digunakan ---------------------- 5
2. Cara menunjukkan platform sistem operasi berbasis mobile sesuai
dengan perangkat keras yang digunakan-------------------------------- 13
3. Cara menunjukkan security pada platform sistem operasi berbasis
mobile sesuai perangkat keras yang digunakan ------------------------ 14
B. Keterampilan yang Diperlukan dalam menunjukkan platform operating
system dan bahasa pemrograman di dalam perangkat lunak ------------- 18
C. Sikap Kerja dalam yang Diperlukan dalam menunjukkan platform
operating system dan bahasa pemrograman di dalam perangkat lunak- 18
BAB III MENENTUKAN PLATFORM SISTEM OPERASI YANG SESUAI KEBUTUHAN
USER ----------------------------------------------------------------------------------- 19
A. Pengetahuan yang Diperlukan dalam Menentukan platform sistem
operasi yang sesuai kebutuhan user ------------------------------------------ 19
1. Cara merancang kebutuhan user berdasarkan spesifikasinya -------- 19
2. Cara menentukan platform sistem operasi untuk mengembangkan
aplikasi mobile---------------------------------------------------------------- 21
B. Keterampilan yang Diperlukan dalam Menentukan platform sistem
operasi yang sesuai kebutuhan user ------------------------------------------- 26
C. Sikap Kerja yang Diperlukan dalam Menentukan platform sistem
operasi yang sesuai kebutuhan user ------------------------------------------- 26
BAB IV MENJELASKAN BAHASA PEMROGRAMAN BERBASIS MOBILE ------------------ 27

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 2 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

A. Pengetahuan yang Diperlukan dalam Menjelaskan bahasa


pemrograman berbasis mobile ------------------------------------------------- 27
1. Cara menentukan jenis bahasa pemrograman pemrograman
berbasis mobile -------------------------------------------------------------- 27
2. Cara membandingkan perbedaan bahasa pemrograman berbasis
mobile ------------------------------------------------------------------------- 30
3. Cara mengkonfigurasikan perangkat lunak terkait penggunaan
bahasa pemrograman berbasis mobile sesuai dengan
spesifikasinya ----------------------------------------------------------------- 30
4. Cara menghasilkan alur program untuk pembuatan aplikasi
berbasis mobile -------------------------------------------------------------- 30
5. Cara menentukan konsep variabel dan konstanta dalam salah satu
bahasa pemrograman ------------------------------------------------------- 30
6. Cara menentukan konsep struktur kondisi dan perulangan dalam
salah satu bahasa pemrograman berbasis mobile ---------------------- 30
7. Cara menjelaskan konsep layout dan object dalam salah satu
pemrograman berbasis mobile.-------------------------------------------- 30
8. Cara membangun aplikasi mobile sederhana dengan bahasa
pemrograman mobile ------------------------------------------------------- 30
B. Keterampilan yang Diperlukan dalam Menjelaskan bahasa
pemrograman berbasis mobile -------------------------------------------------- 31
C. Sikap Kerja yang Diperlukan dalam Menjelaskan bahasa pemrograman
berbasis mobile -------------------------------------------------------------------- 31
DAFTAR PUSTAKA ------------------------------------------------------------------------------- 38
A. Dasar Perundang-undangan ---------------------------------------------------- 39
B. Buku Referensi ------------------------------------------------------------------- 39
C. Majalah atau Buletin -------------------------------------------------------------- 40
D. Referensi Lainnya ----------------------------------------------------------------- 40
DAFTAR PERALATAN/MESIN DAN BAHAN --------------------------------------------------- 40
A. Daftar Peralatan/Mesin ----------------------------------------------------------- 41
B. Daftar Bahan ----------------------------------------------------------------------- 41
DAFTAR PENYUSUN............................................................................................ 41

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 3 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

BAB I
PENDAHULUAN

A. Tujuan Umum
Setelah mempelajari modul ini peserta latih diharapkan mampu menunjukkan
platform operating system dan bahasa pemrograman di dalam perangkat lunak
dengan benar.
B. Tujuan Khusus
Adapun tujuan mempelajari unit kompetensi melalui buku informasi menunjukkan
platform operating system dan bahasa pemrograman di dalam perangkat lunak ini
guna memfasilitasi peserta latih sehingga pada akhir pelatihan diharapkan memiliki
kemampuan sebagai berikut:
1. Menunjukkan jenis platform sistem operasi berbasis mobile, termasuk
menunjukan arsitektur dasar sistem operasi berbasis mobile sesuai dengan
perangkat keras yang digunakan, menunjukkan platform sistem operasi
berbasis mobile sesuai dengan perangkat keras yang digunakan dan
menunjukkan security pada platform sistem operasi berbasis mobile sesuai
dengan perangkat keras yang digunakan.
2. Menentukan platform sistem operasi yang sesuai kebutuhan user termasuk
merancang kebutuhan user berdasarkan spesifikasinya dan menentukan
platform sistem operasi untuk mengembangkan aplikasi mobile
3. Menjelaskan bahasa pemrograman berbasis mobile termasuk menentukan jenis
bahasa pemrogramman mobile pemrograman berbasis mobile, membandingkan
perbedaan bahasa pemrograman berbasis mobile, mengkonfigurasikan
perangkat lunak terkait penggunaan bahasa pemrograman berbasis mobile
sesuai dengan spesifikasinya, menghasilkan alur program untuk pembuatan
aplikasi berbasis mobile, menentukan konsep variabel dan konstanta dalam
salah satu bahasa pemrograman, menentukan konsep struktur kondisi dan
perulangan dalam salah satu bahasa pemrograman berbasis mobile,
menjelaskan konsep layout dan object dalam salah satu pemrograman berbasis
mobile, membangun aplikasi mobile sederhana dengan bahasa pemrograman
mobile.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 4 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

BAB II
MENUNJUKKAN JENIS PLATFORM SISTEM OPERASI BERBASIS MOBILE

A. Pengetahuan yang diperlukan dalam Menunjukkan Jenis Platform Sistem


Operasi Berbasis Mobile
1. Cara menunjukkan arsitektur dasar sistem operasi berbasis mobile
sesuai dengan perangkat keras
a. Arsitektur dasar sistem operasi
1) Pengertian Sistem Operasi
Sistem komputer dapat dibagi menjadi empat komponen: perangkat
keras, sistem operasi, program aplikasi, dan para pengguna

Gambar 1
Sistem komputer

Sistem operasi adalah sebuah program yang berperan sebagai


penghubng antara pengguna dan perangkat keras computer serta
mengendalikan eksekusi semua jenis program.
Beberapa fungsi dari system operasi adalah:
 Pengelolaan memori (Memory Management)
 Pengelolaan Prosesor (Processor Management)
 Pengelolaan perangkat (Device Management)
 Pengelolaan file (File Management)
 Keamanan (Security)
Judul Modul menunjukkan platform operating system dan bahasa pemrograman di
dalam perangkat lunak Halaman: 5 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

 Kontrol atas kinerja system (Control over system performance)


 Akuntansi pekerjaan (Job accounting)
 mendeteksi Kesalahan alat bantu (Error detecting aids)
 Koordinasi antara perangkat lunak dan pengguna lain (Coordination
between other software and users)
Sistem operasi menyediakan sarana untuk penggunaan yang tepat dari
sumber daya dalam pengoperasian sistem komputer. Sistem operasi
adalah program yang mengelola perangkat keras computer,
menyediakan dasar untuk program aplikasi dan bertindak sebagai
perantara antara pengguna komputer dan perangkat keras komputer.
Sistem operasi untuk komputer seluler (mobile) menyediakan lingkungan
di mana pengguna dapat dengan mudah berinteraksi dengan komputer
untuk menjalankan program. Dengan demikian, beberapa sistem operasi
dirancang agar nyaman atau menjadi efisien, atau kombinasi dari
keduanya (Silberschatz, Galvin, & Gagne, 2013)
Sistem Operasi adalah program dengan fitur-fitur sebagai berikut berikut:
(tutorialspoint.com, n.d.)
 Program yang bertindak sebagai antarmuka antara perangkat lunak
dan perangkat keras komputer.
 Serangkaian program khusus yang terintegrasi yang digunakan untuk
mengelola sumber daya dan operasi keseluruhan komputer.
 Perangkat lunak khusus yang mengontrol dan memantau pelaksanaan
semua program lain yang berada di komputer, termasuk program
aplikasi dan perangkat lunak sistem lainnya.
Tujuan Sistem Operasi:
 Untuk membuat sistem komputer nyaman digunakan secara
efisien.
 Untuk menyembunyikan detail sumber daya perangkat keras
dari pengguna.
 Untuk menyediakan pengguna antarmuka yang nyaman untuk
menggunakan sistem komputer.
 Untuk bertindak sebagai perantara antara perangkat keras dan

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 6 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

penggunanya, sehingga memudahkan pengguna untuk


mengakses dan menggunakan sumber daya lainnya.
 Untuk mengelola sumber daya sistem komputer.
 Untuk melacak siapa yang menggunakan sumber daya mana,
memberikan permintaan sumber daya, dan memediasi
permintaan yang bertentangan dari berbagai program dan
pengguna.
 Untuk menyediakan pembagian sumber daya yang efisien dan
adil di antara pengguna dan program.
Sistem operasi komputer pribadi (PC) mendukung permainan yang rumit,
aplikasi bisnis, dan segala sesuatu di antaranya. Sistem operasi untuk
komputer seluler menyediakan lingkungan di mana pengguna dapat
dengan mudah berinteraksi dengan komputer untuk menjalankan
program. Dengan demikian, beberapa sistem operasi dirancang agar
nyaman, yang lain menjadi efisien, dan yang lain menjadi beberapa
kombinasi dari keduanya.
2) Arsitektur Sistem Operasi
Komponen utama perangkat lunak dari sistem operasi dikenal sebagai
kernel. Kernel memiliki akses tidak terbatas ke semua sumber daya pada
sistem. Pada sistem monolitik awal, setiap komponen sistem operasi
terdapat di dalam kernel, dapat berkomunikasi secara langsung dengan
komponen lain, dan memiliki akses sistem yang tidak terbatas. Meskipun
membuat sistem operasi sangat efisien, namun juga memyebabkan
kesalahan lebih sulit untuk diisolasi, dan ada risiko kerusakan tinggi
karena kode yang salah atau berbahaya.

Gambar 2
Arsitektur Sistem Operasi Amonolithic
Judul Modul menunjukkan platform operating system dan bahasa pemrograman di
dalam perangkat lunak Halaman: 7 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

Ketika sistem operasi menjadi lebih besar dan lebih kompleks,


pendekatan ini mulai ditinggalkan menuju pendekatan modular yang
mengelompokkan komponen dengan fungsi serupa ke dalam lapisan
(layers) untuk membantu perancang sistem operasi untuk mengelola
kompleksitas sistem. Dalam arsitektur semacam ini, setiap lapisan hanya
berkomunikasi dengan lapisan langsung di atas dan di bawahnya, dan
lapisan tingkat yang lebih rendah menyediakan layanan ke tingkat yang
lebih tinggi menggunakan antarmuka yang menyembunyikan
penerapannya.
Modularitas sistem operasi berlapis memungkinkan implementasi setiap
lapisan untuk dimodifikasi tanpa memerlukan modifikasi pada lapisan
yang berdekatan. Meskipun pendekatan modular ini memaksakan
struktur dan konsistensi pada sistem operasi, menyederhanakan proses
debug dan modifikasi, permintaan layanan dari proses pengguna dapat
melewati banyak lapisan perangkat lunak sistem sebelum diservis dan
kinerja membandingkan secara tidak menguntungkan dengan kernel
monolitik. Juga, karena semua lapisan masih memiliki akses tidak
terbatas ke sistem, kernel masih rentan terhadap kode yang
menyimpang atau berbahaya. Banyak sistem operasi saat ini, termasuk
Microsoft Windows dan Linux, menerapkan beberapa tingkatan layering.

Gambar 3
A layered OS architecture

Arsitektur mikrokernel hanya mencakup sejumlah kecil layanan di dalam


Judul Modul menunjukkan platform operating system dan bahasa pemrograman di
dalam perangkat lunak Halaman: 8 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

kernel untuk membuatnya tetap kecil dan skalabel. Layanan biasanya


mencakup manajemen memori tingkat rendah, komunikasi antar-proses
dan sinkronisasi proses dasar untuk memungkinkan proses bekerja sama.
Dalam desain mikrokernel, sebagian besar komponen sistem operasi,
seperti manajemen proses dan manajemen perangkat, mengeksekusi di
luar kernel dengan tingkat akses sistem yang lebih rendah.

Microkernels sangat modular, membuatnya dapat diperpanjang, portabel


dan dapat diskalakan. Komponen sistem operasi di luar kernel dapat
gagal tanpa menyebabkan sistem operasi jatuh. Sekali lagi, sisi
negatifnya adalah peningkatan komunikasi antar-modul yang dapat
menurunkan kinerja sistem.

Gambar 4
A microkernel OS architecture

3) Jenis-jenis Sistem Operasi

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 9 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

Tabel 1
Jenis-jenis system operasi
No. Sitem Operasi Keterangan
PC
1. Microsoft Windows Microsoft Windows adalah keluarga
sistem operasi untuk komputer
pribadi dan bisnis. Windows
mendominasi dunia komputer
pribadi, menawarkan antarmuka
pengguna grafis (GUI), manajemen
memori virtual, multitasking, dan
dukungan untuk banyak perangkat
periferal.
2. Apple Mac OS X Mac OS adalah nama resmi sistem
operasi Apple Macintosh. Mac OS
memiliki antarmuka pengguna grafis
(GUI) yang menggunakan jendela,
ikon, dan semua aplikasi yang
berjalan pada komputer Macintosh
memiliki antarmuka pengguna yang
serupa.
3. Linux Linux adalah sistem operasi sumber
terbuka yang didistribusikan bebas
yang berjalan di sejumlah platform
perangkat keras. Kernel Linux
dikembangkan terutama oleh Linus
Torvalds dan ini didasarkan pada
Unix.
Mobile
4. IOS Apple iOS adalah sistem operasi
seluler eksklusif yang berjalan di
iPhone, iPad, dan iPod Touch.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 10 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

Apple iOS didasarkan pada sistem


operasi Mac OS X untuk komputer
desktop dan laptop. Kit pengembang
iOS menyediakan alat yang
memungkinkan pengembangan
aplikasi iOS.
5. ANDROID Android OS adalah platform berbasis
Linux untuk telepon seluler. Android
dirilis di bawah lisensi open source
Apache v2.
Android dikembangkan oleh Google
dan Open Handset Alliance (OHA),
sebuah koalisi perangkat keras,
perangkat lunak, dan perusahaan
telekomunikasi.
6. Windows phone Windows phone merupakan
perluasan dari desktop Windows
yang sudah tidak asing ke perangkat
portabel, seperti ponsel PPC, PDA,
pemutar musik portabel. Ada tiga
jenis sistem operasi Windows Mobile,
yaitu, Windows Mobile Standard,
Windows Mobile Professional,
Windows Mobile Classic.
7. Blackberry Blackberry OS dibuat oleh Research
In Motion, untuk ponsel Black Berry.
OS difokuskan pada pengoperasian
yang mudah dan pada awalnya
dirancang untuk bisnis. Sistem
operasi Blackberry menyediakan
multitasking dan mendukung
perangkat input khusus yang telah

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 11 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

diadopsi oleh RIM untuk digunakan


dalam handheld-nya, terutama track
wheel, trackball, dan yang paling
baru, track pad dan layar sentuh.

a) Windows
Hampir 90% pengguna Sistem Operasi menggunakan Windows.
Diperkenalkan pada 1985 sudah Sistem operasi ini sudah mature dan
telah memiliki bagian-bagian software yang lengkap.
Kelebihan
 Kompatibilitas: Hampir setiap aplikasi, driver atau game akan
berfungsi di Windows.
 Dukungan teknis: Memiliki begitu banyak pengguna, mudah
menemukan seseorang (baik online atau offline) yang dapat
membantu dengan Windows.
 Banyak fungsi: Ketika mengenal Windows dengan baik, maka
akan menemukan bahwa ada begitu banyak fungsi yang dapat
dilakukan hampir semua hal dengan mudah.
Kelemahan:
 Virus: perlu membeli program antivirus, meskipun ada yang
gratis.
 Lambat: Windows, terutama Vista dan 7, membutuhkan banyak
sumber daya komputer (memori, prosesor, ruang disk), dan
dengan demikian, berjalan lebih lambat.
b) Macintosh
Sistem Operasi Macintosh dari Apple lebih tua dari Windows
merupakan sistem operasi berbasis grafis pertama yang sukses, yang
dirilis satu tahun sebelum Microsoft.
Kelebihan:
 Virus: Apple Mac hampir tidak memiliki virus.
 Reliabilitas: Mac hanya berjalan di komputer Apple, dan dengan
demikian kurang rentan terhadap kerusakan perangkat keras dan

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 12 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

perangkat lunak.
 Tampilan: Mac terlihat lebih baik daripada Windows.
Kekurangan:
 Mahal: biaya Mac lebih dari Windows.
 Hanya tersedia di komputer Apple: Jika Anda sudah memiliki
komputer, Anda tidak dapat menginstal MAC di atasnya kecuali
Apple.
 Kompatibilitas: Hanya beberapa program yang akan berjalan di
Mac, dan hampir tidak ada game.
c) Linux
Linux adalah jawaban GNU untuk Mac dan Windows. Linux gratis,
pengguna dapat mengunduh, memodifikasi, dan mendistribusikan
ulang tanpa biaya. Linux telah ditulis pada tahun 1991, dan
dioptimalkan untuk penggunaan modern (baik, lebih dari Windows
dan Mac).
Kelebihan:
 Harga: Linux adalah gratis (F-R-E-E). Pengguna dapat
mengunduh, menginstal, menggunakannya, memodifikasinya.
 Ragam: Linux bukan sistem operasi penuh. Itu hanya sebuah
kernel. Untuk menggunakan kernel, perangkat lunak tambahan
harus dipaketkan dengan Linux. Tersedia beberapa ratus bundel
ini (disebut "distribusi" atau hanya "distro"). Yang paling populer
termasuk Ubuntu, Mint dan Fedora. Hal yang baik adalah, dengan
begitu banyak rasa Linux yang berbeda, selalu ada satu yang
sesuai dengan kebutuhan pengguna
 Virus: Meskipun lebih rentan terhadap virus daripada Mac (karena
open source), Linux masih memiliki sangat sedikit virus.
Kekurangan:
 Rumit: Meskipun beberapa distro cukup mudah digunakan,
kebanyakan dari mereka akan membutuhkan banyak
pengetahuan komputer untuk membuatnya bekerja.
 Kompatibilitas: Seperti Mac, yang hanya mewakili beberapa

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 13 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

persen pangsa pasar, Linux tidak memiliki banyak program dan


game seperti Windows.
 Vendor: Pengguna tidak akan menemukan banyak vendor yang
menjual komputer Linux. Biasanya, Anda akhirnya harus membeli
komputer Windows, memformat ulang hard drive, dan menginstal
Linux sendiri.
d) Android
Android dikembangkan oleh Google Inc. Android adalah platform
Open Source, yang diturunkan dari Linux yang didukung oleh Google,
bersama dengan pengembang perangkat keras dan perangkat lunak
utama (seperti Intel, HTC, ARM, dan eBay, untuk beberapa nama),
yang membentuk Open Aliansi Handset. OS ini, meskipun sangat
baru, sudah memiliki sekte berikut di antara programmer yang ingin
mengembangkan aplikasi untuk, Open Source, back end yang
fleksibel. Android menjanjikan untuk memberi pengembang akses ke
setiap aspek operasi ponsel.
Kelebihan: Multitasking, Kemudahan akses ke ribuan aplikasi,
beragam pilihan telepon.
Kekurangan: Diperlukan koneksi Internet berkelanjutan, Iklan,
Rentang aplikasi masih dapat diperluas.
e) iOS
System operasi seluler yang dikembangkan oleh Apple Inc. dan
didistribusikan secara eksklusif untuk perangkat keras Apple.
IPhone menggunakan sistem operasi yang disebut iPhone OS, yang
berasal dari Mac OS X.
Kelebihan: Integrasi Twitter Langsung, Advance Voice Recognition,
Facetime untuk melakukan panggilan Video.
Kekurangan: Tidak ada dukungan flash, Tergantung pada perangkat
keras Apple, Proses Persetujuan Aplikasi sebagian besar adalah kotak
hitam untuk pengembang, facetime eksklusif untuk perangkat yang
didukung iOS.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 14 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

Gambar 5
Perbandingan Sistem Operasi
(http://socialcompare.com/en/comparison/operating-system-1g1rzjcn)

b. Arsitektur Dasar Sistem Operasi berbasis mobile


1) Android
Sistem operasi Android terdiri dari komponen perangkat lunak yang
diatur di stack. Komponen yang berbeda dari sistem operasi android
adalah:
 Kernel Linux
 Perpustakaan (libraries)
 Android Run time
 Kerangka Aplikasi (application framework)
 Aplikasi

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 15 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

Gambar 6
Arsitektur sistem operasi Android

2) IOS
iPhone OS memiliki empat lapisan abstraksi: lapisan OS Inti, lapisan
Layanan Inti, lapisan Media, dan lapisan Cocoa Touch. Sistem operasi ini
menggunakan sekitar 500megabyte penyimpanan perangkat.
Lapisan Cocoa Touch
Lapisan teratas dari layer OS iPhone dan berisi kerangka kerja yang
paling sering digunakan oleh pengembang aplikasi iPhone. Cocoa Touch
terutama ditulis dalam Objective-C, dan ini didasarkan pada standar Mac
OS X Cocoa API.
Lapisan Media
Lapisan kedua dari bagian atas layer, menyediakan OS iPhone dengan
audio, video, animasi dan kemampuan grafis. Seperti halnya lapisan lain
dari layer OS iPhone, lapisan Media terdiri dari sejumlah kerangka yang
dapat digunakan saat mengembangkan aplikasi iPhone.
Lapisan Layanan Inti
Lapisan ketiga iPhone menyediakan banyak fondasi di mana lapisan di
atas dibangun.
Lapisan OS Inti

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 16 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

Lapisan OS Inti adalah lapisan bawah dari layer OS iPhone dan langsung
berada di atas perangkat keras perangkat. Lapisan ini menyediakan
berbagai layanan termasuk jaringan tingkat rendah, akses ke aksesori
eksternal dan layanan sistem operasi dasar yang biasa seperti
manajemen memori, penanganan sistem file dan untaian.

Perangkat Keras iPhone


Perangkat keras dikelola oleh OS iPhone dan menyediakan teknologi
yang diperlukan untuk mengimplementasikan aplikasi asli di telepon. OS
dikirimkan dengan beberapa aplikasi sistem seperti Mail, Safari, Phone,
yang memberikan layanan standar kepada pengguna.

Gambar 7
Arsitektur sistem operasi IOS
https://codeingwithios.blogspot.com/2017/09/ios-layered-architecture.html

c. Perangkat keras Mobile


Setiap smartphone modern saat ini menggunakan Arsitektur Sistem pada Chip
(System on chip/SoC) dengan 3 komponen utama berikut:
1) Prosesor aplikasi yang mengeksekusi perangkat lunak aplikasi

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 17 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

pengguna dengan instruksi dari middleware dan sistem operasi (OS)


2) Sebuah prosesor baseband (atau modem) dengan komponen OS-nya
sendiri yang melakukan transmisi radio baseband dan penerimaan
audio, video, dan data
3) Berbagai perangkat periferal untuk antarmuka pengguna

Gambar 8
Arisitektur Perangkat mobile

2. Cara menunjukkan platform sistem operasi berbasis mobile sesuai


dengan perangkat keras yang digunakan
Platform adalah sekelompok teknologi yang digunakan sebagai basis/dasar di
mana aplikasi, proses, atau teknologi lain dikembangkan. Dalam komputasi
personal, platform adalah perangkat keras dasar (komputer) dan perangkat
lunak (sistem operasi) di mana aplikasi perangkat lunak dapat dijalankan.

3. Cara menunjukkan security pada platform sistem operasi berbasis


mobile sesuai perangkat keras yang digunakan
Keamanan mengacu pada penyediaan sistem perlindungan ke sumber daya

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 18 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

sistem komputer seperti CPU, memori, disk, program perangkat lunak dan yang
paling penting data / informasi yang disimpan dalam sistem komputer. Jika
program komputer dijalankan oleh pengguna yang tidak sah, maka ia dapat
menyebabkan kerusakan parah pada komputer atau data yang disimpan di
dalamnya. Jadi sistem komputer harus dilindungi dari akses yang tidak sah,
akses berbahaya ke memori sistem, virus, worm dll.
a. Otentikasi (Authentication)
Otentikasi mengacu pada identifikasi setiap pengguna sistem dan
mengaitkan program eksekusi dengan pengguna tersebut. Merupakan
tanggung jawab Sistem Operasi untuk membuat sistem perlindungan yang
memastikan bahwa pengguna yang menjalankan program tertentu adalah
asli. Sistem Operasi umumnya mengidentifikasi / mengautentikasi
pengguna menggunakan 3 (tiga) cara:
1) Username/password - Pengguna harus memasukkan username dan
password terdaftar dengan sistem Operasi untuk masuk ke dalam
sistem.
2) Kartu/kunci pengguna - Pengguna perlu memasukkan kartu di slot
kartu, atau memasukkan kunci yang dihasilkan oleh generator kunci
dalam opsi yang disediakan oleh sistem operasi untuk masuk ke
sistem.
3) Atribut pengguna - sidik jari / pola retina mata / tanda tangan -
Pengguna harus meneruskan atributnya melalui perangkat input
khusus yang digunakan oleh sistem operasi untuk masuk ke dalam
sistem.
b. Kata Sandi satu kali (One Time passwords)
Kata sandi satu kali memberikan keamanan tambahan bersama dengan
otentikasi normal. Dalam One-Time Password system, kata sandi unik
diperlukan setiap kali pengguna mencoba masuk ke sistem. Setelah kata
sandi satu kali digunakan, maka itu tidak dapat digunakan lagi. Kata sandi
satu kali diterapkan dengan berbagai cara:
1) Nomor acak - Pengguna diberikan kartu dengan nomor yang dicetak
bersama dengan huruf yang sesuai. Sistem meminta nomor yang sesuai

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 19 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

dengan beberapa abjad yang dipilih secara acak.


2) Kunci rahasia - Pengguna diberikan perangkat keras yang dapat
membuat id rahasia yang dipetakan dengan id pengguna. Sistem
meminta id rahasia seperti yang akan dihasilkan setiap kali sebelum
login.
3) Kata sandi jaringan - Beberapa aplikasi komersial mengirim kata sandi
satu kali ke pengguna di ponsel / email terdaftar yang harus
dimasukkan sebelum login.
c. Ancaman Program (Program Threats)
Proses dan kernel sistem operasi melakukan tugas yang ditentukan seperti
yang diinstruksikan. Jika program pengguna membuat proses ini melakukan
tugas jahat, maka itu dikenal sebagai Ancaman Program. Salah satu contoh
umum dari ancaman program adalah program yang dipasang di komputer
yang dapat menyimpan dan mengirim pengenal (credentials) pengguna
melalui jaringan ke beberapa peretas. Berikut ini adalah daftar beberapa
bentuk ancaman program:
1) Trojan Horse - Program semacam itu memerangkap credentials login
pengguna dan menyimpannya untuk dikirim ke pengguna jahat yang
nantinya dapat masuk ke komputer dan dapat mengakses sumber daya
sistem.
2) Trap Door - Jika sebuah program yang dirancang untuk bekerja sesuai
kebutuhan, memiliki lubang keamanan di kodenya dan melakukan
tindakan ilegal tanpa sepengetahuan pengguna maka dipanggil untuk
memiliki pintu perangkap.
3) Logic Bomb - Logic bomb adalah sebuah situasi ketika sebuah program
bertingkah hanya ketika kondisi tertentu bertemu jika ia berfungsi
sebagai program asli. Lebih sulit dideteksi.
4) Virus - Virus dapat mereplikasi diri mereka sendiri pada sistem
komputer. Mereka sangat berbahaya dan dapat memodifikasi /
menghapus file pengguna, sistem crash. Virus menghasilkan kode kecil
yang tertanam dalam sebuah program. Saat pengguna mengakses
program, virus mulai tertanam di file / program lain dan dapat membuat

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 20 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

sistem tidak dapat digunakan untuk pengguna


d. Ancaman Sistem (System Threats)
Ancaman sistem mengacu pada penyalahgunaan layanan sistem dan
koneksi jaringan untuk menempatkan pengguna dalam masalah. Ancaman
sistem dapat digunakan untuk menjalankan ancaman program pada
jaringan lengkap yang disebut sebagai serangan program. Ancaman sistem
menciptakan sebuah lingkungan di mana sumber daya / file pengguna
sistem operasi disalahgunakan. Berikut ini adalah daftar beberapa ancaman
system:
1) Worm - Worm adalah proses yang dapat mencekik kinerja sistem
dengan menggunakan sumber daya sistem ke tingkat ekstrim. Proses
Worm menghasilkan banyak salinan di mana setiap salinan
menggunakan sumber daya sistem, mencegah semua proses lain untuk
mendapatkan sumber daya yang dibutuhkan, bahkan dapat mematikan
seluruh jaringan.
2) Pemindaian Port (Port Scanning) - Pemindaian port adalah mekanisme
atau cara yang dapat digunakan hacker untuk mendeteksi kerentanan
sistem untuk melakukan serangan terhadap sistem.
3) Denial of Service - Serangan penolakan layanan biasanya mencegah
pengguna untuk menggunakan sistem secara sah. Misalnya, pengguna
mungkin tidak dapat menggunakan internet jika penolakan layanan
menyerang pengaturan konten browser.
e. Klasifikasi Keamanan Komputer (Computer Security Classifications)
Spesifikasi yang banyak digunakan untuk menentukan dan memodelkan
keamanan sistem dan solusi keamanan adalah Kriteria Evaluasi Sistem
Komputer Tepercaya Departemen Pertahanan AS. Ada empat klasifikasi
keamanan dalam sistem computer yaitu A, B, C, dan D deskripsi singkat
dari setiap klasifikasi.
1) Tipe A, Level tertinggi. Menggunakan spesifikasi desain formal dan
teknik verifikasi. Memberikan jaminan keamanan proses tingkat tinggi.
2) Tipe B, Menyediakan sistem perlindungan wajib. Miliki semua properti
dari sistem C2 kelas. Melampirkan label sensitivitas ke setiap objek.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 21 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

a) B1 - Menjaga label keamanan setiap objek dalam sistem. Label


digunakan untuk membuat keputusan untuk mengakses kontrol.
b) B2 - Memperluas label sensitivitas ke setiap sumber daya sistem,
seperti objek penyimpanan, mendukung saluran terselubung dan
mengaudit acara.
c) B3 - Memungkinkan membuat daftar atau grup pengguna untuk
kontrol akses untuk memberikan akses atau mencabut akses ke
objek bernama yang diberikan.
3) Tipe C, Memberikan perlindungan dan akuntabilitas pengguna
menggunakan kemampuan audit. Ini ada dua jenis.
a) C1 - Menggabungkan kontrol sehingga pengguna dapat
melindungi informasi pribadi mereka dan menjaga pengguna lain
dari tidak sengaja membaca / menghapus data mereka. Versi
UNIX sebagian besar adalah kelas Cl.
b) C2 - Menambahkan kontrol akses tingkat individu ke
kemampuan sistem level Cl.
4) Tipe D, Level terendah. Perlindungan minimum. MS-DOS, Window 3.1
termasuk dalam kategori ini.

B. Keterampilan yang diperlukan dalam Menunjukkan Platform Operating


System Dan Bahasa Pemrograman Di Dalam Perangkat Lunak
1. Menunjukkan arsitektur dasar sistem operasi berbasis mobile sesuai dengan
perangkat keras yang digunakan.
2. Menunjukkan platform sistem operasi berbasis mobile sesuai dengan perangkat
keras yang terkait.
3. Menunjukkan security pada platform sistem operasi berbasis mobile sesuai
dengan perangkat keras yang digunakan

C. Sikap Kerja yang diperlukan dalam Menunjukkan Platform Operating


System Dan Bahasa Pemrograman Di Dalam Perangkat Lunak
2. Harus teliti dalam menunjukkan arsitektur dasar sistem operasi berbasis mobile
3. Harus teliti dalam menunjukkan platform sistem operasi berbasis mobile

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 22 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

4. Harus teliti dalam menunjukkan security pada platform sistem operasi berbasis
mobile

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 23 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

BAB III
MENENTUKAN PLATFORM SISTEM OPERASI YANG SESUAI KEBUTUHAN
USER

A. Pengetahuan yang diperlukan dalam Menentukan Platform Sistem


Operasi Yang Sesuai Kebutuhan User
1. Cara merancang kebutuhan user berdasarkan spesifikasinya
Agar proyek perangkat lunak berhasil, kebutuhan (requirement) harus
dikumpulkan dan dianalisis secara profesional. Dokumen Persyaratan Pengguna
(User Requirement Document) atau Spesifikasi kebutuhan pengguna (User
Requirement Spesification/URS) adalah dokumen yang biasanya digunakan
dalam rekayasa perangkat lunak yang menentukan harapan pengguna terhadap
apa yang dapat dilakukan oleh perangkat lunak. URS merupakan dokumen kunci
di seluruh siklus hidup pengembangan sistem yang diperlukan untuk bisnis
(perlindungan investasi) dan alasan regulasi (mendefinisikan tujuan yang
dimaksudkan).
Persyaratan harus spesifik dan sesuai untuk sistem yang diinginkan. Prinsip
SMART umumnya harus diikuti ketika menulis persyaratan
 Specific (Spesifik)
 Measurable (Terukur)
 Achievable (Dapat diraih)
 Realistic (Realistis)
 Testable (Dapat diuji)

Panduan dalam menyusun URS:


 Setiap pernyataan persyaratan harus direferensikan secara unik.
 URS harus konsisten dan pernyataan persyaratan tidak boleh diduplikasi
atau bertentangan.
 Fokusnya harus pada apa yang diperlukan, bukan bagaimana hal itu harus
dicapai.
 Setiap persyaratan harus dapat diuji. Ini memungkinkan pengujian
dirancang segera setelah URS selesai.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 24 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

 URS harus ditulis sedemikian rupa sehingga pelanggan dan vendor dapat
memahami dokumen.
 Persyaratan harus diprioritaskan sebagai wajib atau diinginkan.
 URS harus dimodifikasi tetapi perubahan harus di bawah prosedur kontrol
formal.
Dalam urutan kronologis, tujuh topik mendasar yang harus dieksplorasi sebagai
bagian dari proses pengumpulan persyaratan adalah:
1. Output yang harus dihasilkan oleh aplikasi
2. Input yang akan masuk ke aplikasi perangkat lunak
3. File-file logis yang harus dikelola oleh aplikasi
4. Entitas dan hubungan yang akan ada di file logis dari aplikasi
5. Jenis pertanyaan yang dapat digunakan dengan aplikasi
6. Antarmuka antara aplikasi dan sistem lain
7. Algoritme utama yang harus ada dalam aplikasi

Beberapa hal yang juga perlu dieksplorasi dan diputuskan selama fase
persyaratan. Beberapa di antaranya adalah persyaratan nonfungsional, dan
beberapa persyaratan bisnis diperlukan untuk menentukan apakah pendanaan
harus disediakan untuk aplikasi. Topik tambahan ini antara lain:
1) Ukuran aplikasi dalam poin fungsi dan kode sumber
2) Jadwal aplikasi mulai dari persyaratan hingga pengiriman
3) Staf tim pengembangan, termasuk spesialis utama
4) Biaya aplikasi berdasarkan aktivitas dan juga dalam hal biaya per poin
fungsi
5) Nilai bisnis dari aplikasi dan laba atas investasi (ROI)
6) Nilai non finansial, seperti keunggulan kompetitif dan loyalitas pelanggan
7) Risiko utama yang dihadapi aplikasi, yaitu, penghentian, penundaan,
overruns, dan sebagainya
8) Fitur aplikasi yang kompetitif oleh pesaing bisnis
9) Metode pengiriman, seperti SOA, SaaS, disk, unduhan, dan sebagainya
10)Rantai suplai aplikasi, atau aplikasi terkait di hulu atau hilir
11)Persyaratan warisan yang berasal dari aplikasi yang lebih lama digantikan

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 25 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

12)Hukum dan peraturan yang memengaruhi aplikasi (yaitu, undang-undang


perpajakan, privasi, dll.)
13)Tingkat kualitas dalam hal cacat, keandalan, dan kemudahan penggunaan
kriteria
14)Fitur penanganan kesalahan dalam kasus kesalahan pengguna atau
pemadaman listrik, dan sebagainya
15)Ketentuan garansi aplikasi dan tanggapan atas klaim garansi
16)Platform perangkat keras tempat aplikasi akan beroperasi
17)Platform perangkat lunak (s), seperti sistem operasi dan basis data
18)Kriteria nasionalisasi, atau jumlah versi bahasa asing
19)Kriteria keamanan untuk aplikasi dan basis data pendampingnya
20)Kriteria kinerja, jika ada, untuk aplikasi
21)Persyaratan pelatihan atau bentuk materi tutorial yang mungkin diperlukan
22)Prosedur penginstalan untuk memulai dan menginisialisasi aplikasi
23)Kriteria penggunaan kembali untuk aplikasi dalam hal kedua bahan yang
digunakan kembali ke dalam aplikasi dan juga apakah fitur aplikasi dapat
ditujukan untuk digunakan kembali berikutnya oleh aplikasi hilir
24)Kasus penggunaan atau tugas utama yang diharapkan dapat dilakukan
oleh pengguna melalui aplikasi
25)Aliran kontrol atau urutan informasi yang bergerak melalui aplikasi
26)Kemungkinan persyaratan masa depan untuk rilis selanjutnya
27)Tingkat bahaya dari setiap persyaratan yang mungkin berpotensi "beracun"
28)Harapan hidup aplikasi dalam hal kehidupan layanan sekali digunakan
29)Proyeksi total biaya kepemilikan (TCO) dari aplikasi
30)Frekuensi rilis untuk fitur dan perbaikan baru (setiap tahun, setiap bulan,
dll.)

2. Cara menentukan platform sistem operasi untuk mengembangkan


aplikasi mobile
Hal yang perlu dilakukan saat membuat aplikasi mobile adalah memilih sistem
operasi. Banyak platform yang ada saat ini seperti pada gambar 9, dalam buku
informasi ini dibahas pasar platform seluler saat ini yaitu iOS dan Android.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 26 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

Gambar 9
Pasar global Sistem Operasi mobile 2009 - 2017

Ketika memilih platform perlu mempertimbangkan hal-hal berikut:


a. Audiens target. Lakukan penelitian dan buat profil pelanggan. Perhatikan
kriteria geografis karena mungkin yang paling penting bagi Anda. Platform
sangat bervariasi menurut wilayah.

Gambar 10
Peta pengguna Andorid dan iOS di dunia

b. Perilaku pengguna (User behavior)


Perilaku pengguna berbeda-beda tergantung pada OS dan juga negara. Jika
mengembangkan aplikasi gratis tanpa monetisasi apa pun, maka mungkin
tidak penting untuk mengetahui di mana orang cenderung membeli aplikasi
dan melakukan pembelian dalam aplikasi. Pengguna Apple lebih cenderung
menghabiskan uang untuk aplikasi. Pengguna Android cenderung

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 27 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

menggunakan aplikasi gratis dan tidak mau membeli apa pun dari Google
Play Store atau melakukan pembelian dalam aplikasi.
c. fitur (Features)
Pertimbangkan fitur yang diperlukan serta pengalaman pengguna dan
bandingkan dengan kemampuan platform tertentu. Jika ingin
mengembangkan aplikasi khusus dengan tampilan dan nuansa asli,
pertimbangkan solusi seperti iOS, Android, WP. Aplikasi asli selalu berkinerja
terbaik.
Jika mengikuti pendekatan “run-once-run-everywhere” lebih lanjut,
pertimbangkan pengembangan lintas platform. Namun perlu disadari bahwa
tidak semua fitur, yang dapat dengan mudah diimplementasikan, didukung
oleh solusi lintas platform.
d. Biaya pengembangan (The cost of development)
Harga pengembangan aplikasi bergantung pada fitur dan desain aplikasi,
bukan pada bahasa pemrograman atau sistem operasi.
Untuk mendapatkan perkiraan biaya pembangunan yang tepat, Anda dapat
melipatgandakan tarif per jam tim Anda dengan perkiraan waktu
pengembangan. Tidak ada cara lain untuk menentukan harga tanpa
membuat perhitungan untuk proyek tertentu.
e. Perangkat yang akan didukung (Devices you need to support)
Perangkat yang didukung Android sejumlah 160 item dan terus berusaha
untuk meningkatkan jumlah ini, Apple memiliki strategi yang berbeda. IOS 9
mendukung 15 perangkat, di antaranya terdapat berbagai versi iPad, iPhone
dan iPod. Melihat persaingan dua pemegang pasar utama ini, jelas bahwa itu
merupakan tantangan untuk menyesuaikan aplikasi untuk setiap gadget.
Windows Phone 8.1 berfungsi pada 100 perangkat, sementara Blackberry
hanya didukung oleh 10. Windows phone dan blackberry sudah semakin
menurun, beberapa aplikasi paling populer seperti WhatsApp menolak untuk
mendukungnya. Untuk mengembangkan aplikasi lintas platform, perlu
menyesuaikan dengan semua perangkat itu secara bersamaan.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 28 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

f. Biaya tambahan terkait dengan pemrograman (Additional costs


related to programming)
Salah satu hal yang perlu dipertimbangkan asalah adalah biaya tambahan
yang terkait dengan pengembangan aplikasi. Untuk mengirimkan aplikasi ke
toko aplikasi, Anda harus membeli akun pengembang. Google Play
mengenakan biaya $ 25 untuk layanan ini, Apple membenakan biaya $ 100
untuk akun pengembang dan $ 299 untuk Program Perusahaan.
g. Moderasi (Moderation)
Aplikasi iOS selalu sangat dimoderasi. Apple memiliki aturan tertentu tentang
bagaimana aplikasi harus berperilaku agar dapat dikirimkan ke pasar mereka.
Jika tidak sesuai dengan mereka, kemungkinan besar akan ditolak. Anda
dapat dengan mudah menemukan Pedoman Peninjauan App Store di situs
web resmi mereka. Misalnya, mereka tidak akan menerima aplikasi yang
mogok atau berisi spanduk ID kosong. Apple membutuhkan waktu hingga 10
hari untuk memeriksa sebuah proyek dan menerima atau menolak
pengirimannya.
Lain halnya dengan Google Play yang juga memiliki pedoman tertentu, tetapi
pasar ini terlibat dalam rumor buruk tentang banyak aplikasi pembajakan. Ini
dapat dijelaskan oleh sistem moderasi yang lemah. Selain itu, pengguna
dapat dengan mudah mengunduh file .apk dari aplikasi apa pun dan
menginstalnya ke perangkatnya.
h. Harapan pengguna (User expectations)
Tergantung pada platform dan pembuatnya, pengguna memiliki harapan
tertentu dari aplikasi di perangkat mereka. Jika ingin membuat pengguna
merasa puas, pertimbangkan harapan mereka. Misalnya, Apple terkenal
dengan kualitas dan inovasi kelas atas. Pengikut merek sangat setia dan
berkomitmen terhadap layanan perusahaan dan berharap untuk mengalami
desain trendi dan kegunaan ekstrem dari aplikasi yang mereka gunakan.
Mereka bersedia menjadi yang pertama dalam hal inovasi dan siap membayar
lebih untuk mendapatkannya. Pengguna aplikasi Android tidak suka
membelanjakan uang untuk aplikasi atau pembelian dalam aplikasi. Mereka
lebih suka desain bergaya material dan gratisan.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 29 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

i. Technical specifications
Saat merancang aplikasi Android, desainer umumnya mengikuti Pedoman
Desain Material (Material Design Guidelines) dari Google, yang menentukan
ukuran tabel, jarak ikon, rekomendasi palet warna, dan banyak hal lainnya.
Untuk iOS, desainer dapat merujuk pada Pedoman Antarmuka Manusia
(Human Interface Guidelines) dari Apple. Panduan ini tidak mendikte detail,
melainkan menawarkan rekomendasi untuk mencapai desain intuitif.
Tiga perbedaan utama antara Pedoman Desain Material dan Pedoman
Antarmuka Manusia:
1) Kedalaman dan persepsi. Google menganjurkan desain material, yang
menyerupai lembaran kertas yang ditumpuk di atas satu sama lain. Apple
lebih memilih desain yang memiliki kedalaman. Di iOS, garis tipis dan
margin kabur membuat elemen tampak mengapung di ruang mereka
sendiri.
2) Animasi. Google ingin animasi untuk meningkatkan pengalaman pengguna
dan memeriahkan desain; lampu dan getaran menciptakan pengalaman
pengguna yang lebih praktis. Apple melihat animasi sebagai sesuatu
dengan utilitas murni. Di iOS, animasi harus sederhana dan diskrit.
3) Navigasi. Google yang menggunakan navigasi agak santai. Itu bisa di
mana saja; hanya membuatnya jelas. Kebebasan ini dapat meningkatkan
kreativitas tetapi juga dapat mengarah pada desain yang tidak begitu
ramah pengguna. Apple membatasi opsi navigasi, membuat perancang
berpikir dengan hati-hati tentang fungsi apa yang harus disertakan. Tetapi
pembatasan ini biasanya mengarah pada desain yang nyaman dan intuitif.
j. Fragmentasi perangkat dan platform
Android adalah platform terbuka. Pengembang dapat menggunakan kode
sumber Android untuk menyesuaikan sistem operasi Android. Lingkungan
terbuka merupakan kelebihan namun dapat membuat pengembangan mobile
menjadi bermasalah karena:

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 30 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

1) Produsen smartphone cenderung mengubah Android agar sesuai dengan


perangkat mereka, yang memaksa pengembang untuk menyesuaikan
aplikasi agar mereka bekerja pada smartphone dan tablet tertentu;
2) Beberapa perangkat memiliki komponen yang lebih murah (seperti
prosesor dan kamera), yang dapat menyebabkan bug atau memperlambat
aplikasi, membuat aplikasi kurang menarik bagi sebagian pengguna.

Gambar 11
Platform OS Android dan iOS

B. Keterampilan yang diperlukan dalam Menentukan Platform Sistem


Operasi Yang Sesuai Kebutuhan User
1. Merancang kebutuhan user berdasarkan spesifikasinya.
2. Menentukan platform sistem operasi untuk mengembangkan aplikasi mobile
C. Sikap Kerja yang diperlukan dalam Menentukan Platform Sistem Operasi
Yang Sesuai Kebutuhan User
1. Harus objektif dan bertanggung jawab dalam merancang kebutuhan user
2. Harus teliti dan objektif dalam menentukan platform sistem operasi

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 31 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

BAB IV
MENJELASKAN BAHASA PEMROGRAMAN BERBASIS MOBILE

A. Pengetahuan yang diperlukan dalam Menjelaskan Bahasa Pemrograman


Berbasis Mobile
1. Cara menentukan jenis bahasa pemrograman pemrograman berbasis
mobile
a. Program Komputer
Program adalah sekumpulan instruksi-instruksi yang dijalankan komputer untuk
menjalankan sebuah tugas (A program is a set of instructions that a computer
follows to perform a task) dengan mengikuti aturan bahasa yang dipilih. Tanpa
program, komputer tidak dapat digunakan. Program seperti resep yang berisi
daftar bahan-bahan (variabel) dan daftar aturan (statement/pernyataan) yang
memberitahu komputer apa yang harus dilakukan dengan variabel.

b. Bahasa pemrograman
Bahasa pemrograman adalah kosakata dan seperangkat aturan gramatikal
(sintaksis) untuk menginstruksikan komputer untuk melakukan tugas-tugas
tertentu dan digunakan untuk membuat program komputer.
Program harus diubah menjadi bahasa mesin sehingga komputer dapat
memahaminya. Ada dua cara untuk melakukan ini yaitu kompilasi (Compile)
program menafsirkan (Interpret).
 Kompilasi adalah mengubah program yang ditulis dalam bahasa
pemrograman tingkat tinggi dari kode sumber ke dalam kode objek.
Kompilasi Ini dapat dilakukan dengan menggunakan alat yang disebut
compiler. Kompiler membaca seluruh kode sumber dan
menerjemahkannya ke dalam program kode mesin lengkap untuk
melakukan tugas-tugas yang diperlukan yang merupakan keluaran
sebagai file baru.
Beberapa compiler (native code compilers [NCCs]) mengkompilasi bahasa
pemrograman secara langsung ke dalam kode mesin (serangkaian
instruksi yang dapat langsung ditafsirkan oleh CPU). Jenis kompiler yang

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 32 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

paling populer adalah yang mengkompilasi kode sumber ke dalam kode


objek (yang dapat dibaca oleh mesin, sehingga siap dijalankan). Sebagai
aturan umum, bahasa yang dikompilasi lebih cepat daripada bahasa yang
ditafsirkan, meskipun bahasa yang diterjemahkan cenderung lebih
nyaman dan dapat dibaca manusia
Bahasa seperti C ++ dan Java disebut "bahasa yang dikompilasi" karena
kode sumber harus terlebih dahulu dikompilasi agar dapat berjalan..
 Interpreter adalah program yang mengeksekusi instruksi ditulis dalam
bahasa tingkat tinggi. Interpretasi adalah ketika kode sumber program
diterjemahkan ke dalam serangkaian tindakan yang diimplementasikan
oleh perangkat keras komputer. Interpreter membaca kode sumber satu
instruksi atau garis pada suatu waktu, mengubah baris ini menjadi kode
mesin dan mengeksekusinya. Bahasa seperti Perl dan PHP disebut
"bahasa yang ditafsirkan" karena kode sumber dapat dijalankan melalui
juru bahasa tanpa dikompilasi.
Umumnya, bahasa yang dikompilasi digunakan untuk membuat aplikasi
perangkat lunak, sementara bahasa yang diinterpretasikan digunakan untuk
menjalankan skrip, seperti yang digunakan untuk menghasilkan konten untuk
situs web dinamis

c. Pemrograman Komputer
Pemrograman komputer adalah proses penulisan, pengujian, debugging /
pemecahan masalah, dan pemeliharaan kode sumber program komputer.
Kode sumber ini ditulis dalam bahasa pemrograman seperti C ++, JAVA, Perl,
phyton atau bahasa pemrograman yang lain.
Pemrogram (Programmer) adalah seseorang yang menulis komputer
program. Pemrogram komputer menulis, menguji, dan memelihara program
atau perangkat lunak yang memberi tahu komputer apa yang harus
dilakukan.

d. Jenis Bahasa pemrograman

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 33 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

Bahasa pemrograman dapat digolongkan berdasarkan beberapa properti


yang berbeda,
1) Berdasarkan tingkat abstraksinya (yang mengacu pada seberapa berbeda
mereka dari kode mesin) - bahasa pemrograman tingkat tinggi lebih
abstrak daripada bahasa pemrograman tingkat menengah dan rendah.
Pemrograman tingkat tinggi bahasa lebih mudah dibaca, dipahami dan
berorientasi ke bahasa manusia daripada bahasa tingkat lebih rendah,
sehingga lebih mudah untuk digunakan bekerja.
a) Bahasa tingkat tinggi, dirancang agar mudah dibaca dan dipahami.
Bahasa pemrograman tingkat tinggi memungkinkan pemrogram untuk
menulis kode sumber dengan cara alami, menggunakan kata dan
simbol logis. Simbol seperti <,>, ==, dan! = Adalah operator umum.
Banyak bahasa tingkat tinggi cukup mirip sehingga pemrogram dapat
dengan mudah memahami kode sumber yang ditulis dalam berbagai
bahasa.
Contoh bahasa tingkat tinggi termasuk C ++, Java, Perl, dan PHP.
b) Bahasa tingkat rendah termasuk bahasa assembly dan machine.
Bahasa assembly berisi daftar instruksi dasar dan jauh lebih sulit
dibaca daripada bahasa tingkat tinggi. Kode mesin, atau bahasa mesin,
berisi serangkaian kode biner yang dipahami langsung oleh CPU
komputer. Tak perlu dikatakan, bahasa mesin tidak dirancang untuk
bisa dibaca manusia.
2) tujuan pemrograman (misalnya, beberapa bahasa pemrograman
dirancang untuk perhitungan numerik sementara yang lain dirancang
untuk menulis perangkat lunak aplikasi).
a) Bahasa pemrograman bertujuan khusus
Merupakan bahasa pemrograman yang dibuat dan digunakan untuk
tujuan tertentu seperti COBOL, FORTRAN, Bahasa Rakitan, PROLOG
b) Bahasa pemrograman bertujuan Umum,
Bahasa pemrograman yang dapat digunakan untuk berbagai aplikasi
Pascal, Basic, C

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 34 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

2. Cara membandingkan perbedaan bahasa pemrograman berbasis


mobile
Perangkat seluler adalah platform yang tumbuh paling cepat di industri TI.
Karena semakin banyak orang yang memilih Apps untuk memperluas bisnis
mereka di tingkat global, industri pengembangan aplikasi seluler mendapatkan
popularitas yang sangat besar. Tujuan utama dari pembuat perangkat lunak
adalah untuk mengembangkan aplikasi yang berjalan pada smartphone, tablet
dan smartwatches yang baru.

Pemilihan bahasa pemrograman yang tepat untuk digunakan untuk


pengembangan aplikasi Mobile menjadi perhatian utama bagi para pengembang
aplikasi. Pemilihan bahasa pemrograman tidak hanya tergantung pada bahasa
tetapi juga tergantung pada sistem operasi yang berbeda yang mendukung
bahasa-bahasa pemrograman tersebut. Tantangannya adalah memilih bahasa
pemrograman yang tepat. Beberapa macam bahasa pemrograman yang
digunakan adalah:
a. Swift
Swift, dirilis oleh Apple Inc. pada Juni 2014 adalah bahasa pemrograman
utama yang digunakan untuk mengembangkan aplikasi iOS dan OSX. Swift
adalah salah satu bahasa yang cepat berkembang. Permintaan untuk
pengembang Swift telah meningkat secara dan menyebabkan mereka
menjadi pengembang yang paling banyak dipekerjakan. Swift berfungsi di
Linux dan hanya tersedia untuk pengembangan iOS
Fitur-fitur utama:
• Open source.
• Mudah jika sudah memehami Objective-C.
• masa depan dari pengembangan iOS
• Perawatan mudah
• Swift membutuhkan lebih sedikit pengkodean (coding) dibandingkan
dengan bahasa lain

b. Python

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 35 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

Python adalah bahasa tingkat tinggi yang kuat yang mudah dipelajari dan bagus
dalam hal keterbacaan (readability). Semua jenis aplikasi seluler dapat dibuat
dengan Python. Python adalah salah satu bahasa yang paling mudah dipelajari
untuk membuat aplikasi Android dan Desktop.
Situs terkenal seperti Dropbox, BitTorrent, Instagram, dan Quora dibuat dengan
Python.
Fitur-fitur utama:
 Berorientasi objek dan bahasa interaktif
 Mudah dipelajari dan mudah dibaca
 Berjalan di Windows, Mac, Unix, dan Linux
 Scalable
 Mendukung aplikasi GUI

c. Java
It is most suitable language because it runs on all the platforms including the all
the versions of Android. Apart from Android apps, developers can create server
apps, web apps, games, websites, big data technology, etc.
Java adalah bahasa pemrograman pengembangan aplikasi seluler yang paling
banyak digunakan. Jadi seseorang memiliki pengetahuan tentang Java, niscaya
akan dapat membuat aplikasi Android dari semua jenis. Java adalah bahasa yang
paling cocok (suitable) karena dapat berjalan di semua platform termasuk semua
versi Android. Selain aplikasi Android, pengembang dapat membuat aplikasi
server, aplikasi web, game, situs web, teknologi big data, dll.
Fitur-fitur utama:
• Bahasa berorientasi objek.
• Mendukung integrasi API.
• Berjalan di semua platform
• Mudah dipelajari dan dibaca.
• Java menyediakan rich dokumentation.
• Banyak pakar tersedia di komunitas Android.
• Powerful IDEs
• IDE membuat coding mudah dan bebas dari kesalahan.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 36 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

d. PHP
Hypertext Preprocessor (PHP) adalah open source bahasa scripting server-side
(server-side scripting open source language). Sengaja dikembangkan untuk
membuat situs web, tetapi sekarang digunakan untuk pengembangan tujuan
umum. Ini membantu dalam membuat situs web dinamis, aplikasi web, dan
semua jenis aplikasi seluler. Banyak Sistem Manajemen Konten menampilkan
PHP sebagai bahasa pemrograman mereka.
Dengan PHP, seseorang dapat membuat GUI, aplikasi Facebook, PDFs,
WordPress dan plugin Joomla, situs web e-commerce dan banyak lagi.
Fitur-fitur utama:
• Open-source
• Uses Object-oriented and procedure oriented approaches
• Independent of platform
• Easy-to-learn
• Integration with database is easy
• Have numerous uses
• Server compatibility

e. JavaScript
JavaScript adalah bahasa pemrograman tingkat tinggi yang diinterpretasi.
Mendukung pemrograman berorientasi objek dan fungsional. JavaScript
dijalankan oleh browser yang digunakan untuk mengembangkan dan mengontrol
halaman web. Aplikasi seluler dapat dibuat hanya dengan JavaScript bila
digunakan dengan CSS, HTML, dan AJAX untuk membuat aplikasi seluler.
Beberapa framework membuat aplikasi JavaScript profesional seperti jQuery
Mobile, angular js, Iconic, dll.
Fitur-fitur utama:
• Salah satu bahasa yang paling mudah.
• Cepat dan efisien.
• Kode satu kali dan kemudian dijalankan di semua platform
• Dieksekusi pada sisi-klien.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 37 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

• Menghemat bandwidth dengan tidak menggunakan server.


• Digunakan membuat animasi dan dinamis pada situs web yang
membosankan.

f. Kotlin
Kotlin terhitung baru dalam dunia bahasa pemrograman untuk pengembangan
aplikasi seluler. Dianggap sebagai era baru dalam pengembangan aplikasi
Android, merupakan masa depan. Google mendukung Kotlin sebagai bahasa
pemrograman pengembangan aplikasi Android ”first-class”. Basis Kotlin adalah
Java Virtual Machine (JVM), diharapkan menjadi hal besar dalam pemrograman
untuk Android.
Fitur-fitur utama:
• Open-source
• Membutuhkan lebih sedikit pengkodean
• Mudah dipelajari dan beradaptasi
• Aman digunakan karena keamanannya yang bebas gangguan
• Tanpa biaya adopsi
• Menyediakan fungsi ekstensi
• Java Interoperability penuh
• Langkah selanjutnya ke Android

Sebelum memilih salah satu bahasa pengembangan aplikasi seluler yang ada,
pertimbangkan persyaratan klien dan platform yang ditargetkan. Juga, pilih
bahasa pemrograman dengan cara membangun kemampuan pengembang yang
membuat aplikasi seluler berkualitas tanpa kompromi.

3. Cara mengkonfigurasikan perangkat lunak terkait penggunaan bahasa


pemrograman berbasis mobile sesuai dengan spesifikasinya
Konfigurasi adalah cara suatu sistem, atau berbagai macam komponen yang
membentuk sistem diatur. Konfigurasi dapat merujuk ke perangkat keras atau
perangkat lunak, atau kombinasi keduanya. Misalnya, konfigurasi khas untuk PC

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 38 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

terdiri dari memori utama 32MB (megabyte), floppy drive, hard disk, modem,
drive CD-ROM, monitor VGA, dan sistem operasi Windows.
Banyak produk perangkat lunak mengharuskan komputer memiliki konfigurasi
minimum tertentu. Misalnya, perangkat lunak mungkin memerlukan monitor
tampilan grafis dan adaptor video, mikroprosesor tertentu, dan jumlah minimum
memori utama.
Ketika menginstal perangkat atau program baru, terkadang perlu
mengonfigurasinya, yang berarti mengatur berbagai switch dan jumper (untuk
perangkat keras) dan menentukan nilai parameter (untuk perangkat lunak).
Berkat teknologi baru, seperti plug-and-play, sebagian besar konfigurasi
dilakukan secara otomatis.

Menyiapkan Lingkungan pengembangan Android


Hal pertama yang harus diperhatikan dan disiapkan adalah perangkat memiliki
Windows XP atau yang lebih baru, atau Mac OS X 10.5.8 atau versi yang lebih
baru untuk memulai proses pengembangan aplikasi Android. Lalu, ada empat
tools yang di perlukan dan tersedia di Internet secara gratis:
 Java JDK5 or JDK6
 Android SDK
 Eclipse IDE for Java Developers (optional)
 Android Development Tools (ADT) Eclipse Plugin (optional)

1) Step 1: Setup Java Development Kit (JDK)


Unduh JDK dan menginstalnya. Setelah itu perlu diatur PATH dan
JAVA_HOME variabel ke folder di mana terdapat java dan javac. Untuk
penggyna Windows, jika JDK diinstal pada C:\jdk1.6.0_15 maka harus
ditamhkan dua baris ini pada C:\autoexec.bat file.
set PATH=C:\jdk1.6.0_15\bin;%PATH%
set JAVA_HOME=C:\jdk1.6.0_15
2) Step 2: Configure Android SDK
Setelah berhasil menginstal Android SDK
(https://developer.android.com/studio/) , sekarang saatnya untuk

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 39 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

mengkonfigurasinya. Setelah menginstal SDK Android, Anda akan


mendapatkan jendela seperti ini:

Gambar 12
Figure 1
Hapus (de-select) Documentation for Android SDK dan Samples for
SDK packages jika ingin mengurangi ukuran dan waktu penginstalan. Klik
Instal 7 paket untuk melanjutkan instalasi. Muncul kotak dialog seperti ini:

Gambar 13

Ini akan memakan waktu untuk menginstal, tergantung pada kecepatan


koneksi internet. Setelah selesai, tutup SDK Manager.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 40 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

3) Step 3: Setup Eclipse IDE


Install versi terakhir Eclipse http://www.eclipse.org/downloads. Setelah
instalasi selesai dilakukan akan muncul:

Gambar 14

4) Step 4: Setup Android Development Tools (ADT) Plugin

Selanjutnya menginstal plugin Android Development Tool untuk Eclipse.


Untuk melakukan ini, klik Help > Software Updates > Install New
Software. Akan tampil kotak dialog berikut.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 41 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

Gambar 15

Klik pada tombol Add seperti yang ditunjukkan pada gambar dan tambahkan
https://dl-ssl.google.com/android/eclipse/ sebagai lokasinya. Klik OK, Eclipse
akan mulai mencari plug-in yang diperlukan dan akan mencantumkan plug-in
yang ditemukan.

Gambar 16

5) Step 5: Create Android Virtual Device

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 42 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

Langkah terakhir adalah membuat Android Virtual Device, yang akan


digunakan untuk menguji aplikasi Android. Untuk melakukan ini, buka Eclipse
dan jalankan Android AVD Manager dari opsi Window> AVD
Manager dan klik pada New yang akan membuat Android Virtual Device
yang sukses. Gunakan screenshot di bawah ini untuk memasukkan nilai yang
benar.

Gambar 17

Android Application Development environment telah berhasil terinstal dan siap


untuk membuat aplikasi.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 43 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

4. Cara menghasilkan alur program untuk pembuatan aplikasi berbasis


mobile
a. Alur Program
Alur progarm adalah suatu bagan dengan simbol tertentu yang
menggambarkan urutan proses secara detail dan hubungan antara suatu
proses dengan proses lainnya dalam suatu program.
Dalam membuat diagram alur tidak ada rumus dasar yang mutlak karena
pada dasarnya adalah gambaran hasil pemikiran (logika) manusia dalam
menganalisa masalah.

b. Cara Pemecahan masalah


Proses pemcehan masalah dengan algoritma tertentu hingga menjadi program
dapat dibagi dalam sebilan tahap (Thomspson Susabda Ngoen, 2008:6) :
1) Mendefinisikan Masalah. Masalah yang ingin dipecahkan harus jelas
lingkupnya.
2) Membuat Model. Model yang dimaksud adalah model (bentuk) matematis
yang dapat digunakan untuk memecahkan masalah, misalnya apakah
harus dilakukan pengurutan terhadap data, apakah menggunakan
perhitungan kombinatorik dan sebagainya.
Judul Modul menunjukkan platform operating system dan bahasa pemrograman di
dalam perangkat lunak Halaman: 44 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

3) Merancang algoritma (flowchart/pseudocode). Yang perlu


dipertimbangkan dalam merancang algoritma adalah masukannya
bagaimana rincian prosesnya, apa keluarannya.
4) Menulis program. Merubah algoritma menjadi program (source code)
sesuai dengan bahasa pemrograman tertentu.
5) Mengubah source code menjadi executable code melalui proses compiling.
6) Memeriksa hasil compiling, jika salah maka kembali ke tahap empat.
7) Menjalankan program (run) untuk diuji kebenarannya dengan
menggunakan berbagai data
8) Memperbaiki kesalahan
Apabila hasilnya tidak seuai dengan keluaran yang diharapkan, kesalahan
mungkin terjadi saat konversi rancangan algoritma manjadi program, atau
salah rancang algoritma, atau salah menentukan model, atau salah
mendefinisikan masalah. Ulangi langkah yang sesuai.
9) Membuat dokumentasi

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 45 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

1.DEFINISI
Mulai MASALAH

2. MEMBUAT
MODEL

3. MERANCANG
ALGORITMA

4. MENULIS
PROGRAM

5. COMPILING

6.
SYNTAX
ERROR ?

TIDAK

7. RUN
PROGRAM

OUTPUT
ERROR

8.MEMPERBAIKI
KESALAHAN

9.
SELESAI DOKUMENTASI

Gambar 18
Tahapan pembuatan algoritma hingga program

5. Cara menentukan konsep variabel dan konstanta dalam salah satu


bahasa pemrograman
Setiap obyek mempunyai nama. Di dalam program, nama dipakai sebagai
pengidentifikasi “sesuatu” dan pemrogram mengacu “sesuatu” itu melalui
namanya. Tiap nama haruslah unik, tidak boleh ada dua buah nama yang sama.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 46 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

Di dalam program, “sesuatu” yang diberi nama dapat berupa variabel, konstanta,
tipe, nama fungsi dlsb.
a. Variabel
Variabel program adalah abstraksi dari sel memori komputer atau kumpulan
sel. Programmer sering menganggap nama variabel sebagai nama untuk
lokasi memori, tetapi ada lebih banyak variabel daripada hanya sekedar
nama.
Variabel digunakan untuk menyimpan informasi yang akan direferensikan dan
dimanipulasi dalam program komputer dengan mudah variabel dapat di
artikan sebagai tempat menyimpan informasi. Satu-satunya tujuan mereka
adalah memberi label dan menyimpan data yang dalam memori, yang dapat
digunakan di seluruh program.
Ada 5 (lima) jenis variabel yaitu: konstanta, variabel global, variabel kelas
(class variables), variabel instan (instance variables), dan variabel lokal.
Variabel dapat dicirikan sebagai sekumpulan atribut: (nama, alamat, nilai,
jenis, umur, dan cakupan). Meskipun ini mungkin tampak terlalu rumit untuk
konsep yang tampaknya sederhana, ia menyediakan cara paling jelas untuk
menjelaskan berbagai aspek variabel.
1) Nama (name)
Masalah utama untuk nama adalah
• Apakah nama huruf sensitif (case sensitive)?
• Apakah kata-kata khusus dari kata khusus atau kata kunci (reserved
words atau keywords) sebuah bahasa?
Nama adalah string karakter yang digunakan untuk mengidentifikasi
beberapa entitas dalam suatu program termasuk juga variabel.
Nama dalam sebagian besar bahasa pemrograman memiliki bentuk yang
sama. Aturan umum untuk membangun nama untuk variabel adalah:
 Nama dapat berisi huruf, angka, setrip bawah, dan tanda dolar.
 Nama harus dimulai dengan huruf
 Nama juga dapat dimulai dengan $ dan _
 Nama peka huruf besar / kecil (y dan Y adalah variabel berbeda)

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 47 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

 Kata-kata yang dicadangkan (Reserved words) tidak dapat


digunakan sebagai nama
Fortran 95+ memungkinkan hingga 31 karakter dalam namanya. C99
tidak memiliki batasan panjang pada nama internalnya, tetapi hanya 63
yang pertama yang signifikan. Nama di Java, C #, dan Ada tidak memiliki
batas panjang, dan semua karakter di dalamnya signifikan.
C ++ tidak menentukan batas panjang nama, meskipun kadang-kadang
implementor melakukannya.
Semua nama variabel dalam PHP harus dimulai dengan tanda dolar. Di
Perl, karakter khusus di awal nama variabel, $, @, atau%, menentukan
jenisnya (meskipun dalam arti yang berbeda daripada di bahasa lain). Di
Ruby, karakter khusus di awal nama variabel, @ atau @@, menunjukkan
bahwa variabel adalah instance atau variabel kelas, masing-masing.
Dalam banyak bahasa, khususnya bahasa berbasis C, nama yang
menggunakan huruf besar dan huruf kecil dianggap berbeda (case
sensitive); artinya, nama dalam bahasa ini peka huruf besar kecil.
Misalnya, tiga nama berikut ini berbeda dalam C ++: nilai, NILAI, dan
Nilai.
2) Alamat (Address)
Alamat suatu variabel adalah alamat memori mesin yang dikaitkan
dengannya. Dalam banyak bahasa, dimungkinkan variabel yang sama
dikaitkan dengan alamat yang berbeda pada waktu yang berbeda dalam
program. Sebagai contoh, jika suatu subprogram memiliki variabel lokal
yang dialokasikan dari stack run-time ketika subprogram dipanggil,
panggilan yang berbeda dapat menghasilkan variabel yang memiliki
alamat yang berbeda.
3) Tipe (type)
Jenis variabel menentukan rentang nilai yang dapat disimpan oleh variabel
dan serangkaian operasi yang didefinisikan untuk nilai-nilai dari jenis
variabel tersebut. Sebagai contoh, tipe int di Java menentukan rentang
nilai -2147483648 hingga 2147483647 dan operasi aritmatika untuk
penambahan, pengurangan, perkalian, pembagian, dan modulus.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 48 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

4) Nilai (Value)
Nilai suatu variabel adalah isi dari sel memori atau sel-sel yang terkait
dengan variabel. Lebih mudah untuk memikirkan memori komputer dalam
hal sel abstrak, bukan sel fisik. Sel-sel fisik, atau unit yang dapat
dialamatkan secara individual, dari sebagian besar memori komputer
kontemporer berukuran byte, dengan satu byte biasanya delapan bit
panjangnya.
Nilai variabel kadang-kadang disebut r-value karena itu adalah apa yang
diperlukan ketika nama variabel muncul di sisi kanan pernyataan.

b. Konstanta
Konstanta (Tetapan) ialah tempat penyimpanan di memori yang isinya tetap
selama pelaksanaan program dan tidak boleh diubah.
Sebuah konstanta adalah nilai yang tidak berubah. Konstanta seperti variabel
dalam deklarasinya dan kemampuan untuk melihat nilai yang tersimpan di
dalamnya, namun nilainya tidak dapat diubah saat program berjalan, nilai
konstan tetap konstan. Konstanta dapat berupa angka (number) seperti 9
atau karakter seperti l atau k atau $ atau string seperti ”ini adalah string”
atau ”Dwi” atau ”Magelang”.

6. Cara menentukan konsep struktur kondisi dan perulangan dalam salah


satu bahasa pemrograman berbasis mobile
a. Kondisi
Struktur kondisi adalah
Ada beberapa variasi dari struktur kontrol selection yaitu:
 Simple Selection (simple IF Statement)
Simple selection terjadi jika harus memilih diantara dua alternatif yang
ada, tergantung dari hasil kondisi apakah True atau false.
Keyword yang digunakan aalah : IF, THEN, ELSE, dan ENDIF
Contoh:
IF saldo < $300 THEN

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 49 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

bunga = 0.05
ELSE
bunga = 0.1
ENDIF
 Simple Selection tanpa cabang
Simple selection ini terjadi jika sebuah statement hanya bisa
dikerjakan bila kondisinya adalah TRUE
Contoh:
IF Saldo > $300 THEN
bunga = saldo * 0.1
ENDIF
 Combined Selection
Combined Selection terjadi jika kondisi yang harus diperiksa lebih dari
satu.
Contoh:
IF saldo > 300 AND kode = 1 THEN
bunga = saldo * 0.1
ELSE
bunga = saldo * 0.05
ENDIF
Statement bunga = saldo *0.1, akan bisa dikerjakan jika kedua kondisi
yaitu saldo > 300 dan Kode = 1 bernilai TRUE. Hal ini dikarenakan
penghubung yang digunakan adalah AND Kondisi tersebut dapat
dihubungkan dengan menggunakan AND atau OR.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 50 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

STAT EMENT 1 STAT EMENT 1

BOOLEAN BOOLEAN
EXPRESSION EXPRESSION FALSE

FALSE
T RUE T RUE

STAT EMENT 2 STAT EMENT 2A STAT EMENT 2B

STAT EMENT 3 STAT EMENT 3

Gambar 19
Alur

 Nested Selection
Nested selection terjadi, jika di dalam IF terdapat statement IF yang
lain.
Ada dua jenis nested selection
o Linear Nested IF Statement
Linear Nested terjadi jika satu kondisi di cek untuk beberapa
nilai.

Contoh:
IF record_code=‘A’ THEN
increment counter_A
ELSE
IF record_code=‘B’ THEN
increment counter_B
ELSE
IF record_code=‘C’ THEN
increment counter _C

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 51 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

ELSE
increment error_counter
ENDIF
ENDIF
ENDIF
o Non-Linear IF Statement
Non-Linear Nested IF Statement terjadi jika beberapa kondisi
harus diperiksa sebelum suatu statement dikerjakan.

IF student_attendance=part_time THEN
IF student_gender=female THEN
IF student_age >21 THEN
add 1 to mature_fem_pt_students
ELSE
add 1 to young_fem_pt_students
ENDIF
ELSE
add 1 to male_pt_students
ENDIF
ELSE
add 1 to full_time_students
ENDIF

CASE OF variabel
nilai_1 : statement_1
nilai_2 : statement_2
… :
nilai_n : statement_n
nilai_lain: statement_lain
END CASE

Contoh:

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 52 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

CASE OF record_code
‘A’ : increment counter_A
‘B’ : increment counter_B
‘C’ : increment counter_C
other : increment error_counter
ENDCASE

b. Perulangan
Statemen Perulangan (Repetitive Statement) digunakan untuk melakukan
proses berulang terhadap statemen sederhana atau statemen majemuk.
Ada dua cara untuk melakukan pengulangan :
1) Menggunakan DO WHILE
Format DOWHILE

DO WHILE <kondisi k> bernilai true


statement_1
statement_2
……………
statement_n
ENDDO

Ada 3 proses yang dilakukan dalam DOWHILE, yaitu:


 <Kondisi k> selalu dicek
 Bila <Kondisi k> bernilai true maka statement_1 s.d
statement_n dikerjakan kemudian dicek lagi <Kondisi k>
 Bila <Kondisi k> bernilai false maka statement_1 s.d
statement_n tidak dikerjakan. Alur logika menuju ke ENDDO
dan terus ke statement berikutnya
Contoh:
Mengkonversikan derajat Celcius ke Reamur dan Fahrenheit. Yang
dibaca adalah derajat Celcius. Data dibaca sebanyak 15 kali.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 53 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

Masalah:
Input Proses Output
Celcius Baca Celcius Celcius,
(15 Kali) Reamur,
Hitung Reamur Fahrenheit
Hitung Fahrenheit
Cetak Celcius, Reamur dan Fahrenheit

Algoritma Solusi
X=0
DOWHILE X<15
X=X+1
Baca Celcius
Reamur = 4/5 * Celcius
Fahrenheit =9/5*Celcius + 32
Cetak celcius, reamur, fahrenheit
ENDDO

2) Menggunakan Repeat – Until


Format Repeat – Until adalah sbb:
REPEAT
statement_1
statement_2
…….
statement_n
UNTIL <kondisi k> true

Ada tiga proses dilakukan dalam REPEAT – UNTIL:


 Melakukan statement_1 s.d statement_n
 Cek <kondisi k>
 Bila <kondisi k> bernilai false maka diulangi mengerjakan
statement_1 s.d statement_n lagi; Bila <kondisi k> bernilai true
maka tidak terjadi pengulangan lagi dan akan dilanjutkan
dengan statement berikutnya
Algoritma solusi Repeat-Until
Judul Modul menunjukkan platform operating system dan bahasa pemrograman di
dalam perangkat lunak Halaman: 54 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

X=0
REPEAT
X=X+1
baca celcius
reamur = 4/5*celcius
fahrenheit=9/5*celcius + 32
cetak celcius, reamur, fahrenheit
3) Menggunakan Do..Enddo
Format Do..Enddo adalah sbb:

DO loop_index=nilai_awal to nilai_akhir
statement_1
statement_2
…..
statement_n
ENDDO

Ada empat proses yang dilakukan dalam


DO..ENDDO
 Menginisialisasi loop_index ke nilai yang diperlukan
 Menambah nilai loop_index dengan 1 setiap kali melewati
pengulangan
 Menguji nilai dari loop_index pada setiap awal pengulangan
untuk memastikan bahwa nilai tersebut ada dalam rentang nilai
yang ditetapkan
 Menghentikan pengulangan ketika nilai loop_index sudah
melewati nilai_akhir

7. Cara menjelaskan konsep layout dan object dalam salah satu


pemrograman berbasis mobile
a) Konsep Layout

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 55 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

Layout (Tata letak) menentukan struktur untuk antarmuka pengguna (user


interface) di aplikasi, seperti dalam suatu aktivitas. Semua elemen dalam
tata letak dibangun menggunakan object hierarki View dan ViewGroup. View
biasanya menampilkan sesuatu yang dapat dilihat dan berinteraksi dengan
pengguna. Sedangkan ViewGroup adalah wadah yang tidak terlihat yang
mendefinisikan struktur tata letak untuk View dan objek ViewGroup lainnya,
seperti yang ditunjukkan pada gambar 20.

Gambar 20
Ilustrasi hierarki tampilan, yang mendefinisikan tata letak UI
Ada sejumlah layout yang disediakan antara lain
1) Linear Layout
LinearLayout adalah tampilan grup yang menyelaraskan semua anak dalam
satu arah, secara vertikal atau horizontal.

2) Relative Layout
RelativeLayout dalah grup tampilan yang menampilkan tampilan anak dalam
posisi relatif.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 56 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

3) Table Layout
TableLayout adalah tampilan yang mengelompokan tampilan dalam baris
dan kolom.

4) Absolute Layout
AbsoluteLayout memungkinkan untuk menentukan lokasi pasti anak-
anaknya.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 57 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

5) Frame Layout
FrameLayout adalah placeholder di layar yang dapat digunakan untuk
menampilkan satu tampilan.

b) Konsep Object
Pemrograman berorientasi objek (OOP) memperkenalkan konsep objek.
Objek OOP adalah batas enkapsulasi yang menyediakan beberapa jenis
perilaku publik. Konsep objek tidak terbatas pada bahasa tertentu. Banyak
objek yang diwakili dalam bahasa berbasis kelas seperti Java / C # / Ruby /
Python, serta bahasa berbasis prototipe seperti JavaScript. Objek-objek ini
adalah konstruksi bahasa, bukan konstruk konseptual.
Objek dalam OOP adalah konstruksi yang melakukan sesuatu - ia berperilaku
dan bertindak.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 58 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

Struktur data Orang memiliki atribut nama depan, nama belakang, dan
nomor telepon. Objek Seseorang berjalan, berlari, melompat, dan berbicara.
Objek Seseorang melakukan banyak hal.

Contoh objek OOP object:

public interface PhoneNumberValidator {


boolean validate(String phoneNumber);
}

PhoneNumberValidator memvalidasi bahwa String yang diberikan mewakili


nomor telepon yang diformat dengan benar. Tidak ada indikasi keadaan
internal di dalam validator.

8. Cara membangun aplikasi mobile sederhana dengan bahasa


pemrograman mobile
Langkah-langkah pembuatan aplikasi android
1. Jalankan Eclipse pada gambar Kemudian Pilih File > New > Android
Application Project

Gambar 20
membuat project pertama

2. Kemudian isi seperti gambar

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 59 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

Gambar 21
memberi nama project

3. Buka file main.xml didalam package res > layout. Gambar 1.9

Gambar 22
hierarki package

4. Ganti kode di main.xml seperti dibawah ini.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 60 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/LinearLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".Main" >
<TextView
android:id="@+id/txt1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center|center_vertical"
android:text="@string/text1"
android:textAppearance="?android:attr/textAppearanceLarge" />
<Button
android:id="@+id/btn1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/button1" />
</LinearLayout>

Tampilan Graphical Layout pada gambar 23

Gambar 23
tampilan graphical layout

5. Kemudian ubah kode di activity main.java seperti dibawah ini.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 61 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

package com.example.projectpertama;
import android.os.Bundle;
import android.app.Activity;
public class Main extends Activity implements OnClickListener {
TextView txt1;
Button btn1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
txt1 = (TextView) findViewById(R.id.txt1);
btn1 = (Button) findViewById(R.id.btn1);
btn1.setOnClickListener(this);
}
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
txt1.setText("Mantep kan");
}
}

6. Jalankan aplikasi dengan cara klik kanan package > pilih Run As >
Android Application Project, atau dengan shortcut CTRL + F11.
7. Aplikasi dapat didownload langsung ke perangkat android.
File ProjectPertama.apk terletak di folder ProjectPertama/bin.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 62 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

Langkah-langkah pembuatan aplikasi Java


Sebelum membuat program (code), perlu diketahui cara mengambil masukan
dari pengguna. Cara yang paling efisien untuk mengambil input dari pengguna
adalah dengan menggunakan Scanner class, yang ditemukan dalam paket
java.io, hanya proses dua langkah.

Scanner scanner = new Scanner(System.in);


String input = scanner.next();

/* or String input = (new Scanner(System.in)).next(); */


Direkomendasikan untuk menggunakan kelas Scanner karena bekerja dengan
baik pada command line dan Eclipse.

Memanggil code Java pada Eclipse

Berikut adalah satu contoh code yang akan digunakan untuk menguji pembuatan
aplikasi:

// Android Rock Paper Scissors App


// Rock_Paper_Scissors
// *************

import java.util.Scanner;
import java.util.Random;

public class Rock


{
public static void main(String[] args)
{
String personPlay; //User's play -- "R", "P", or "S"
String computerPlay = ""; //Computer's play -- "R", "P", or "S"
int computerInt; //Randomly generated number used to determine
//computer's play
String response;

Scanner scan = new Scanner(System.in);


Random generator = new Random();

System.out.println("Hey, let's play Rock, Paper, Scissors!\n" +


"Please enter a move.\n" + "Rock = R, Paper" +

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 63 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

"= P, and Scissors = S.");

System.out.println();

//Generate computer's play (0,1,2)


computerInt = generator.nextInt(3)+1;

//Translate computer's randomly generated play to


//string using if //statements

if (computerInt == 1)
computerPlay = "R";
else if (computerInt == 2)
computerPlay = "P";
else if (computerInt == 3)
computerPlay = "S";

//Get player's play from input-- note that this is


// stored as a string
System.out.println("Enter your play: ");
personPlay = scan.next();

//Make player's play uppercase for ease of comparison


personPlay = personPlay.toUpperCase();

//Print computer's play


System.out.println("Computer play is: " + computerPlay);

//See who won. Use nested ifs

if (personPlay.equals(computerPlay))
System.out.println("It's a tie!");
else if (personPlay.equals("R"))
if (computerPlay.equals("S"))
System.out.println("Rock crushes scissors. You win!!");
else if (computerPlay.equals("P"))
System.out.println("Paper eats rock. You lose!!");
else if (personPlay.equals("P"))
if (computerPlay.equals("S"))
System.out.println("Scissor cuts paper. You lose!!");
else if (computerPlay.equals("R"))
System.out.println("Paper eats rock. You win!!");
else if (personPlay.equals("S"))
if (computerPlay.equals("P"))
System.out.println("Scissor cuts paper. You win!!");
else if (computerPlay.equals("R"))
System.out.println("Rock breaks scissors. You lose!!");
else
System.out.println("Invalid user input.");

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 64 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

Sekarang jalankan Eclipse dan klik File > New > Java Project

Gambar 24

Ketika kotak Create a Java Project muncul, berikan nama project, klik Finish
untuk menyimpan dan nama akan muncul pada Package Explorer Window.
Kemudian tambahkan sebuah package yang berisi seluruh file. Klik ikon New
Java Package
Click on New Java Package icon to do this, as shown in the screenshot
below.

Gambar 25

Berikan Nama project kemudian klik Finish.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 65 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

Gambar 26

Menambahkan Java Class.

Gambar 27

Setelah memberi nama, pastikan bahwa opsi berikut dicentang

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 66 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

Gambar 28

Setelah membuat kelas baru, kelas itu akan muncul di Ruang Kerja (Work Space)
tempat di mana dapat menulis atau menyalin kode.
Sekarang perlu dibangun aplikasi dan lakukan hal berikut ini, Klik kanan pada
Proyek Android Anda dan pilih Tools->Export Signed Application Package.
Setelah memilih tombol export, pilih Create new keystore dan itu akan
menuju lokasi tempat tujuan penyimpanan, beri nama dan simpan. Isi semua
self-explanatory field wajib dan simpan. File apk telah berhasil diekspor ke
komputer dan dapat diuji di perangkat android.

Testing/Pengujian
Pengujian sama pentingnya dengan mengembangkan aplikasi karena aplikasi
tidak akan berguna jika tidak berjalan dengan baik. Dalam Android terdapat
kerangka pengujian terintegrasi, yang dapat digunakan untuk menguji semua
aspek aplikasi. Alat SDK juga dapat membantu mengatur dan menguji aplikasi.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 67 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

SDK akan membantu menguji berbagai aspek aplikasi baik pengujian dalam
emulator atau perangkat Android apa pun.

Menguji project Eclipse dengan ADT


 Jalankan Eclipse
 Klik File > New > Other and from the drop-down menu
 Klik Android Test Project,
 Klik Next.
 Masukkan nama di panel Test Target,
 tetapkan Proyek Android yang Ada dan browse aplikasi yang sudah dibuat
(Rock Paper Scissors). Selanjutnya wizard menyelesaikan pengujian Paket
Target, Nama Aplikasi, dan Nama Paket

Pilih platform Android SDK dari Build Target Panel yang digunakan oleh aplikasi
yang akan diuji. Klik tombol Finish untuk menyelesaikan Wizard dan jika
dinonaktifkan, cari pesan kesalahan di bagian atas untuk memperbaiki masalah.

B. Keterampilan yang diperlukan dalam Menjelaskan Bahasa Pemrograman


Berbasis Mobile
1. Menentukkan jenis bahasa pemrogramman mobile pemrograman berbasis
mobile.
2. Membandingkan perbedaan bahasa pemrograman berbasis mobile.
3. Mengkonfigurasikan perangkat lunak terkait penggunaan bahasa pemrograman
berbasis mobile sesuai dengan spesifikasinya.
4. Menghasilkan alur program untuk pembuatan aplikasi berbasis mobile.
5. Menentukan tipe data konsep variabel dan konstanta dalam salah satu bahasa
pemrograman berbasis mobile.
6. Menentukan konsep struktur kondisi dan perulangan dalam salah satu bahasa
pemrograman berbasis mobile.
7. Menjelaskan konsep layout dan objek dalam salah satu bahasa pemrograman
berbasis mobile.
8. Membangun aplikasi mobile sederhana dengan bahasa pemrograman mobile.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 68 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

C. Sikap Kerja yang diperlukan dalam Menjelaskan Bahasa Pemrograman


Berbasis Mobile
1. Harus objektif dalam menentukkan jenis bahasa pemrogramman.
2. Harus teliti dalam membandingkan perbedaan bahasa pemrograman.
3. Harus teliti dalam mengkonfigurasikan perangkat lunak terkait penggunaan
bahasa pemrograman berbasis mobile.
4. Harus teliti dalam menghasilkan alur program untuk pembuatan aplikasi berbasis
mobile.
5. Harus teliti dalam menentukan tipe data konsep variabel dan konstanta dalam
salah satu bahasa pemrograman.
6. Harus teliti dalam menentukan konsep struktur kondisi dan perulangan dalam
salah satu bahasa pemrograman.
7. Harus bertanggung jawab menjelaskan konsep layout dan objek dalam salah
satu bahasa pemrograman.
8. Harus teliti dalam membangun aplikasi mobile sederhana dengan bahasa
pemrograman.

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 69 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

DAFTAR PUSTAKA

A. Dasar Perundang-undangan
1. Undang-undang Nomor 13 Tahun 2003 Tentang Ketenagakerjaan
2. Undang-undang Nomor 39 Tahun 2004 Tentang Penempatan dan Perlindungan
3. Peraturan Presiden Republik Indonesia Nomor 8 Tahun 2012 Tentang Kerangka
Kualifikasi Nasional Indonesia
4. Peraturan Pemerintah Reublik Indonesia Nomor 31 Tahun 2006 Tentang Sistem
Pelatihan Kerja Nasional
5. Keputusan Direktorat Jenderal Pembinaan Pelatihan dan Produktivitas Kementrian
Tenaga Kerja dan Transmigrasi Republik Indonesia, Nomor 181/LATTAS/XII/2013
Tentang Pedoman Penyusunan Modul Pelatihan Berbasis Kompetensi

B. Buku Referensi
1. Kementerian Tenaga Kerja RI, Pedoman Penyusunan Modul Pelatihan Berbasis
Kompetensi, Jakarta, 2013
2. Silberschatz, A., Galvin, P. B., & Gagne, G. (2013). Operating system concepts (Ninth
edition). Hoboken, NJ: Wiley.
3. Operating System fundamental OS Concept, tutorials point Simply easy learning, 2016
www. Tutorialspoint.com
4. Thompson Susabda Ngoen, (2008) Pengantar Algoritma dengan Bahasa C, Salemba
Teknika

C. hMajalah atau Buletin


1. –

D. Referensi Lainnya
1. tutorialspoint.com. (n.d.). Computer Operating System. Retrieved October 10,
2018, from
https://www.tutorialspoint.com/computerfundamentals/computeroperatingsystem
.html

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 70 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

2. Browsing Internet, Operating System Architecture,


http://www.technologyuk.net/computing/operating-systems/operating-system-
architecture.shtml diakses pada tanggal 15 Oktober 2018

3. Browsing Internet, https://www.evelta.com/introduction-smartphone-architecture,


pada tanggal 15 Oktober 2018
4. Browsing Internet, http://socialcompare.com/en/comparison/operating-system-1g1rzjcn
5. Browsing Internet, https://steelkiwi.com/blog/how-to-choose-the-right-platform-for-
mobile-app-development/
6. Browsing Internet,, https://mlsdev.com/blog/56-how-to-choose-the-right-development-
platform-for-a-mobile-app
7. Browsing Internet,, https://dev.to/caperminttech/top-programming-languages-that-are-
Browsing Internet,, crucial-for-mobile-app-development-bik
8. Browsing Internet, https://www.programiz.com/java-programming/variables-primitive-
data-types
9. Browsing Internet, https://www.theserverside.com/tutorial/Step-by-step-guide-to-
Android-development-with-Eclipse
10. Browsing Internet,https://developer.android.com/guide/topics/ui/declaring-layout
11. Browsing Internet,
https://www.tutorialspoint.com/android/android_user_interface_layouts.htm

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 71 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

DAFTAR PERALATAN/MESIN DAN BAHAN

A. Daftar Peralatan/Mesin

No. Nama Peralatan/Mesin Keterangan


1. Komputer/Laptop
2. Perangkat mobile
3. Koneksi internet
4. Aplikasi perangkat lunak
5. Dokumen kebutuhan pelanggan
6. Dokumen algoritma
7.
8.
9.
10.

B. Daftar Bahan

No. Nama Bahan Keterangan

1. Kertas dan alat tulis Untuk membuat algoritma


2. ATK

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 72 dari 73
Buku Informasi Versi: 2018
Modul Pelatihan Berbasis Kompetensi Kode Modul
Bidang Teknologi Informasi dan Komunikasi J.612000.001.01

DAFTAR PENYUSUN MODUL

NO. NAMA PROFESI


1. Lucia Sri Istiyowati, M.Kom  Asesor BNSP
 Dosen Fakultas Teknologi Informasi
Institut Perbanas

2. Dwi Atmodjo, M.Kom


3. Elliana Gautama, M.Kom

Judul Modul menunjukkan platform operating system dan bahasa pemrograman di


dalam perangkat lunak Halaman: 73 dari 73
Buku Informasi Versi: 2018

Anda mungkin juga menyukai