---
# System prepended metadata

title: DevFest Koahsiung 2019 - 在導入 Flutter 之前，你應該知道什麼？
tags: [Flutter, DevFest Koahsiung, 技術分享]

---

# DevFest Koahsiung 2019 - 在導入 Flutter 之前，你應該知道什麼？
###### tags: `技術分享` `DevFest Koahsiung` `Flutter`
## 怎樣學 Flutter
1. 建置環境，安裝 IDE 與 SDK
2. 學習 Dart 程式語言與慣例
3. 動手寫一個 Flutter App 上手
4. 熟悉 Flutter Widget
5. 熟悉 Flutter 的重要 Pattern 與更新機制
6. 練習寫 Dart Package
7. 練習寫 Flutter Plugin

## 學習 Dart 語言
* Learn X in Y minutes https://learnxinyminutes.com/docs/dart/
* Dart Pad(線上練習) https://dartpad.dartlang.org/
* Exercism(不只有 Dart) https://exercism.io/
* Effective  Dart https://dart.dev/guides/language/effective-dart
## 動手寫一個 Flutter App
* 官網教學 https://flutter.dev/docs/get-started/codelab
* <Flutter實戰>第二章 https://book.flutterchina.club/chapter2/
## Flutter Widget
* https://flutter.dev/docs/reference/widgets
* https://flutter.dev/docs/development/ui/widgets
* https://api.flutter.dev/flutter/widgets/widgets-library.html
* <Flutter實戰>第三~十章
## Flutter 的 Pattern
![](https://i.imgur.com/ZRaqsRh.png)
### Flutter Design Patterns
#### Pattern 就是物件之間的關係
* 不該有關係的就不要有關係
* [Facade](https://medium.com/flutter-community/flutter-design-patterns-7-facade-eb40434fb973):某個 Class 包含了多個子系統，其他人都經過這個介面，避免外與子系統發生關係
* [Singleton](https://medium.com/flutter-community/flutter-design-patterns-1-singleton-437f04e923ce):某個 Class 只有一個instance，其他人都 access這個instance的多對一關係
* [Delegate](https://carsonwah.github.io/delegation-pattern.html):某個 Class 自己不做事，交給另外一個物件的一對一關係

