開源無止境,谷歌新的移動UI框架—Flutter落地
谷歌發布的新的移動UI框架—Flutter已經成功落地,這是一個開源的移動應用程序SDK,具有自己的框架,小部件和工具。Google希望Flutter能夠在Android、iOS甚至是Google Fuschia等所有平台上構建和部署「漂亮的移動應用」,從而使開發人員更輕鬆,更有效率。
雖然Flutter還處於開發階段,但有很多功能讓人印象深刻:
重新優化,移動優先、支持文字的2D渲染引擎
Functional-reactive框架
豐富的Android和iOS小部件
用於單元和集成測試的API
Interop和插件API連接到系統和第三方SDK
用於在Windows,Linux和Mac上運行測試的Headless test運行器
用於創建,構建,測試和編譯應用程序的命令行工具
現代優雅
到現在,Flutter的創建已經經歷了一段時間,幾年前,Flutter的背後想法是來自一群Google工程師的好奇心。網站上是這麼描述的:
早在2014年,谷歌的一些工程師向後思考:現代的mobi-first渲染引擎是什麼樣的?不用擔心後向兼容性,桌面問題或遺留的限制,於是他們開始編寫Sky,並進行了一些初步的性能測試,之後他們決定將這個實驗發展成為一個真正的項目,並將其重命名為Flutter。在2015年,Google內部的團隊開始在Flutter上構建應用程序,於是http://flutter.io網站誕生了。
Flutter的指導原則很簡單。他們專註於:
控制 - 開發人員應該訪問和控制系統的所有層。
性能 - 用戶應該擁有完美的流暢,響應迅速的應用程序。
保真 - 每個人都應該有精準,美觀,愉快的移動應用體驗。
聽起來很簡單,對吧?但是他們是怎麼做的呢?
React + Dart = Flutter
Flutter是React和Dart最好的混合物。Dart是一種現代化的靜態類型的編程語言,可以編譯成JavaScript在手機上運行。Dart是一個優雅的全堆棧語言,所以Google以自己的語言發布移動SDK並不奇怪。
那麼,Flutter從React那裡有獲得了什麼呢?Flutter的架構很明顯的是受到了React的啟發,仍然運行在「write once, run anywhere」模式中。此外,React沒有自己內置的UI小部件庫,而Flutter在這一方面就是一個創新。
Flutter還做了一些完全不同的事情,它不會將JavaScript或HTML應用程序作為原生移動應用程序運行,也不會為Android和iOS創建單獨的原生應用程序。據David Ford表示:
Flutter是從頭開始重新發明自己的UI組件庫。這些組件是使用平台的低級圖形繪製的。因此,Flutter的UI組件不是html元素,也不是原生的Android / iOS小部件,他們是Flutter小部件。他們具備可插拔的外觀,所以他們可以看起來像iOS原生部件或Android原生部件。
此外,Flutter是不同的,它實現了Dart中的大部分系統,UI的編碼方式與應用程序的其餘部分相同,保持簡單,降低了錯誤的機會。
推薦閱讀:
※2017年轉行學UI設計還有沒有前途?
※Design in Singapore 篇一
※轉 | 關於設計規範的資源、鏈接、參考和文章
※GUI 常用元素中英對照表 / 7. Action Popup
TAG:用戶界面設計 |