Pengalaman Belajar Mobile Apps dengan Flutter

Aug 26, 2024

Catatan Pengalaman Belajar Mobile Apps

Pendahuluan

  • Pembicara baru saja menyelesaikan ngoding untuk mobile apps.
  • Fokus pada Flutter dan React Native.
  • Belajar selama 3 hari dengan rata-rata 6 jam per hari.
  • Menghadapi tantangan dan membagikan pengalaman belajar.

Proyek Sederhana

  • Membuat aplikasi sederhana untuk belajar coding.
  • Menggunakan Flutter dan React Native.
  • Fitur aplikasi:
    • Tambah kontak (nama dan nomor telepon).
    • Menampilkan daftar kontak.
    • Menghapus kontak.
  • Perbedaan antara Flutter dan React Native terlihat pada UI dan sintaksis.

Setup dan Fundamental

Setup

  • Flutter: Mudah untuk setup, cepat dan tidak banyak kendala.
  • React Native: Lebih rumit, terutama saat menggunakan Expo. Perlu banyak pengaturan dan penyesuaian.

Fundamental

  • Memahami konsep dasar sebelum memulai:
    • File utama dan struktur proyek.
    • Konsep state dan props.
    • Pengelolaan data sementara.

Sintaks dan Pengalaman Ngoding

Perbandingan Sintaks

  • Flutter: Menggunakan Dart, sintaks lebih sederhana dan terstruktur.
  • React Native: Menggunakan JavaScript, sintaks lebih panjang karena menggunakan banyak library.

Contoh Sintaks

  • Flutter:
    • File utama main.dart: lebih ringkas.
  • React Native:
    • File utama lebih panjang karena integrasi beberapa library seperti React Native Paper dan Redux.

Widget dan Komponen

  • Flutter menggunakan widget untuk semua elemen UI.
  • Menghadapi kebingungan dalam penggunaan widget dan parameter.
  • Struktur komponen di Flutter dan React Native berbeda:
    • Flutter: pengelompokan widget dalam satu file.
    • React Native: lebih banyak pengelompokan dalam beberapa file.

Pengelolaan Status

  • Flutter: Menggunakan GetX untuk pengelolaan status.
  • React Native: Menggunakan Redux.
  • Kedua metode memiliki logika yang sama tetapi dengan cara penulisan yang berbeda.

Hasil dan Ukuran Aplikasi

  • Ukuran aplikasi:
    • Flutter: sekitar 7 MB.
    • React Native: sekitar 26 MB.
  • Proses build lebih cepat pada Flutter dibanding pada React Native.

Kesimpulan

  • Pembicara lebih suka tetap di JavaScript tetapi menikmati belajar Flutter.
  • Tujuan belajar adalah untuk menambah ilmu dan keterampilan baru.
  • Rencana untuk mencoba teknologi lain seperti Kotlin dan Capacitor di masa depan.
  • Menyemangati audiens untuk mencoba belajar mobile apps.