Flutter
Pengenalan Flutter
Apa itu Flutter, cara instalasi Flutter SDK, dan cara menjalankan aplikasi pertamamu.
Widget Dasar: MaterialApp & Scaffold
Kerangka dasar aplikasi Flutter lewat MaterialApp dan Scaffold, dua widget pembungkus paling umum.
Layout Dasar: Row, Column, Container
Menyusun widget secara horizontal/vertikal lewat Row dan Column, membungkusnya lewat Container.
StatefulWidget & setState
Widget dengan state yang bisa berubah, di-update lewat method setState().
Text & Styling dengan TextStyle
Mengatur tampilan teks lewat widget Text dan properti TextStyle.
Button & Event Handling
Menangani interaksi pengguna lewat ElevatedButton dan callback onPressed.
Image & Icon
Menampilkan gambar lewat widget Image, dan ikon bawaan lewat widget Icon.
ListView: Menampilkan Daftar Data
Menampilkan koleksi data sebagai daftar scrollable lewat ListView.builder.
Forms & TextField
Menerima input teks lewat TextField, mengambil nilainya lewat TextEditingController.
Navigation: Navigator.push & pop
Berpindah antar halaman lewat Navigator, disusun sebagai stack (tumpukan).
Passing Data Antar Halaman
Mengirim data ke halaman tujuan lewat constructor, dan menerima hasil balik lewat Navigator.pop(data).
State Management Dasar: Provider
Mengelola state yang dipakai bersama banyak widget lewat package Provider, alternatif setState() yang cuma lokal.
Fetching Data: http & FutureBuilder
Mengambil data dari API lewat package http, menampilkan hasilnya lewat FutureBuilder.
Async & Future di Dart
Menangani operasi asynchronous lewat async/await dan tipe Future, fondasi bahasa di balik FutureBuilder.
Themes: ThemeData
Mengatur tema visual aplikasi secara terpusat lewat ThemeData, termasuk dukungan dark mode.
Custom Widget: Membuat Widget Reusable
Mengekstrak kombinasi widget yang berulang jadi class widget sendiri, bisa dipakai ulang di banyak tempat.
Animasi Dasar: AnimatedContainer
Animasi implisit paling sederhana di Flutter — cukup ubah properti, Flutter otomatis meng-animasikan transisinya.
Local Storage: shared_preferences
Menyimpan data kecil (preferensi, token) secara persisten di device lewat package shared_preferences.
Tugas Akhir
Latihan akhir menggabungkan StatefulWidget, ListView, dan setState dalam satu aplikasi Todo List mobile.