DAFTAR ISI
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.
BAB II
MENUNJUKKAN JENIS PLATFORM SISTEM OPERASI BERBASIS MOBILE
Gambar 1
Sistem komputer
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
Gambar 3
A layered OS architecture
Gambar 4
A microkernel OS architecture
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.
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
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
Gambar 5
Perbandingan Sistem Operasi
(http://socialcompare.com/en/comparison/operating-system-1g1rzjcn)
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
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.
Gambar 7
Arsitektur sistem operasi IOS
https://codeingwithios.blogspot.com/2017/09/ios-layered-architecture.html
Gambar 8
Arisitektur Perangkat mobile
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
4. Harus teliti dalam menunjukkan security pada platform sistem operasi berbasis
mobile
BAB III
MENENTUKAN PLATFORM SISTEM OPERASI YANG SESUAI KEBUTUHAN
USER
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
Gambar 9
Pasar global Sistem Operasi mobile 2009 - 2017
Gambar 10
Peta pengguna Andorid dan iOS di dunia
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.
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:
Gambar 11
Platform OS Android dan iOS
BAB IV
MENJELASKAN BAHASA PEMROGRAMAN BERBASIS MOBILE
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
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.
b. Python
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.
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.
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.
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.
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
Gambar 14
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
Gambar 17
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
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)
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”.
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.
BOOLEAN BOOLEAN
EXPRESSION EXPRESSION FALSE
FALSE
T RUE T RUE
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
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:
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
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
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
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.
3) Table Layout
TableLayout adalah tampilan yang mengelompokan tampilan dalam baris
dan kolom.
4) Absolute Layout
AbsoluteLayout memungkinkan untuk menentukan lokasi pasti anak-
anaknya.
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.
Struktur data Orang memiliki atribut nama depan, nama belakang, dan
nomor telepon. Objek Seseorang berjalan, berlari, melompat, dan berbicara.
Objek Seseorang melakukan banyak hal.
Gambar 20
membuat project pertama
Gambar 21
memberi nama project
3. Buka file main.xml didalam package res > layout. Gambar 1.9
Gambar 22
hierarki package
<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>
Gambar 23
tampilan graphical layout
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.
Berikut adalah satu contoh code yang akan digunakan untuk menguji pembuatan
aplikasi:
import java.util.Scanner;
import java.util.Random;
System.out.println();
if (computerInt == 1)
computerPlay = "R";
else if (computerInt == 2)
computerPlay = "P";
else if (computerInt == 3)
computerPlay = "S";
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.");
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
Gambar 26
Gambar 27
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.
SDK akan membantu menguji berbagai aspek aplikasi baik pengujian dalam
emulator atau perangkat Android apa pun.
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.
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
D. Referensi Lainnya
1. tutorialspoint.com. (n.d.). Computer Operating System. Retrieved October 10,
2018, from
https://www.tutorialspoint.com/computerfundamentals/computeroperatingsystem
.html
A. Daftar Peralatan/Mesin
B. Daftar Bahan