Kerangka Materi
Pendahuluan
Minggu 1: Gambaran Umum Pengembangan Aplikasi Mobile
- Ekosistem dan Platform Mobile
- Ulasan singkat mengenai sistem operasi mobile seperti iOS maupun Android
- Perbedaan utama antara pengembangan native, hybrid, serta lintas platform
- Informasi seputar toko aplikasi populer, yakni Apple App Store dan Google Play Store
- Penjelasan mengenai pendekatan pengembangan native, hybrid, maupun lintas platform
- Perbandingan Native vs Hybrid vs Lintas Platform
- Kelebihan serta tantangan masing-masing metode pengembangan
- Pengenalan Swift (untuk pengembangan iOS), Kotlin (untuk Android), dan React Native (platform lintas platform)
- Cara konversi kode program ke dalam bentuk format native di berbagai platform, khususnya JavaScript pada framework React Native
- Konsep Dasar Pemrograman
- Pengenalan terhadap istilah-istilah pemrograman dasar seperti variabel, tipe data, fungsi, serta pola alur eksekusi program
- Perbandingan sintaks antara Swift, Kotlin, dan JavaScript
- Cara menulis program sederhana dengan bahasa pemrograman masing-masing: Swift, Kotlin, maupun JavaScript
- Pengaturan Lingkungan Pengembangan
- Prosedur instalasi Xcode serta Android Studio
- Cara mengaktifkan alat React Native CLI dan Expo
- Langkah-langkah menjalankan program contoh sederhana berupa aplikasi "Hello World" pada emulator maupun simulator tersedia
Minggu 2: Pengenalan Swift, Kotlin, serta JavaScript
- Pemrograman Swift untuk iOS
- Penjelasan mengenai variabel, konstanta, dan berbagai tipe data dalam bahasa pemrograman Swift
- Struktur kontrol alur program: penggunaan pernyataan
if,switch, serta struktur perulangan - Pemahaman tentang fungsi dan parameter yang digunakan dalam Swift
- Pengenalan dasar terhadap antarmuka Xcode beserta alat Swift Playgrounds
- Pemrograman Kotlin untuk Android
- Penjelasan mengenai variabel, tipe data, serta fungsi dalam sintaks bahasa Kotlin
- Mekanisme keamanan penanganan nilai null dalam Kotlin
- Struktur kontrol alur program dan konstruksi perulangan dalam Kotlin
- Pengenalan antarmuka Android Studio beserta lingkungan pengembangan Kotlin Playground
- JavaScript untuk React Native
- Penjelasan mengenai variabel, konstanta, dan kontrol alur dalam bahasa JavaScript
- Ciri khas ES6: penggunaan fungsi tipe panah (arrow function), literal template, serta teknik decomposing variabel
- Teknik menulis program sederhana menggunakan JavaScript pada framework React Native dengan bantuan alat Expo
Minggu 3: Desain Antarmuka Pengguna iOS
- Elemen-elemen UI di Platform iOS
- Pengenalan terhadap dua paradigma desain antarmuka utama, yakni UIKit dan SwiftUI
- Cara menambahkan serta mengustomisasi komponen tampilan: tombol, label, bidang teks, dsb.
- Proses pembuatan rancangan antarmuka dengan bantuan alat Interface Builder
- Penanganan desain antarmuka multi-tampilan melalui fitur Storyboards
- Sistem Auto Layout serta Konsep Constraint
- Pemahaman prinsip kerja sistem Auto Layout di iOS
- Cara menerapkan constraint (batasan) agar desain antarmuka tetap responsif pada berbagai ukuran layar
- Teknik pembuatan stack view serta penyesuaian elemen tampilan secara dinamis
- Konsep Dasar SwiftUI
- Pengenalan pendekatan desain UI yang bersifat deklaratif dalam lingkungan SwiftUI
- Tahapan membangun komponen-komponen antarmuka dasar menggunakan kerangka kerja tersebut
Minggu 4: Desain Antarmuka Pengguna Android
- Pembuatan Tata Letak Menggunakan Format XML di Android
- Penjelasan mengenai format desain berbasis XML dalam sistem Android
- Komponen tata letak populer seperti LinearLayout, RelativeLayout, maupun ConstraintLayout
- Teknik menambahkan elemen antarmuka: tombol, bidang teks, serta gambar visual lainnya
- Penerapan ConstraintLayout guna menghasilkan desain responsif dan sangat fleksibel
- Desain Material Design di Platform Android
- Pengaplikasian prinsip-prinsip Material Design: warna, ikon, serta standar tipografi tampilan
- Integrasi komponen Material umum seperti tombol, tombol tindakan mengapung (floating action buttons), dan kartu elemen data
- Pembuatan tema maupun pengaturan gaya tampilan khusus untuk aplikasi Android
Minggu 5: Desain Antarmuka Pengguna dengan React Native
- Sistem Flexbox Layout di React Native
- Pemahaman struktur Flexbox guna memproduksi desain tampilan responsif secara dinamis
- Teknik penyusunan elemen dalam konfigurasi kolom dan baris menggunakan Flexbox
- Metode penataan properti komponen dengan Flexbox: misalnya pengaturan justifyContent, alignItems, dsb.
- Komponen Utama di Lingkungan React Native
- Penggunaan elemen standar seperti
Text,View,TextInput, danButton - Teknik pembentukan antarmuka interaktif: pembuatan formulir isian dan tombol navigasi dinamis
- Pemanfaatan komponen
ScrollViewguna menampilkan konten visual yang membutuhkan ruang horizontal maupun vertikal lebih banyak
- Penggunaan elemen standar seperti
Minggu 6: Manajemen Data di Lingkungan iOS dan Android
- Pengelolaan Data pada Sistem Operasi iOS
- Alat penyimpanan data sementara seperti UserDefaults untuk aktivitas keterbatasan simpan data tak terstruktur
- Pemahaman prinsip kerja Core Data, alat spesifik digunakan guna mengatur informasi kompleks di dalam memori lokal perangkat iOS
- Teknik eksekusi permintaan data dari sumber API menggunakan modul URLSession pada lingkungan iOS
- Konversi hasil respons API berupa format JSON menjadi objek terstruktur serta cara menampilkannya di halaman antarmuka tampilan pengguna
- Pengelolaan Data pada Sistem Operasi Android
- Pemakaian alat SharedPreferences untuk menyimpan keterangan data sederhana atau ukuran terbatas
- Perkenalan sistem manajemen basisdata, seperti penggunaan SQLite dan pustaka Room Persistence Library untuk mengatur informasi terstruktur dalam perangkat Android.
- Penggunaan modul Retrofit guna memproses permintaan data dari internet maupun layanan API secara maksimal
- Tahapan penanganan format respons API JSON menjadi bentuk data terstruktur serta mekanisme validasi kelancaran komunikasi internet pada aplikasi Android.
Minggu 7: Manajemen Status dan Eksekusi Permintaan API di Lingkungan React Native
- Pengaturan Parameter serta Pengelolaan Status Komponen dalam Konteks React Native
- Tahapan penyesuaian aliran data antar komponen-komponen pada kerangka kerja ini
- Manfaatkan hook khusus
useStateuntuk pengelolaan status lokal tiap komponen tanpa perlu melewati konteks global - Penerapan alur data lintas tingkat hierarki dengan parameter props antar induk dan turunan komponen
- Eksekusi Permintaan Data Melalui API di Lingkungan React Native
- Teknik pemanfaatan library Fetch API maupun Axios sebagai alat pengirim permintaan komunikasi jaringan HTTP
- Cara penyajian respon data yang diperoleh lewat layanan API pada halaman tampilan dalam format daftar, dengan perantara modul khusus seperti
FlatList,SectionList - Prosedur simpan informasi secara lokal menggunakan fitur AsyncStorage di React Native guna meminimalkan kebutuhan mengirim permintaan ulang secara terus-menerus
Minggu 8: Pengaturan Proses Navigasi pada Sistem Operasi iOS dan Android
- Konfigurasi Pengaturan Navigasi di Platform iOS
- Pengenalan konsep pengendali navigasi serta cara mengelola banyak tampilan utama secara simultan
- Mekanisme transisi satu tampilan ke tampilan lain menggunakan instruksi khusus disebut segue
- Cara mentransfer informasi antar layar dengan metode penyertaan parameter melalui kontainer view controller
- Penerapan struktur navigasi terkelompok menggunakan TabBar maupun NavigationBar untuk penempatan elemen menu secara jelas
- Proses Navigasi pada Platform Android
- Pengoperasian kelas aktivitas (Activities) beserta fungsi intents dalam pengelolaan antarmuka multi-tampilan sistem operasi ini
- Cara kirim data transmisi menggunakan alat khusus bernama Bundle antara aktivitas satu ke aktivitas lainnya
- Pembentukan komponen struktural baru seperti Navigation Drawer serta BottomNavigationView untuk mendistribusikan pengaturan tampilan halaman tambahan
- Integrasi kelas fragment guna pengaturan navigasi secara fleksibel tanpa perlu perubahan kode utama terlalu besar
Minggu 9: Mekanisme Navigasi di Lingkungan React Native
- Pengertian Dasar Mengenai Pengaturan Navigasi pada Platform Ini
- Tahapan instalasi serta inisialisasi framework pengelola navigasi bernama React Navigation
- Kebutuhan mengaktifkan Stack Navigator guna kemudahan transisi tampilan antar halaman tanpa gangguan alur pengguna
- Pengaturan kombinasi struktur layanan seperti Tab Navigator, Drawer Navigator untuk menciptakan navigasi kompleks dan terkelompok
- Penataan parameter aktivasi diantara layar serta penyelarasan status transisi antar komponen navigasi melalui metode State-based updates
Minggu 10: Fitur Tingkat Lanjut
- Fasilitas Tambahan iOS Utama:
- Penempatan Lokasi & Pemetaan Digital
- Pemanfaatan paket modul Core Location guna menemukan titik lokasi pengguna secara akurat
- Penerapan layanan pemetaan dari alat MapKit untuk penyediaan peta visual lokasi fisik pengguna
- Metode penanganan isu lokasi real-time serta pemantauan gerakan perpindahan posisi secara instan
- Fasilitas Kamera & Media Visual
- Pengaktifan akses kamera dan galeri digital sebagai sarana penyimpanan aset visual dalam memori lokal pengguna
- Teknik perekaman, penempatan gambar terpilih melalui alatUIImagePickerController
- Metode amankan simpan data berbasis media di memori internal perangkat iOS
- Penempatan Lokasi & Pemetaan Digital
- Fasilitas Tambahan Android Utama
- Posisi Geografis & Pemetaan Digital
- Penyerapan alat layanan Google Maps API guna tampilkan visual peta sekaligus titik lokasi akurat saat ini
- Perolehan keterangan posisi satelit GPS maupun koordinat geografis pengguna
- Fasilitas Kamera & Media Visual
- Pemanfaatan alat bantu CameraX sebagai alternatif kemudahan akses memori fisik kamera untuk rekaman visual langsung
- Kebijakan pengaturan penyimpanan gambar secara otomatis maupun pengambilan konten multimedia
- Posisi Geografis & Pemetaan Digital
- Fasilitas Tambahan React Native Utama
- Penerapan Fitur Pemetaan di Lingkungan ini
- Integrasi layanan pemetaan lokal atau global melalui modul
react-native-mapssebagai opsi penyedia fitur geolokasi - Cara penataan sistem penjejakan posisi serta perhitungan jalur optimal secara terintegrasi dalam kerangka kerja ini
- Integrasi layanan pemetaan lokal atau global melalui modul
- Akses Kamera & Media Visual di Lingkungan React Native
- Integrasi alat kamera spesifik library React Native Camera sebagai pengaktifan perekam gambar secara instan
- Teknik ambil konten media, manipulasi format aset, dan penyimpanan sementara memori perangkat seluler
- Penerapan Fitur Pemetaan di Lingkungan ini
Minggu 11: Proses Debugging & Pengujian Aplikasi
- Teknik Cari Kesalahan serta Uji Performa di Lingkungan iOS
- Penggunaan alat diagnosa bawaan Xcode:
- Metode set titik henti (breakpoint) dan peninjau objek data selama proses eksekusi program
- Alat konsol khusus yang memaparkan log aktivitas pemrograman real-time
- Pendefinisian isu krusial terkait debugging dan pengelolaan solusinya di lingkungan ini
- Eksekusi Uji Unit Test di iOS:
- Cara tulis unit test memanfaatkan alat khusus berlabel XCTest beserta manajemen hasil ekspektasi tes yang terpilih
- Pembentukan skenario uji terhadap objek logika layar aplikasi menggunakan mock object
- Penggunaan alat diagnosa bawaan Xcode:
- Proses Cari Kesalahan serta Validasi Konten di Lingkungan Android
- Penggunaan alat Logcat pada lingkungan Android Studio:
- Cara menganalisis laporan eror sistem melalui antarmuka Logcat
- Implementasi instruksi henti kode untuk analisa detil logis setiap tahap perjalanan pemrograman
- Teknik Validasi Konten di Android:
- Penerapan kerangka JUnit dalam penulisan serangkaian unit test
- Analisis performa komponen visual utama dengan memanfaatkan alat khusus bernama Espresso
- Penggunaan alat Logcat pada lingkungan Android Studio:
- Teknik Cari Kesalahan serta Evaluasi Aplikasi di Lingkungan React Native
- Alat Analisa Visual & Debugging Konten di React Native:
- Pemanfaatan layanan Chrome DevTools beserta utilitas ekstra bernama React Native Debugger guna mengecek kondisi jaringan dan logis konten tampilan
- Mekanisme pelacak arus permintaan data sistem secara instan melalui modul Console Logs
- Implementasi Evaluasi Konten di Lingkungan ini:
- Penerapan sintaks test khusus Jest disertai alat pengecekan visual Enzymes guna menghasilkan unit test terstandarisasi
- Teknik evaluasi konten komponen tampilan dengan metrik performa jaringan serta akurasi hasil tes yang memuaskan
- Alat Analisa Visual & Debugging Konten di React Native:
Minggu 12: Tahapan Pengunggahan Aplikasi & Proyek Akhir Kursus
- Persiapan, Distribusi Konten di Toko Digital Utama
- Standar Persiapan Publikasi iOS pada App Store:
- Tahapan pengaturan aset visual utama dan dokumentasi validasi legal untuk diterbitkan di lingkungan Apple Store
- Pemanfaatan alat khusus App Store Connect guna kirim permintaan peninjauan aplikasi kepada pihak penyedia layanan
- Metode percobaan uji versi terbaru menggunakan fitur TestFlight yang bersifat publik terbatas
- Tahapan Pengunggahan Konten ke Google Play Store:
- Pengaturan struktur file APK serta aktivasi enkripsi keamanan kode sebelum dipublikasikan melalui lingkungan Android
- Pengaktifan kontroler spesifik Google Play Console sebagai fasilitator administrasi konten aplikasi hingga pengelolaan publisitas pasar terpilih
- Penyesuaian seluruh ketentuan regulasi dan prinsip keamanan yang ditetapkan oleh Google sebelum dianggap layak untuk didistribusikan
- Standar Persiapan Publikasi iOS pada App Store:
- Pengembangan Proyek Akhir Berbasis Skema Individual
- Proses Penyusunan Desain hingga Pengujian Implementasi:
- Tahapan perancangan aplikasi sesuai keinginan masing-masing peserta
- Penerapan sejumlah fitur tingkat lanjut: komunikasi data via internet, struktur navigasi interaktif, fitur media maupun penentuan lokasi secara aktif
- Metode penyajian karya individual kepada komunitas peserta lain beserta pengajar selaku pengamat performa konten akhir hasil kerja<\/li>
- Proses Penyusunan Desain hingga Pengujian Implementasi:
Penutup & Rekomendasi Tahapan Selanjutnya
Persyaratan
- Pemahaman dasar mengenai konsep-konsep pemrograman
- Pengetahuan awal tentang JavaScript
Target Peserta
- Para developer aplikasi mobile
- Pemrogram profesional
Testimoni (3)
Semuanya baik-baik saja.
Adrian Rybka - SEOyon
Kursus - Flutter Development Bootcamp with Dart
Diterjemahkan Mesin
Informasi tambahan yang sangat berguna
Grzegorz - Comp S.A.
Kursus - BLoC Pattern
Diterjemahkan Mesin
Developing the User Auth App and the kahoot activity (made myself sure that i'm absorbing the training lectures :) and its fun!)