2019
Flutter 1.0 的釋出對我們來說是一個很重要的起點,長路漫漫,我們仍有很多工作要做。這裡我們向大家公開我們的產品路線圖(Roadmap)規劃,一方面是保持開源專案的透明度,另一方面,開發者們也可以根據我們的工作優先順序來制定更適合的工程方案。
以下幾點我們今年會著重關注:
- 核心和基礎
- 易用性
- 生態系統
- 移動端之外的支援
- 動態更新
- 工具鏈
我們的計劃會根據大家的反饋以及新的市場變化來做調整,這份路線圖裡的內容不盡然是我們一定會完成的工作。如果你有任何反饋,我們鼓勵你通過 Issuse,或者在我們的郵件群組等與我們保持聯絡。Flutter 是一個開源專案,我們鼓勵你參與到我們當中來。
版本釋出
使用 Flutter 的開發者們可以選擇一個「頻道」來「接收」我們的版本更新和變化,我們目前有四個頻道:master、dev、beta 和 stable,質量和穩定性從前向後依次遞增,釋出速度當然也會是依次相對放緩。
我們計劃每個月釋出一個 beta 頻道的版本,這個釋出通常會是在月初,全年會在 stable 頻道釋出四個較大的「正式」版本。在生產環境裡,我們建議開發者們使用 stable 頻釋出的 Flutter 版本。如果你想了解更多關於我們的版本釋出流程,可以檢視 釋出流程 這篇 Wiki。
關注領域
核心和基礎
我們的首要任務依然是為 Flutter 現有的核心和基礎添磚加瓦:
- 修復 Bug:Bug 修復的優先順序主要是基於 Issue 下的互動數量,比如 GitHub 自帶的一些針對 Issue 的表情互動,點贊等;
- 效能調優:包括減少記憶體、引擎佔用空間(包大小),提高幀率等。如果開發者們有特別的效能基準要求,可以通過 devicelab 測試資料給我們看一下;
- 改進 Flutter 測試流程:以確保為開發者們提供穩定的版本構建不會出現版本回歸;
- 改進錯誤訊息提醒:通過 Google 使用者研究(User Research)團隊的工作,使錯誤提醒更具備可操作性以及包含一些常見的解決方案;
- API 文件改進:特別是提供示例程式碼和圖表等,讓我們的 API 文件更易用。
易用性
為新晉使用 Flutter 的開發者清掃絆腳石,如:
- 完善和滿足希望使用混合工程(將 Flutter 整合到於現有的 Native 工程專案)的開發者們的需求,如提供新的外掛模板和 Android 內嵌 API;
- 更新 Flutter 官方文件以提供更詳盡的文件和使用教程;
- 在 Flutter 應用裡管理 state 的最佳實踐;
- 更好的幫助 iOS 開發者:投入時間持續更新和維護我們的 Cupertino widgets;
- 在非完整工具鏈和執行環境下更容易體驗和使用 Flutter。
生態系統
在 Flutter 中生態系統意味著使用 Flutter 的開發者們可以便捷地完成任何他們想做的事情,甚至在 Flutter 框架不提供提供開箱即用支援的情況下也如此。我們花費了大量的精力在工具和基礎設施建設的工作上,以支援圍繞著核心 Flutter 技術而蓬勃發展的生態系統。Google 也會投入時間開發外掛和工具來貢獻這個生態。
2019 年我們會特別關注的生態系統建設工作:
- 更好的 C/C++ 庫支援,包括從 Dart 到 C 或 C++ 之間的相互呼叫;
- 推進官方開發 / 維護的 Packages(呼叫原生系統的外掛和純 Dart Package)達到與核心框架程式碼相同的質量和完整性;
- 在 iOS 和 Android 上完成地圖和 WebView 外掛的開發;
- 確保 Flutter 應用可以使用一些谷歌服務,比如應用內購買和 YouTube;
- 提供本地推送通知和本地資料儲存的支援。
移動端之外的支援
我們將繼續把 Flutter 擴充到更多形態的終端,以實現我們的目標:構建一個便攜 UI 工具包,在任何需要的地方畫出每一幀畫素。
- 更好的支援鍵盤和滑鼠的輸入;
- 完善可以讓 Flutter 可以執行在 Web 平臺的 Hummingbird 專案;
- 繼續嘗試讓 Flutter 執行在桌面級的平臺之上(如 macOS 和 Windows)。
動態更新
Dart 語言平臺為 Flutter 應用開發提供了熱過載(Hot Reload)的特性,讓開發者們無需重新部署就可以把程式碼推送到應用中去。
- Android 上的動態修復:讓開發者直接將程式碼更新從伺服器推送到 Android 應用裡;
- 動態載入:讓應用裡不常用的部分延遲載入。
工具鏈
- 繼續投入精力支援 Visual Studio Code,Android Studio 和 IntelliJ,使它們能夠作為開發 Flutter 的主力 IDE;
- 增加對 Language Server Protocol 以及其他開放協議的支援;
- 通過改進開發過程中的分析、除錯體驗,讓開發者更簡單地提高應用的整體質量和效能;
- 持續提升模版的體驗,讓 Flutter 的上手開發既快又簡單。
里程碑及計劃時間
如果你對我們每個月將會發布什麼感興趣的話,你可以我們 GitHub 上的 milestones 頁面檢視。計劃趕不上變化,我們的里程碑可能會因為某些 Issue 而被改變,所以我們不能保證每個里程碑的確定完成時間。
歡迎對本文作出反饋。
文/ Flutter 社群:(微信 ID:flutter-io)
原始 Wiki 地址 https://github.com/flutter/fl...