移動端的開發框架
主要考慮 React Native 和 Flutter
- Android/iOS - Java & Kotlin/Objective-C & Swift
- 優勢:
- 用原生的語言開發,效能很好
- 由於推出時間很久了,非常穩定以及能搜尋到的資源也很多
- 劣勢:
- 兩種平台須寫兩份不同語言的程式碼,開發及維護上需要較多人力資源
- 優勢:
- React Native - Javascript
- 優勢:
- 只須一種語言能編成兩種平台的 App
- 用前端語言開發,對於前端開發者較好上手
- 推出時間有五年了,整體框架算穩定以及社群也較多
- 劣勢:
- 需要先學習過 React 這框架會比較好,但 React 上手難度較高
- 由於使用叫高級的程式語言,效能上容易被詬病
- 優勢:
- Flutter - Dartlang
- 優勢:
- 只須一種語言能編成兩種平台的 App
- Dartlang 為 Java-Like 的語言,學習過 Java 會滿好上手的
- Dartlang 是能需要編譯的,效能上比較好
- 劣勢:
- 推出時間短(約一年半),整體框架以及社群尚在發展中
- 優勢:
備註:
- Flutter 於今年五月釋出 Beta 3、六月發出 Preview 1、九月發出 Preview 2,滿看好他的發展。
- 在稍微接觸了 RN 和 Flutter 後,個人覺得 Flutter 還是較親近也比較好上手,所以決定以 Flutter 這框架用來開發移動端的專案。
- 選擇工具為個人喜好決定,並無絕對的好壞,自己用的上手最重要。
起步
個人滿推薦起步時,能按照 官方起步文檔 或 中文起步文檔 ,主要可以先將一到四步完整跑完一次。
編輯器的選擇
- 一開始我使用 VScode 上安裝 Dart 和 Flutter 的插件後開發,後來發現很多好用的功能還沒有
- 建議用 Android Studio 上安裝 Flutter 的插件後開發會比較好喔。
初步了解
Flutter 目前的學習文檔,寫的非常詳細,接下來的步驟可以從 了解更多(原文) 開始。
個人建議以下的閱讀順序:
另外也建議可以稍微了解一下 Dart 的基本用法:
为 Java 开发人员准备的 Dart 教程(原文)
接下來?
- 更多進階內容可以慢慢的把 官方文檔 其餘的地方讀完。