Kerangka Materi
Pendahuluan
Minggu 1: Konsep-konsep Tingkat Lanjut Swift, Kotlin, dan JavaScript
- Swift (iOS)
- Fungsi tingkat lanjut: closure, pengambilan nilai, fungsi tingkat tinggi
- Pemrograman berorientasi protokol serta penerapan konsep generik
- Manajemen memori melalui ARC (Automatic Reference Counting)
- Kotlin (Android)
- Fungsi ekstensi dan library standar Kotlin
- Pemanfaatan coroutine untuk pengembangan asinkron
- Struktur sealed class, enum, serta penanganan error tingkat lanjut
- JavaScript (React Native)
- Fasilitas ES6+ tingkat lanjut: destrukturisasi, async/await, promisi
- Konsep pemrograman fungsional dalam JavaScript
- Penggunaan library pihak ketiga pada lingkungan React Native
Minggu 2: Arsitektur dan Pola Desain Aplikasi Mobile
- MVVM (Model-View-ViewModel) untuk iOS dan Android
- Pemahaman struktur MVVM dalam konteks aplikasi Swift maupun Kotlin
- Penerapan ViewModel serta pengamatan perubahan data melalui LiveData (Android) atau Combine (iOS)
- Implementasi teknik reactive programming lewat RxSwift dan RxKotlin
- Arsitektur Berbasis Komponen pada React Native
- Mekanisme hidup matinya komponen serta konsep hooks
- Praktik terbaik dalam mengelola state dan properti secara skala besar
- Pemanfaatan API Context untuk pengelolaan global state
Minggu 3: Konsep Jaringan Komputer Tingkat Lanjut
- Jaringan pada iOS (Swift)
- Penggunaan URLSession guna permintaan jaringan kustom
- Penanganan panggilan REST API tingkat lanjut serta teknik mengatasi error
- Pemanfaatan framework Codable dalam parsing JSON
- Teknik menjaga keamanan komunikasi API (SSL pinning, OAuth)
- Jaringan pada Android (Kotlin)
- Menggunakan Retrofit sebagai alat pengiriman dan penerimaan data dari server
- Pendekatan canggih dalam penanganan error serta mekanisme percobaan ulang request
- Pemrosesan data JSON dengan alat bantu Gson atau Moshi
- Komunikasi aman via HTTPS beserta metode otentikasi OAuth
Minggu 4: Jaringan pada React Native
- Integrasi API Melalui Axios dan Fetch
- Penerapan tools Axios serta Fetch untuk interaksi dengan server secara mendalam
- Rencana strategis dalam mengatasi kesalahan permintaan maupun mekanisme retry yang efektif
- Mengendalikan alur autentikasi seperti JWT atau OAuth
- WebSockets dan Komunikasi Real-Time
- Pemahaman dasar mengenai kemampuan WebSocket di lingkungan React Native
- Penerapan aplikasi chatting maupun notifikasi real-time dengan koneksi socket
- Teknik mengelola hubungan koneksi berkelanjutan beserta pembaruan datanya
Minggu 5: Teknik Penyimpanan Data Lanjutan
- Core Data dan SQLite (iOS)
- Pengaturan hubungan antar data, teknik fetching, serta optimalisasi kueri dalam Core Data
- Pemanggilan API langsung ke basisdata SQLite guna pengelolaan aplikasi iOS
- Strategi efisiensi pengolahan dan penanganan informasi skala besar
- Room Persistence serta SQLite (Android)
- Pengaturan hubungan kompleks antara tabel dan strategi query dalam Room Database
- Cara mengelola dataset membesar sekaligus menjaga performa database
- Penerapan ProGuard untuk melindungi struktur kode basis data
- Firebase sebagai Penyimpan Data Cloud (iOS dan Android)
- Penggabungan layanan Firebase dengan tujuan sinkronisasi data antar perangkat secara real-time
- Cara memelihara keseimbangan antara pengolahan lokal maupun pengarsipan data ke cloud
Minggu 6: Manajemen State Tingkat Lanjut pada React Native
- Redux sebagai Alat Pengendali State
- Penerapan konsep middleware, Thunk, dan Saga dalam Redux tingkat lanjut
- Cara mengoptimalkan manajemen state agar mampu skalabel dengan konsumsi sumber daya optimal
- Recoil sebagai Pilihan Pengelola State
- Pengenalan Recoil: solusi fleksibel alternatif pengganti Redux
- Mencapai pengaturan state besar yang terstruktur secara modular dalam lingkungan React Native
- Cara memperbaharui state dengan metode atomik untuk efisiensi memori dan pemrosesan
Minggu 7: Pembuatan Animasi Tingkat Lanjut pada iOS dan Android
- iOS (Swift)
- Pemanfaatan Core Animation untuk gerakan visual, pengelolaan layer, serta transisi antarmuka
- Teknik UIKit Dynamics dalam pembuatan animasi yang mengikuti hukum fisika dasar
- Kreasi transisi khusus dan pergantian controller aplikasi melalui animasi tersendiri
- Android (Kotlin)
- Penggunaan MotionLayout dalam pembuatan animasi kompleks pada skenario tertentu
- Penerapan TransitionManager dan transisi antar elemen yang saling bersesuaian secara visual
- Penyesuaian dinamis nilai properti visual seperti skala, rotasi, atau tingkat opacity objek
Minggu 8: Animasi dan Desain UI/UX pada React Native
- Animasi dalam React Native
- Pemanfaatan Animated API serta alat Reanimated demi penciptaan animasi rumit
- Implementasi interaksi berbasis gerak melalui pustaka React Native Gesture Handler
- Praktik terbaik untuk mempertahankan efisiensi pemrosesan dalam kreasi animasi mobile
- Komponen Antarmuka Kustom
- Cara membangun elemen desain yang reusable dan dapat dikonfigurasikan ulang pada lingkungan React Native
- Penerapan media queries serta sistem fleksibel flexbox guna mencapai tampilan responsif
Minggu 9: Mengintegrasikan Modul Asli dan Fitur Perangkat Keras
- Akses Fitur Perangkat Asli
- Pemanfaatan kamera, layanan lokasi, Bluetooth, serta sensor secara efektif
- Pembentukan modul asli khusus lewat Swift atau Kotlin agar bisa diserap ke dalam struktur React Native
- Implementasi ARKit sebagai alat pemroses gambar augmented reality untuk iOS
- Pemanfaatan CameraX dan ARCore demi realisasi fungsionalitas serupa pada perangkat Android
- Jembatan Komunikasi React Native dengan Modul Asli
- Konstruksi modul kompatibel yang dapat mengintegrasikan kegunaan ekstra khusus platform masing-masing
- Penghubungan struktur Swift dan Java sebagai penghubung alur data antara kedua lingkungan
- Cara menjaga koordinasi kode asli dalam proyek lintas platform secara aman serta efisien
Minggu 10: Pengujian dan Debugging Aplikasi Tingkat Lanjut
- Pengujian pada iOS (Swift)
- Pembentukan kasus uji unit melalui alat XCTest serta teknik pengujian UI
- Optimalisasi analisis performa dan penemuan memori yang terbuang lewat alat Xcode Instruments
- Penyusunan mekanisme test berkelanjutan dengan Jenkins atau CircleCI
- Pengujian pada Android (Kotlin)
- Penerapan unit test melalui JUnit dan pengujian interaksi UI menggunakan alat Espresso
- Analisis konsistensi kinerja perangkat beserta pembuangan bottleneck memori lewat bantuan Android Profiler
- Penjalanan kasus uji otomatis di ratusan model smartphone menggunakan Firebase Test Lab
- Pengujian pada React Native
- Pelaksanaan test unit dengan bimbingan Jest serta evaluasi struktur komponen melalui Enzym
- Simulasi kondisi produksi nyata lewat tool Detox beserta persiapan skenario otomatisasi yang tangguh
- Pengamatan keteraturan operasional menggunakan React Native Debugger dan Flipper secara menyeluruh
Minggu 11: Penyaluran Aplikasi serta Otomatisasi Melalui CI/CD
- Penyaluran ke App Store (iOS)
- Persiapan dokumentasi sertifikat dan profil penyedia layanan guna mengejar masa peninjauan aplikasi
- Otomatisasi proses penyerahan iOS melalui alat Fastlane yang terpercaya
- Pengelolaan kontrol sistem App Store Connect serta pemilihan jalur verifikasi sesuai harapan pengguna
- Penyaluran ke Google Play (Android)
- Proses konversi kode menjadi format APK dan penandatanganan digital sebelum dikirimkan ke toko aplikasi
- Pengaturan rute distribusi secara otomatis dengan bantuan alat Fastlane serta konfigurasi Gradle yang kompatibel
- Konfigurasi panel admin Google Play Console untuk mengendalikan peninjauan serta penyebaran versi beta
- Pembentukan Sistem CI/CD
- Pengaturan lingkungan Jenkins, GitHub Actions, atau CircleCI sebagai motor utama pipeline deployment kontinu
- Penerapan instruksi Fastlane guna menyatukan alur kerja pengiriman iOS maupun Android dalam satu mesin
- Penetapan protokol standard dalam pemilihan nomor versi, counter build, serta segmentasi channel publikasinya
Minggu 12: Proyek Akhir Pelatihan
- Pembentukan Aplikasi Produksi Mandiri
- Desain dan konstruksi aplikasi akhir yang mengadopsi segala fitur pelajaran di sepanjang kursus
- Penerapan desain UI/UX orisinal, animasi dinamis, manajemen state efektif, modul khusus platform serta hubungan API berkelanjutan dengan server
- Penyelesaian pengoptimalan secara maksimal sebelum penyaluran resmi ke App Store dan Google Play
Penutup dan Arah Pengembangan Selanjutnya
Persyaratan
- Pemahaman yang memadai mengenai konsep-konsep pemrograman, khususnya dalam Swift, Kotlin, dan JavaScript
- Pengalaman sebelumnya dalam membangun aplikasi iOS, Android, atau React Native secara dasar
- Pengetahuan tentang pola desain seperti MVC atau MVVM serta pengalaman menangani manajemen state dasar
Target Peserta
- Developer Mobile
- Programmer
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!)