Flutter Brainstorming
Flutter Brainstorming
Results for “Most Loved Technology – Other Frameworks and Libraries” category in the Stack
Overflow Survey (2022)
Who is Using Flutter?
Local Companies
Setup & Installation
Setup & Installation
1. Flutter SDK : https://docs.flutter.dev/get-started/install
2. Xcode (MacOS)
3. Android Studio (IDE) : https://developer.android.com/studio/install
4. VS Code (Text Editor) : https://code.visualstudio.com/download
VS Code Extension
1. Flutter
2. Dart
3. Pubspec Assist
4. Error Lens
5. Awesome Flutter Snippets (Optional)
6. Flutter Snippets (Optional)
7. Flutter Widget Snippets (Optional)
8. Bracket Pair Colorizer (Optional)
9. Prettier – Code Formatter (Optional)
Create First App
Create First App (VS Code)
1. Press F1 or Ctrl+Shift+P or Cmd+Shift+P (MacOS)
2. Type Flutter: New Project, then select.
3. Select Application
6. Done
Create First App (Command Line)
Dart Editor
• Dart Editor: teks editor seperti vscode, sublime text,
notepad++ dll.
Dartium • Dartium: peramban web yang menyertakan Dart
(berdasarkan Chromium)
Dart Tools
• dart2js: digunakan untuk mengonversi skrip dart ke
dart2js javascript
• pub: a package manager
pub
Dart Program
• Double
• Map
• String
• Queue
• Boolean
• Set
String Interpolation
• Dapat ditambahkan dalam sebuah literal string dengan
menambahkan $ (contoh: $variable_name or ${objectUser.name}
•
Control Flow Statements
• if, else if and else
• for loops (for and for in)
• while and do while loops
• switch and case
Class
• Dart adalah bahasa berorientasi objek dengan class
• Setiap objek adalah contoh dari sebuah class
Class Constructor
Metode khusus dari suatu class yang digunakan untuk inisialisasi
objek. Saat kita membuat instance (objek) dari sebuah class,
constructor akan dipanggil dan seringkali digunakan untuk
memberikan nilai awal pada atribut-atribut objek
Single
Inheritance
Flutter Widgets
Flutter Widgets
Flutter Structure
Material App
Title Home
Scaffold
Text Column/Row
Widget
Widget
Scaffold Widget
• Scaffold merupakan kerangka dasar yang mengimplementasi struktur tata letak visual material design.
Biasanya, scaffold digunakan sebagai root dari halaman yang akan ditampilkan.
• Fitur utama dari Scaffold yaitu AppBar, Body, FloatingActionButton, Drawer & BottomNavigationBar
Text Widgets
• Text
• RichText
TextField Widget
TextField: widget yang memungkinkan user untuk meng-input teks, biasanya digunakan dalam form
ataupun tempat yang memerlukan input teks. TextField dapat dikonfigurasi untuk berbagai jenis input
seperti teks, password, nomor dan lainnya.
Image Widgets
• Asset Image
• Network Image
Container and SizedBox Widget
• Container: adalah widget serbaguna yang menggabungkan widget painting, positioning, dan size yang
umum. Container dapat didekorasi dengan BoxDecoration dan juga menambahkan constraints pada child
widget, padding, dan margins. Pada dasarnya, container adalah widget yang serbaguna untuk
menggabungkan berbagai fungsi menjadi satu.
• SizedBox: adalah widget sederhana dengan ukuran (height & width) tertentu, dapat digunakan ketika Anda
ingin membuat spasi antar widget (spacer) atau ingin menentukan ukuran tertentu pada child widget.
Button Widgets
• TextButton: Button yang umumnya digunakan untuk teks
• FloatingActionButton:
InkWell and GestureDetector Widget
• Row: View Widget yang dapat menampung berbagai widget didalamnya dan menampilkan view secara baris
dari kiri ke kanan.
ListView and GridView Widget
• ListView: widget yang menampilkan
view scrollable baik secara vertical
ataupun horizontal. Sangat efektif
untuk menampilkan data dengan
jumlah yang besar.
ListView GridView
UI Challenge (Login UI)
Slicing UI
Review
Slicing UI
State Management & Navigation
dengan
State Management
3. Kemudian Save file pubspec.yaml atau jalankan command flutter pub get untuk mengunduh
dependency ke project
State Management (GetX)
1. Interceptor
2. FormData
3. Request Cancellation
4. Timeouts
5. Global Configuration
3. Kemudian Save file pubspec.yaml atau jalankan command flutter pub get untuk mengunduh
dependency ke project
API Integration & Networking (Dio)
1. Buat DioService class, dan setup Dio instance pada class