Skip to Content
Flutter👋 Giới thiệu

Giới thiệu về Flutter

Flutter là gì?

Flutter là UI toolkit mã nguồn mở của Google, cho phép xây dựng ứng dụng native đẹp mắt cho mobile, web, desktop và embedded từ một codebase duy nhất.

Tại sao nên học Flutter?

1. Cross-platform từ một codebase

// Viết một lần, chạy mọi nơi void main() { runApp(MyApp()); }

Một codebase Dart có thể build ra:

  • 📱 iOS & Android apps
  • 🌐 Web apps
  • 💻 Desktop apps (Windows, macOS, Linux)
  • 📺 Embedded devices

2. Hiệu suất Native

Flutter không sử dụng web view hay bridge như các framework khác. Thay vào đó, Flutter:

  • Compile trực tiếp thành native ARM code
  • Sử dụng engine đồ họa Skia riêng
  • Đạt 60fps mượt mà

3. Hot Reload

Thay đổi code và thấy kết quả ngay lập tức mà không mất state:

// Thay đổi màu Container( color: Colors.blue, // Đổi thành Colors.red ) // Hot Reload -> Thấy ngay!

4. Widget Library phong phú

Flutter cung cấp hàng trăm widgets có sẵn theo hai design systems:

Design SystemPlatformMô tả
Material DesignAndroid-styleGoogle’s design language
CupertinoiOS-styleApple’s Human Interface

Kiến trúc Flutter

┌─────────────────────────────────────┐ │ Your Dart Code │ │ (Widgets, Logic) │ ├─────────────────────────────────────┤ │ Flutter Framework │ │ (Material, Cupertino, Widgets) │ ├─────────────────────────────────────┤ │ Flutter Engine │ │ (Skia, Dart VM, Platform) │ ├─────────────────────────────────────┤ │ Platform Embedders │ │ (iOS, Android, Web, Desktop) │ └─────────────────────────────────────┘

Everything is a Widget

Trong Flutter, mọi thứ đều là Widget:

// Text là widget Text('Hello Flutter') // Button là widget ElevatedButton(onPressed: () {}, child: Text('Click')) // Thậm chí padding cũng là widget Padding( padding: EdgeInsets.all(8.0), child: Text('Padded text'), )

So sánh với các framework khác

Tiêu chíFlutterReact NativeNative (Swift/Kotlin)
Ngôn ngữDartJavaScriptSwift/Kotlin
Hiệu suấtCaoTrung bìnhCao nhất
Hot Reload✅ Có✅ Có❌ Không
Cross-platform✅ Đầy đủ✅ Mobile❌ Riêng lẻ
Learning curveTrung bìnhDễKhó

Điều kiện tiên quyết

Trước khi học Flutter, bạn nên:

  1. Biết lập trình cơ bản - biến, hàm, điều kiện, vòng lặp
  2. Học Dart cơ bản - xem phần Ngôn ngữ Dart
  3. Hiểu OOP - classes, objects, inheritance

Các bước tiếp theo

  1. 📦 Cài đặt môi trường - Cài Flutter SDK, IDE
  2. 🚀 Ứng dụng đầu tiên - Hello World app
  3. 📁 Cấu trúc dự án - Hiểu folders và files
  4. ▶️ Chạy ứng dụng - Run trên emulator/device

📝 Tóm tắt

  • Flutter = Google’s UI toolkit cho cross-platform development
  • Một codebase → Mobile, Web, Desktop
  • Hot Reload = Phát triển nhanh
  • Everything is a Widget = Triết lý cốt lõi
  • Cần biết Dart trước khi học Flutter
Last updated on