Hi,
Lama tidak menulis untuk blog ini, sudah hampir 2 tahun (mungkin? nanti saya edit kalo ternyata salah) tidak ada aktifitas post baru (kecuali post gambar vektor wkwkwk itu tidak dihitung. You know lah). Dalam rentang waktu itu pula banyak lahir bahasa pemrograman baru dan lebih banyak lagi update pada bahasa pemograman atau framework baru.
Oh iya, tulisan ini hanya akan membahas pemrograman untuk aplikasi mobile, ya. Mungkin hal lain juga. Sedikit.
Ambil contoh saya Ionic versi stabil yang sudah punya basis dari React Native (framework JavaScript). Terakhir kali saya post di blog ini Ionic belum ada versi ReactNative-nya.
Tapi saya tidak (lebih tepatnya belum) mempelajari ReactNative. Saya memilih untuk belajar bahasa pemrograman baru yaitu Flutter. Sebenarnya Flutter bukan bahasa pemrograman, sih, Flutter adalah UI toolkit yang dikembangkan oleh Google. Tapi, Flutter dikembangkan dalam bahasa Dart yang mana merupakan bahasa pemrograman baru bagi saya.
Tulisan ini akan membahas bagaimana saya belajar Flutter. Lebih gampang nyebutnya seperti itu, ya. Flutter aja, bukan Dart. Dan karena sepengalaman saya tiap belajar bahasa baru, prinsipnya selalu sama. Jadi katakanlah Flutter ini cuma perwakilan saja.
Lalu bagaimana saya mulai belajar Flutter?
Sudah tentu menyiapkan environment-nya dong
Ini wajib ya. Install Flutter dan software pendukung yang nyaman buat ngoding. Saya pakai Android Studio. Tapi bisa juga bekerja dengan Flutter pakai Visual Code, SublimeText, Atom, dan lain-lain; senyamannya Anda saja mau pakai yang mana.
Mempelajari struktur file-nya
Maksudnya gimana? Maksudnya adalah bagaimana menulis coding agar bisa di-build (atau compile, run, atau istilah lainnya) dan menjadi aplikasi jadi. Dalam mempelajari struktur file ini ada beberapa hal yang saya lakukan, yaitu:
- Mencari method mana yang pertama kali dipanggil oleh sistem saat menjalankan aplikasi. Kalau di Flutter ada method
main()
di filemain.dart
yang pertama kali dipanggil. - Method apa yang pertama kali dipanggil dalam sebuah class yang digunakan untuk menjalankan suatu halaman. Ini beda dari poin nomor 1. Umumnya dalam sebuah class ayng pertama kali dipanggil adalah constructor-nya. Dan di Flutter setelah panggil constructor adalah method
initState()
(saya pakai StatefulWidget) lalu methodbuild(BuildContext context)
untuk mem-build UI halaman.
Membuat tampilan
Poin di atas disebutkan “mem-build UI” kan? Karena masing masing framework atau bahasa pemrograman berbeda-beda dalam stuktur coding UI-nya, jadi membiasakan dengan codingan UI baru sangat penting dipelajari di awal. Walaupun, mungkin secara prinsip banyak UI yg coding-nya hampir sama.
Bagaimana cara berpindah-pindah halaman (Route)
Masa iya mau buat aplikasi cuma 1 tampilan aja? 😀
Memang ada framework yang cuma run satu halaman saja. Tapi routing-nya ya umumnya lebih dari satu. Misal login dan home. Nah, untuk itu bagaimana caranya berpindah-pindah halaman? Ini pertanyaan yang tidak butuh jawaban, ya.
Bagaimana cara mengirim data ke halaman lain
Ini juga penting. Contoh ada halaman list produk. Untuk masuk ke halaman lihat detail produk harus mengirim misal ID produk dan kemudian di halaman detail dengan ID tersebut akan didapat detail produk dari API. Atau sekalian kirim full data produk di halaman detail.
Buat global helper
Wah ini sih penting banget buat saya. Biar lebih gampang dan cepat dalam mengerjakan project. Global helper bisa macam-macam dan bisa dipanggil di class manapun. Biasanya saya buat helper yang isinya banyak methods. Atau helper yg isinya banyak Strings. Contoh, saya selalu buat helper yang isinya method untuk save-delete data ke SharedPreference, atau encode-decode JSON (di PHP sih gampang ya) yang lebih advance, atau validasi String, atau untuk membuat format currency (di PHP sudah ada function bawaannya), atau method untuk convert String ke object tanggal dan sebaliknya, dan masih banyak lagi sesuai kebutuhan.
Sisanya…
Selebihnya ya mempelajari syntax dari bahasa pemrogramannya. Misal bagaimana Flutter melakukan looping, soal variabel atau field, membuat condition yang lebih sederhana, membuat model, dan lain-lain. Se-lumrahnya bahasa pemrograman aja.
Sepertinya cuma 7 poin itu saja yang saya biasa lakukan. Nanti jika ada yg terlewat akan saya update post ini.
Untuk teknis bagaimana saya ngoding mungkin akan saya tulis di post lain.
Semoga bermanfaat 🙂
Jika uraian di atas kurang jelas, bisa Anda tanyakan di kolom komentar atau hubungi kami lewat kontak yang tercantum di halaman About. Jangan sungkan-sungkan…