什麼是Flutter?android
2018年2月27日,在2018世界移動大會上,Google發佈了Flutter的第一個Beta版本。Flutter是Google用以幫助開發者在iOS和Android兩個平臺開發高質量原生應用的全新移動UI框架。git
其實我第一次據說Flutter是在收到谷歌開發者公衆號的推送裏,當時讀完了那篇文章以爲Flutter的優勢確實比較突出:github
Flutter的核心內容json
接下來我想寫一下我本身經過這兩天的接觸對於Flutter的核心內容也就是上面好處的第二點的理解。緩存
一切都是控件(Widget)
在Flutter中,每一個應用程序都是Widget,這點和其餘的應用框架不同,Flutter的對象模型是統一的,也就是控件。
一個控件能夠定義:微信
控件是基於構圖造成層次結構,每一個控件嵌套在其中,並從其父代繼承屬性,沒有單獨的「應用程序」對象,只有根控件。
您能夠經過告知框架用另外一個控件替換層次結構中的控件來響應事件,好比用戶交互,而後框架會對比新的控件和舊的控件,並有效的更新用戶界面,即更新有變化的控件。網絡
也就是說,在Flutter中,一個應用就是有許許多多的Widget組合而成的。架構
實踐app
作了一個豆瓣電影列表的功能框架
你將會學到
我這裏遇到了一些坑
下面是效果圖:
增長了段子頁面
你能夠學會, 彈框bottomModalDialog
安裝包大小
安裝包有8M。由於用原生的寫會不至於有這麼大,因此要看看究竟,其實很容易發現,flutter庫佔了很大部分,實際dex文件較小。
上傳的源碼中已經打好了apk,能夠直接下載安裝,ipa包沒有打,打了沒有越獄通常也安裝不了的,蘋果這套對開發者不是很友好。
注意事項
原創做者:bravekingzhang
項目地址:https://github.com/bravekingzhang/flutter_me歡迎關注個人微信公衆號「碼農突圍」,分享Python、Java、大數據、機器學習、人工智能等技術,關注碼農技術提高•職場突圍•思惟躍遷,20萬+碼農成長充電第一站,陪有夢想的你一塊兒成長