181 Gambar 189. Respon app ketika tombol login diklik Gambar 190. Respon app ketika username dan password dikenali
182 Gambar 191. Respon app ketika password tidak dikenali Sampai pada tahapan ini, pembuatan app homepage_login_firebase sudah selesai. Ujicoba pada setiap modul (yaitu modul registrasi dan modul login -- sebagai representasi metode Create dan metode Read) pun memperlihatkan hasil sukses, sesuai dengan deskripsi yang diharapkan. b. Latihan C, R dan D dengan perancangan App ShoppingList Kasus kedua yang menjadi bahasan mempelajari operasi create dan read dengan database firebase adalah app shoppinglist. Adapun deskripsi permasalahan adalah sebagai berikut:
183 Gambar 192. Skenario desain app shoppinglist Gambar 192 memperlihatkan skenario desain tampilan antar muka untuk app shoppinglist. Pada app terdapat tombol add, tombol remove item dan tombol clear list. Fungsi tombol add: menambahkan item belanja yang diketik pada textbox ke database firebase. Selain itu, ketika tombol add di-klik app juga menampilkan item yang ditambahkan ke firebase pada layar list-view. Tambahkan juga efek suara klik untuk menambah kesan techno pada app yang dibuat. Pada kolom textbox tambahkan hint properties dengan kalimat “write new item to list”. Layar list-view memperlihatkan item yang telah disimpan pada firebase dB. Klik pada item (iringi dengan efek suara) kemudian klik tombol
184 remove item (iringi juga dengan efek suara) untuk menghapus item belanja. Tombol clear list (ketika di-klik juga diiringi efek suara) untuk menghapus seluruh data pada firebase dan juga list di layar. Berdasarkan deskripsi masalah dan Gambar 192, Tabel 16 berikut memperlihatkan penggunaan komponen dan pengaturan properties yang menyertainya. Tabel 16. Pengaturan properties komponen APP shoppinglist Komponen Properties Nilai diinputkan Screen1 TitleVisible Unchecked Sound1 HorizontalArrangement1 AlignHorizontal Center AlignVertical Center BackgroundColor Blue Height 15% Width Fill parent Label1 TextColor white FontSize 28 Text Shopping List HorizontalArrangement2 Width Fill parent Button1_add BackgroundColor DarkGrey TextColor White Text ADD TextBox1 Width Fill parent Hint write new item to list ListView1 BackgroundColor White TextColor Black
185 Komponen Properties Nilai diinputkan Height Fill parent Label2 Button2_remove BackgroundColor DarkGrey Width Fill parent TextColor White Text REMOVE ITEM Button3_clear BackgroundColor DarkGrey Width Fill parent TextColor White Text CLEAR LIST Notifier1 FirebaseDB1 FirebaseToken AIzaSyByIXzaBotTL1QiA7ri4Qoc7qRwmYIDqYI FirebaseURL https://test-2c11b.firebaseio.com/ Untuk mengingat kembali pengaturan koneksi firebase dengan app yang dirancang, perhatikan penjelasan berikut. Pertama, buat project firebase. Pada contoh yang ditampilkan pada Gambar 193 ada yang perlu di-copy, yaitu Web API Key. Kemudian paste pada kolom FirebaseToken di properties firebaseDB1 (lihat Gambar 196). Gambar 193. Menu project setting
186 Selanjutnya, pada halaman firebase console, klik menu database. Pada halaman ini (lihat Gambar 194) terdapat sebuah link yang perlu dicopas ke kotak FirebaseURL di properties firebaseDB1 (lihat Gambar 196). Gambar 194. Menu database tab data pada halaman firebase console Untuk memastikan bahwa app dapat melakukan operasi write dan read pada database firebase, cek pada tab rules - menu database. Pastikan rules untuk operasi read dan write telah di-set true (lihat Gambar 195). Gambar 195. Tab rules menu database pada halaman firebase console
187 Gambar 196. FirebaseDB properties. Mengatur koneksi app dengan firebase Setelah semua pengaturan telah di-set, selanjutnya kita siapkan data pada database firebase. Seperti yang ditunjukkan pada Gambar 197, buat projectBucket -> “shoppinglist_firebase”. Kemudian di dalam projectBucket tersebut, buat tag “tempe” dan “tempegodong”. Value dari kedua tag diisi dengan “true”. Gambar 197. Menyiapkan data pada firebase database
188 Setelah desain user interface dan data di database project selesai disiapkan, langkah selanjutnya adalah menyiapkan codeblock untuk tes koneksi antara app dengan firebase. Gambar 198 memperlihatkan keseluruhan rancangan codeblock. Pertama, siapkan codeblock procedure. Beri nama “getData”. Pada prosedur getData, kosongkan firebase ProjectBucket dan tambahkan prosedur call Firebase.GetValue. Fungsi prosedur call Firebase.GetValue adalah untuk load data pada database firebase yang nilai tag-nya didefinisikan. Pada codeblock yang ditampilkan Gambar 198, app akan load semua data firebase dengan tag “shoppinglist_firebase”. Jika tag tersebut tidak terdapat data, maka app akan menampilkan tulisan “-empty list-”. Gambar 198. Rancangan codeblock untuk tes koneksi data antara app dengan firebase Untuk keperluan pengetesan dan uji coba koneksi antara app dengan firebase, skenarionya adalah menampilkan data firebase yang sudah disiapkan pada Label2. Seperti yang ditampilkan pada Gambar 198, pada codeblock when FirebaseDB1.GotValue tambahkan block set Label2.Text get value. Gambar 199 memperlihatkan tampilan ketika app dijalankan via menu AiCompanion. Pada gambar terlihat bahwa Label2 menampilkan data yang sebelumnya telah disimpan pada data firebase. Berhasil..!!
189 Gambar 199. Tampilan app saat uji coba koneksi data dengan firebase Perancangan kita lanjutkan. Skenarionya adalah agar data yang telah tersimpan di firebase bukan lagi tampil di komponen Label2, melainkan di komponen Listview. Berarti pada codeblock when FirebaseDB1.GotValue bukan lagi dipasang blok set Label2.text. Seperti yang ditampilkan pada Gambar 200, buat prosedur baru yang diberi nama “extractData”. Mengapa harus dibuatkan prosedur extractData? Karena seperti yang terlihat pada komponen Label2 di Gambar 199, dua data firebase yang tersimpan ditampikan bersamaan. Dengan dipisahkan oleh tanda koma. Selain itu, tag dan value juga ditampilkan bersamaan. Dengan dipisahkan oleh tanda “sama dengan” (=). Karena itu pada prosedur extractData kita lakukan operasi pemisahan data. Gunakan block empty list untuk menampung data saat operasi. Kemudian seperti yang terlihat pada Gambar 199, bahwa data yang ditampilkan diberi tanda “{“ di awal dan akhir data. Maka operasi
190 pemisahan data dilakukan mulai karakter ke-2 hingga karakter akhir - 2. Setelah itu pisahkan data (split) berdasarkan tanda koma. Hasilnya ditampilkan pada komponen Listview (perhatikan Gambar 200). Gambar 200. Penyesuaian rancangan codeblock agar data tampil di komponen listview Gambar 201 memperlihatkan tampilan ketika app dijalankan via menu AiCompanion. Pada gambar terlihat bahwa dua data firebase yang tersimpan dapat ditampilkan sebagai elemen komponen listview1. Hore, berhasil..!!
191 Gambar 201. Tampilan app saat ujicoba menampilkan data firebase di komponen listview Namun, seperti terlihat pada Gambar 201, data yang ditampilkan masih terdiri dari tag dan value. Padahal, berdasarkan deskripsi permasalahan, yang dikehendaki hanyalah load data tag saja. Karenanya perlu dilakukan penyesuaian kembali pada prosedur extractData.
192 Gambar 202. Penyesuaian codeblock agar hanya data tag saja yang tertampil pada listview Seperti rencana, prosedur extractData ditambah blok untuk menghilangkan tanda = dan juga menghilangkan kata “true”. Block replace dari kelompok text bisa dimanfaatkan untuk tujuan ini. Gambar 202 memperlihatkan keseluruhan prosedur extractData yang telah disesuaikan. Gambar 203 memperlihatkan tampilan ketika app dijalankan via menu AiCompanion. Pada gambar terlihat bahwa dua data firebase yang di-load pada komponen listview tinggal data tag saja. Yes, great.. :) Tahap selanjutnya kita aktifkan tombol add. Dengan demikian user pengguna app bisa menambah data dari app. Data yang ditambahkan lalu disimpan ke database firebase dan juga secara otomatis komponen listview di-update menyesuaikan.
193 Gambar 203. Tampilan app saat uji coba prosedur extractData Gambar 204. rancangan codeblock untuk aktifkan tombol add
194 Codeblock yang pertama adalah when Button1_add.Click. Kemudian set ProjectBucket <- “shoppinglist_firebase”, agar tombol add ini terkoneksi dengan tag yang bersesuaian. Langkah selanjutnya, gunakan block if-then untuk melakukan pengecekan apakah textbox kosong atau tidak. Jika kondisi if bernilai true, maka simpan apa yang ada pada textbox ke kolom tag. Sedangkan kolom value diisi dengan “true”. Setelah data tersimpan kemudian panggil prosedur resetTextField untuk mengosongkan textbox. Panggil juga prosedur hideKeyboard untuk menghilangkan keyboard virtual dari perangkat dan panggil prosedur getData untuk update elemen Listview. Gambar 205. Tampilan app saat mengetik krupuk di kolom textbox Gambar 205 dan Gambar 206 memperlihatkan tampilan app saat diuji coba. Pada Gambar 206 terlihat bahwa krupuk yang diketik di kolom textbox berhasil tampil pada elemen listview.
195 Gambar 207 memperlihatkan bahwa “krupuk” berhasil tersimpan pada database firebase. Yeayy, berhasil..!! Gambar 206. Tampilan app setelah tombol add di-klik oleh user Gambar 207. Krupuk berhasil disimpan pada database firebase
196 Berikutnya adalah melakukan perancangan codeblock untuk tombol remove item. Ini juga berarti kita belajar melakukan operasi delete dari app ke database firebase. Gambar 208. Rancangan codeblock untuk delete satu item data Gambar 208 memperlihatkan keseluruhan rancangan codeblock untuk operasi delete satu item data. Pada code when Button2_remove.Click, pertama kita set ProjectBucket <- “shoppinglist_firebase”, agar tombol remove item ini terkoneksi dengan tag yang bersesuaian. Kemudian, gunakan prosedur call FirebaseDB1.ClearTag. Prosedur ini ada di komponen FirebaseDB1. Kemudian tag yang di-delete dipasangkan pada elemen listview yang diklik. Caranya gunakan block ListView1.Selection. Kemudian panggil kembali prosedur getData untuk update elemen Listview. Perancangan codeblock untuk tombol remove item telah selesai. Saatnya ujicoba. Jalankan app dengan menggunakan menu AiCompanion. Gambar 209 memperlihatkan app saat diuji coba. Pada gambar terlihat elemen “tempegodong” sedang dipilih untuk di-delete. Setelah tombol remove item di-klik, pada Gambar 210 terlihat bahwa item “tempegodong” berhasil di hapus dari database firebase. Yes, alhamdulillah berhasil lagi
197 Gambar 209. Tampilan app ketika ujicoba remove item Gambar 210. Item “tempegodong” terhapus dari database firebase
198 Selanjutnya, yang terakhir, kita rancang codeblock untuk tombol Clear List. Tombol ini dimaksudkan untuk menghapus semua data di database firebase. Ketika tombol ini di-klik secara otomatis pula, listview menampilkan info “empty list” karena data di firebase kosong. Namun untuk menghindari tombol ini tidak sengaja terpencet, maka perlu dipasang sebuah notifikasi untuk memastikan bahwa proses penghapusan database memang diinginkan oleh user. Pertama, tempatkan codeblock panggil Notifier.ShowChooseDialog di dalam codeblok when Button3_clear.Click. Seperti yang telah dijelaskan sebelumnya codeblock ShowChooseDialog ini bertujuan untuk menampilkan pesan notifikasi yang dilengkapi dengan tombol Accept dan tombol Cancel. Dengan demikian user dapat memilih apakah betul akan clear database atau membatalkannya. Kemudian rancang codeblock when Notifier1.AfterChoosing. Pada codeblock ini, jika user memilih tombol Accept, maka set ProjectBucket <- “ ”. Hal ini bertujuan untuk mengosongkan tag yang telah digunakan. Kemudian, gunakan prosedur call FirebaseDB1.ClearTag dengan tag “shoppinglist_firebase”. Tag ini dari awal sudah di-set menjadi projectBucket. Dengan demikian, jika tag ini dihapus maka seluruh data di database firebase akan terhapus. Kemudian panggil kembali prosedur getData untuk update elemen Listview. Pemanggilan prosedur getData dimaksudkan agar listview menampilkan pesan “-empty list-“ karena memang database kosong, telah dihapus sebelumnya. Gambar 211 memperlihatkan rancangan codeblock untuk tombol Clear List. Gambar 212 memperlihatkan ketika app diujicoba dan user klik tombol Clear List. Terlihat bahwa notifikasi yang dirancang, muncul dengan pilihan Accept atau Cancel. Gambar 213 memperlihatkan bahwa seluruh data berhasil dihapus dan Listview menampilkan notif “-empty list-“. Yeay… Berhasil
199 Gambar 211. Rancangan codeblock untuk tombol clear list Gambar 212. Tampilan app saat ujicoba tombol clear list
200 Gambar 213. Tampilan app setelah tombol accept pada notifikasi di-klik Berdasarkan deskripsi permasalahan, codeblock yang belum dirancang adalah penambahan efek suara click ketika ada perubahan data. Yang perlu dipersiapkan adalah mencari file .wav atau file .mp3 yang sesuai dengan kebutuhan. Pada contoh ini, file suara mouse-click di download dari laman https://www.fesliyanstudios.com/royalty-free-sound-effectsdownload/mouse-click-2. Kemudian file .wav tersebut diupload pada sound properties (lihat Gambar 214). Gambar 214. upload suara klik mouse ekstensi .wav
201 Untuk membuat efek suara setiap kali ada perubahan data, gunakan codeblock when FirebaseDB1.DataChanged. Codeblock ini adalah di kelompok code FirebaseDB1. Kemudian pada codeblock tersebut panggil prosedur call Sound1.play dan panggil juga prosedur call getData. Ujicoba kembali app dengan menggunakan menu AiCompanion dan lihat efek yang terjadi. Bisa mendengar suara klik setiap add data, remove dan clear list? Berhasil… Gambar 215. Codeblock untuk efek suara click setiap ada perubahan data Tugas Mahasiswa Pada Gambar 208 di halaman 196, pada saat melakukan remove data, digunakan codeblock “trim”. Sebutkan alasan penggunakan block “trim” pada operasi tersebut? Pada Gambar 204 di halaman 193, pada operasi tambah data di sana digunakan codeblock “if”. Pada codeblock tersebut apakah anda sadar hanya terdapat program jika kondisi if bernilai true? Bagaimana jika seandainya kolom textbox kosong dan tombol add di-klik? Bisakah anda memperbaiki kondisi ini? C. Penutup 1. Rangkuman Firebase merupakan salah satu database pihak ketiga yang dapat dikoneksikan dengan App yang kita rancang. Salah satu kelebihan Firebase adalah Firebase menawarkan fasilitas realtime database dan online. Dengan demikian, salah satu persyaratan utama membangun App dengan database Firebase adalah membutuhkan koneksi internet saat menjalankan apk-nya.
202 Pada studi kasus, latihan operasi dasar database, yaitu create, read dan delete database menjadi menyenangkan dan mudah. 2. Evaluasi dan Kunci Jawaban Untuk memantapkan pemahaman anda, silahkan kerjakan tugas perancangan berikut: Anda diminta membuat APP Database Perusahaan. App tersebut mencatat nama perusahaan, alamat email dan website perusahaan. Adapun desain tampilan minimal adalah seperti diperlihatkan pada Gambar 216. Gambar 216. Desain user interface app database perusahaan Rancanglah flowchart untuk setiap action yang terjadi ketika tombol di-klik. Kemudian rancang app-nya.
203 3. Tindak lanjut Bila sudah mampu menerapkan perancangan database dengan menggunakan firebase dan app inventor maka anda sudah memahami materi ini. Anda dapat melanjutkan mempelajari bab selanjutnya.
Rencana Pembelaja CAPAIAN PEMBELAJARAN a. CP LULUSAN YANG DIBEBANKAN PADA MATA KULIAH: Mahasiswa Teknik Industri USB mampu menguasai prinsip- prinsip rekayasa (engineering fundamentals untuk analisis dan perancangan sistem terintegra rekayasa berbasis teknologi informasi serta komputa b. CP MK YANG RELEVAN DENGAN CP LULUSAN: Mahasiswa Teknik Industri USB mampu program pemrograman tertentu untuk merealisasikan algoritm MATRIKS PEMBELAJARAN : Ming gu Kemampuan akhir yang diharapkan Materi/Pokok Bahasan Strateg Pembel ran 1 2 3 4 1 Mahasiswa mampu menjelaskan konsep pemrograman dan menggunakan konsep algoritma untuk penyelesaian kasus sederhana a. Pengantar teknologi komputer b. Pengantar Pemrograman Komputer (Pendahuluan) c. Siklus Diskusi, demons asi dan studi kasus
204 ran Semester (RPS) konsep teoretis sains alam, aplikasi matematika rekayasa; s), sains rekayasa, perancangan rekayasa yang diperlukan asi, memanfaatkan perangkat perancangan dan analisis asi yang sesuai untuk melakukan aktivitas rekayasa (CPL 1) m komputer dan basis data sederhana dengan bahasa ma-algoritma penyelesaian masalah tertentu gi aja Latihan yang dilakukan Waktu yang disediakan Kriteria Penilaian (Indikator) Bo bot (%) 5 6 7 8 , str Pengembangan program dengan tools algoritma untuk penyelesaian kasus 2 x 50 + 1 x 180 (T/ P) Ketepatan algoritma dalam menyelesaikan kasus permasalahan 10
Ming gu Kemampuan akhir yang diharapkan Materi/Pokok Bahasan Strateg Pembel ran 1 2 3 4 pengembangan program : • Definisi masalah • Merancang algoritma 2 Mahasiswa mampu menggunakan tools untuk membuat algoritma untuk penyelesaian kasus sederhana Tools algoritma: flowgorithm Diskusi, demons asi dan studi kasus 3/4 Mahasiswa mampu membuat program sederhana untuk penyelesaian kasus sederhana Pengenalan app inventor Pembuatan program aplikasi untuk penyelesaian kasus permasalahan Penanganan objek input dan output Diskusi, demons asi dan studi kasus 5 UK
205 gi aja Latihan yang dilakukan Waktu yang disediakan Kriteria Penilaian (Indikator) Bo bot (%) 5 6 7 8 , str Penggunaan tools untuk membuat algoritma untuk penyelesaian kasus 2 x 50 + 1 x 180 (T/ P) Ketepatan algoritma dalam menyelesaikan kasus permasalahan 10 , str Penggunaan app inventor untuk membuat aplikasi (program) untuk penyelesaian kasus 2 x2 x 50 + 2 x 1 x 180 (T/ P) Ketepatan program dalam menyelesaikan kasus permasalahan 10 KAD 1
Ming gu Kemampuan akhir yang diharapkan Materi/Pokok Bahasan Strateg Pembel ran 1 2 3 4 6 Mahasiswa mampu menggunakan tools untuk membuat algoritma untuk penyelesaian kasuskasus yang lebih kompleks Perancangan algoritma dg metode flowchart Diskusi, demons asi dan studi kasus 7/8 Mahasiswa mampu membuat program untuk penyelesaian kasus yang lebih kompleks Statement logika (if, if-then, if-then-else) Function Pembuatan program aplikasi untuk penyelesaian kasus permasalahan Diskusi, demons asi dan studi kasus 9 UK 10/ 11 Mahasiswa mampu membuat program untuk penyelesaian kasus yang lebih kompleks Perulangan For Diskusi, demons asi dan studi kasus
206 gi aja Latihan yang dilakukan Waktu yang disediakan Kriteria Penilaian (Indikator) Bo bot (%) 5 6 7 8 , str Penggunaan tools untuk membuat algoritma untuk penyelesaian kasus yang lebih kompleks 2 x 50 + 1 x 180 (T/ P) Ketepatan algoritma dalam menyelesaikan kasus permasalahan yang lebih kompleks 20 , str Penggunaan app inventor untuk membuat aplikasi (program) untuk penyelesaian kasus 2 x2 x 50 + 2 x 1 x 180 (T/ P) Ketepatan program dalam menyelesaikan kasus permasalahan 10 KAD 2 , str Penggunaan app inventor untuk membuat aplikasi (program) untuk penyelesaian 2 x2 x 50 + 2 x 1 x 180 (T/ P) Ketepatan program dalam menyelesaikan kasus permasalahan 10
Ming gu Kemampuan akhir yang diharapkan Materi/Pokok Bahasan Strateg Pembel ran 1 2 3 4 12 Penanganan logika switch Diskusi, demons asi dan studi kasus 13 Pengenalan database sederhana Diskusi, demons asi dan studi kasus 14 UK 15- 17 Mahasiswa mampu membuat program untuk penyelesaian kasus yang lebih Project: Penyelesaian kasus Studi kasus, present
207 gi aja Latihan yang dilakukan Waktu yang disediakan Kriteria Penilaian (Indikator) Bo bot (%) 5 6 7 8 kasus , str Penggunaan app inventor untuk membuat aplikasi (program) untuk penyelesaian kasus 2 x 50 + 1 x 180 (T/ P) Ketepatan program dalam menyelesaikan kasus permasalahan 10 , str Penggunaan app inventor dan firebase untuk membuat aplikasi (program) untuk penyelesaian kasus 2 x 50 + 1 x 180 (T/ P) Ketepatan program dalam menyelesaikan kasus permasalahan 10 KAD 3 tasi Penggunaan semua tools untuk membuat aplikasi 2 x 2 x 50 + 2 x 1 x 180 (T/ P) Ketepatan algoritma dan program dalam menyelesaikan 10
Ming gu Kemampuan akhir yang diharapkan Materi/Pokok Bahasan Strateg Pembel ran 1 2 3 4 kompleks 18 UK
208 gi aja Latihan yang dilakukan Waktu yang disediakan Kriteria Penilaian (Indikator) Bo bot (%) 5 6 7 8 (program) untuk penyelesaian kasus kasus permasalahan KAD 4
209 DAFTAR PUSTAKA Aziz, M. H. A. (2017) Apa itu Firebase? Manfaatkan Alat dan Infrakstuktur dari Google untuk Developer (Kelebihan & Kekurangan), Muhaaz.com. Available at: https://www.muhaaz.com/2017/02/apaitu-firebase-manfaatkan-alat-dan-infrakstuktur-dari-google-untukdeveloper-kelebihan-kekurangan/ (Accessed: 26 August 2019). Gajewski, R. R. (2018) ‘Algorithms, Programming, Flowcharts and Flowgorithm’, E-learning and Smart Learning Environment for the Preparation of New Generation Specialists, 10, p. 393. Available at: http://www.studio-noa.pl/ig/pub/us/E-l-10/10-393.pdf. Gill, P. S. (2006) Operating Systems Concepts. Firewall Media. Available at: https://books.google.co.id/books?id=eQ0Z1JWI7AwC. Hartono, J. (2006) Konsep Dasar Pemrograman Bahasa. IV, 3th Published. Yogyakarta: Andi Publisher. Available at: http://andipublisher.com/produk-0601001708-konsep-dasarpemrograman-bahasa-c.html (Accessed: 5 April 2019). Ilhami, M. (2018) ‘Pengenalan Google Firebase Untuk Hybrid Mobile Apps Berbasis Cordova’, IT CIDA, 3(1). Available at: http://journal.amikomsolo.ac.id/index.php/itcida/article/view/47 (Accessed: 23 August 2019). Jhon, J. L. (1986) Pengenalan komputer. Mutiara Sumber Widya. Available at: https://books.google.co.id/books?id=x4SWnQAACAAJ. Kadir, A. (2013) From Zero To A Pro: Pemrograman Aplikasi Android. Yogyakarta: Andi Offset. Kadir, A. (2018a) Langkah Mudah Pemrograman Android Menggunakan App Inventor 2 Ultimate. Jakarta: Elex Media Komputindo. Kadir, A. (2018b) Pemrograman Android & Database. Jakarta: PT. Elex Media Komputindo. Lau, W. (2018) Teaching Computing in Secondary Schools: A Practical Handbook - William Lau - Google Books. New York: Routledge. Available at: https://books.google.co.id/books?id=sOE2DwAAQBAJ&pg=PT211&d q=flowgorithm&hl=en&sa=X&ved=0ahUKEwilkqb3gNviAhVMX60KH
210 Qs2AoQQ6AEIPjAD#v=onepage&q=flowgorithm&f=false (Accessed: 9 June 2019). Myers, B. A. (1986) ‘Visual programming, programming by example, and program visualization: a taxonomy’, in ACM SIGCHI Bulletin. Toronto: sigchi.org, pp. 59–66. Available at: http://www.cs.cmu.edu/~bam/papers/chi86vltax.pdf. Nugraha, F. (2014) Cara Mendaftarkan Aplikasi di Google Play, teknojurnal.com. Available at: https://teknojurnal.com/tutorialmendaftarkan-aplikasi-di-google-play/. Susanto, A. (2003) ‘Pengenalan Komputer’, ilmukomputer.com, March, pp. 1–8. Available at: http://ilmukomputer.org/wpcontent/uploads/2010/03/arief_pengenalankomputer.pdf (Accessed: 4 April 2019). Tamplin, J. (2014) Firebase is Joining Google!, The Firebase Blog. Available at: https://firebase.googleblog.com/2014/10/firebase-is-joininggoogle.html (Accessed: 23 August 2019). Wicaksono, R. (2009) Belajar Assembly di Linux, IlmuHacking.com. Available at: http://www.ilmuhacking.com/programming/belajar-assembly-dilinux/ (Accessed: 15 April 2019). Wihidayat, E. S. and Maryono, D. (2017) ‘Pengembangan Aplikasi Android Menggunakan Integrated Development Environment (Ide) App Inventor-2’, Jurnal Edutic, 4(1), pp. 1–12. Available at: http://journal.trunojoyo.ac.id/edutic/article/view/3229. Wilkes, M. V. and Renwick, W. (1950) ‘The EDSAC (Electronic delay storage automatic calculator)’, Mathematics of Computation, 4(30), pp. 61– 61. doi: 10.1090/S0025-5718-1950-0037589-7. Williams, M. R. (1997) A history of computing technology. IEEE Computer Society Press. Available at: https://dl.acm.org/citation.cfm?id=548832 (Accessed: 4 April 2019). Yudistira, Y. (2011) Membuat Aplikasi iPhone Android & BlackBerry Itu Gampang - Yuan Yudistira - Google Buku. Cetakan 1. Jakarta: Mediakita. Available at: https://books.google.co.id/books?hl=id&lr=&id=AwzLwwhE390C&oi =fnd&pg=PA1&dq=kategori+program:+berbasis+web,+desktop,+mo bile+android+atau+ios&ots=QqRk4Reubs&sig=n_Xr0YoyHnWgkYmm BnUr-VmNOP8&redir_esc=y#v=onepage&q&f=false (Accessed: 14
211 April 2019).
212 BIODATA PENULIS Nama lengkap : Adhie Tri Wahyudi, ST., M.Cs. Email : [email protected] Pekerjaan : Pengajar bidang ilmu teknologi informasi Program Studi S1 Teknik Industri Universitas Setia Budi Riwayat Pendidikan: 1. S2 Program Studi S2 Ilmu Komputer, UGM (2010 - 2012) 2. S1 Program Studi S1 Teknik Informatika, UAD (2000 – 2004)
ADHIE TRI WAHYUDI PEMROGRAMAN KOMPUTER Menggunakan Flowgorithm dan App Inventor Bagi Mahasiswa Teknik Pemrograman Komputer, pada era industri 4.0 merupakan materi yang diperlukan oleh para mahasiswa dalam mempersiapkan hard skill untuk berkompe si selepas bangku kuliah. Dunia manufacture ataupun perusahaan lainnya saat ini sangat bergantung pada sistem komputer dan otoma sasi dalam menjalankan operasionalnya. Di sisi lain, sistem informasi dan program aplikasi terus berkembang, dak hanya berbasis komputer dengan sistem operasi Windows, melainkan juga harus kompa bel dengan perangkat mobile berbasis sistem operasi Android. Adhie Tri Wahyudi Buku Pemrograman Komputer Menggunakan Flowgorithm Dan App Inventor ini ditulis dengan gaya bahasa tutorial dan studi kasus. Materi yang disajikan adalah perancangan algoritma dan mengubah algoritma menjadi program aplikasi Android. Buku ini disusun dari hasil peneli an dan adaptasi pendekatan cara mengajar kepada mahasiswa teknik non-informa ka dengan tujuan akhir mahasiswa memiliki kemampuan membuat sistem informasi dan program aplikasi berbasis Android. Karena itu, buku ini dirancang dengan bahasa yang sederhana dan dilengkapi dengan contoh kasus yang dijelaskan dengan gaya tutorial. Hal ini menjadi nilai plus buku ini karena para mahasiswa menjadi lebih mudah memahami dan mengiku materi yang diharapkan. Buku ini dilengkapi soal la han dengan bobot/ ngkat kesulitan yang telah disesuaikan untuk mengukur sejauh mana kemampuan mahasiswa dalam memahami materi. Pemrograman Komputer Menggunakan Flowgorithm dan App Inventor Anggota Asosiasi Penerbit Perguruan Tinggi Indonesia (IKAPI) Jln. Letjen. Sutoyo, Mojosongo, Jebres, Surakarta 57127 PEMROGRAMAN KOMPUTER Menggunakan Flowgorithm dan App Inventor Adhie Tri Wahyudi