30 天逃出新手村 Flutter 篇達成

andyyou
6 min readAug 30, 2024

--

從 10 年前一腳踏入 React 的世界 ([Reactjs 30 天邊做邊學系列](https://ithelp.ithome.com.tw/m/articles/10155643)) ,當時被其革命性的功能吸引,自然而然之後在跨平台 Mobile 應用程式開發的選擇上, React Native 成為首選,確實也讓我可以有效率的開發跨平台應用程式。除了在一些點例如傳感器相關的 Bridge 效能不盡滿意,一般需求開發是不錯的選擇。

確實,主觀的以個人經驗來說,隨著使用的時間和情境越長當然也會遭遇到各種問題,以我個人的經驗來說;典型如上面提到的效能議題、部分通用功能的第三方函式庫無法跟上版本升級、Flipper 等開發工具複雜度、設定配仍然需要特定平台知識等等。因此,閒暇時刻總是在關注跨平台的解決方案例如 [Kotlin Multiplatform](https://kotlinlang.org/docs/multiplatform.html#kotlin-multiplatform-use-cases) 等。

> 另一方面,在 React Conf 2024:React Native 的新架構終於上 Beta 了。或許 0.75 搭配官方建議的 Expo,各方面包含 DX 可以有更棒的提升,讓我們持續關注。

當 Flutter 悄然崛起,並在最近幾年飛速發展時,它引起了我的注意。隨著 Flutter 來到 3.x 版本和 Dart 2.x 其進步有目共睹,除了效能,新的渲染引擎,更廣泛的跨平台(除了 Android、iOS 更新增 Windows、macOS、Linux)。在親眼看到其開發工具那優秀的 DX 體驗,以及一些需求上如 Google Map 和 Firebase 都是 Google 親兒子,整合的更好等等。這些因素的綜合使得我想認真的嘗試看看這個框架。本系列文章將記錄我從 React Native 的經驗,學習和適應 Flutter 的過程。

> [Google I/O 2024 Flutter 3.22 和 Dart 3.4 有哪些新玩意兒](https://segmentfault.com/a/1190000044888587)
> [Google I/O](https://io.google/2024/explore/?q=flutter)

關於主題,我將概略的根據實務常見的需求列出我預期與希望探討的章節,希望這 30 天我們能一起逃離新手村,進一步有深刻的了解:

1. [Flutter 跨平台解決方案與環境安裝](https://ithelp.ithome.com.tw/articles/10343267)
2. [快速入門](https://ithelp.ithome.com.tw/articles/10343370)
3. [Dart 基礎 (上)](https://ithelp.ithome.com.tw/articles/10343405)
4. [Dart 基礎 (下)](https://ithelp.ithome.com.tw/articles/10343523)
5. [Dart 物件導向 (上)](https://ithelp.ithome.com.tw/articles/10343627)
6. [Dart 物件導向 (下)](https://ithelp.ithome.com.tw/articles/10343743)
7. [Dart 深入探索 Flutter 常用特性](https://ithelp.ithome.com.tw/articles/10343859)
8. [Widget 與使用者介面](https://ithelp.ithome.com.tw/articles/10343963)
9. [認識內建組件](https://ithelp.ithome.com.tw/articles/10344058)
10. [使用者輸入與手勢處理](https://ithelp.ithome.com.tw/articles/10344189)
11. [深入狀態組件的生命週期](https://ithelp.ithome.com.tw/articles/10344331)
12. [表單與欄位](https://ithelp.ithome.com.tw/articles/10344479)
13. [樣式與佈局](https://ithelp.ithome.com.tw/articles/10344620)
14. [進階 UI 組件](https://ithelp.ithome.com.tw/articles/10344730)
15. [路由與 Navigator 1.0 vs 2.0](https://ithelp.ithome.com.tw/articles/10344858)
16. [轉場與資料傳遞](https://ithelp.ithome.com.tw/articles/10345002)
17. [狀態管理](https://ithelp.ithome.com.tw/articles/10345140)
18. [套件管理 — pub.dev](https://ithelp.ithome.com.tw/articles/10345283)
19. [探索主流第三方插件](https://ithelp.ithome.com.tw/articles/10345450)
20. [動畫](https://ithelp.ithome.com.tw/articles/10345592)
21. [多國語系支援](https://ithelp.ithome.com.tw/articles/10345741)
22. [處理 API 請求](https://ithelp.ithome.com.tw/articles/10345801)
23. [整合 Google Map](https://ithelp.ithome.com.tw/articles/10346029)
24. [推播通知](https://ithelp.ithome.com.tw/articles/10346177)
25. [深入狀態管理](https://ithelp.ithome.com.tw/articles/10346305)
26. [測試](https://ithelp.ithome.com.tw/articles/10346458)
27. [偵錯](https://ithelp.ithome.com.tw/articles/10346613)
28. [整合測試](https://ithelp.ithome.com.tw/articles/10346766)
29. [發佈正式版應用程式](https://ithelp.ithome.com.tw/articles/10346917)
30. [藍芽通訊使用 flutter_blue_plus](https://ithelp.ithome.com.tw/articles/10346918)

--

--