如何快速掌握Flutter開發核心技能?
Flutter 應用是如何運行起來的?Flutter 開發體驗是怎樣的?Flutter 框架有哪些新思路來提升開發效率?如何將 Flutter 集成到企業應用中?用一套代碼實現在 iOS、Android 平台上體驗優良的應用,Flutter 值得我們學習。
這次,我們有幸採訪到了美團點評技術專家李會超老師,作為 美團點評最早落地 Flutter 線上大規模應用的實踐者和推動者之一,讓我們來聽聽他是如何看待 Flutter 這一框架的技術現狀。
1、你在美團的 4 年時間裡,推進了商家業務移動端架構升級和基礎設施建設,能否介紹一下具體工作內容,其中運用了哪些關鍵技術?
以四年的維度來看,商家端的整體架構和基礎設施的變化還是很大的。一開始我們更多的專註於業務快速迭代,做了很多基礎業務模塊抽象、通用控制項和持續集成小工具建設。再後來是各業務模塊的一系列重構,以提供更好的擴展性、健壯性以及部分動態能力。因為 B 端的業務對實時性、穩定性要求更高,我們還做了很多性能 / 業務指標的統計、監控及改善的工作,並對前後端交互協議做了升級,以滿足業務的安全性、實時性。最近一年多我們做了業務模塊的拆分下沉,聚攏了面向 B 端的一些工具、平台化建設、業務指標提升及雙端復用等等。
2、您對 React Native 和 Flutter 擁有深刻的理解及豐富的項目實踐經驗,您對這兩個跨端開發方案有什麼看法,哪個更好?如何選擇適合公司產品的工具?應從哪些方面考慮?
其實這個問題前不久 React Native 團隊在 Reddit 上簡單回答過一次。他們解釋,兩個方案的目標不同,解決方案也不同。React Native 是利用平台已有的組件和樣式,而 Flutter 是從頭建起,自己用 GL 繪製。兩個都是優秀的跨平台解決方案,我們在企業實踐落地時,可以從開發效率、技術棧、性能表現、生態建設、動態化及方案路線圖來進行考慮。比如,是解決 Android、iOS 的跨端問題還是包括 PC、Web?業務頁面對性能要求是否能滿足?公司基建的對接成本?技術棧不一致帶來的技能培訓成本是否能接受?
3、作為美團點評最早落地 Flutter 線上大規模應用的實踐者和推動者,中間經歷了哪些坑?技術落地的關鍵點是什麼?請舉例說明。
當初實踐時還算順利,中間並沒有遇到太大的坑。主要是考慮如何將集成的侵入性降低,以減少對其他業務開發同學的影響。落地過程中主要的關鍵點包括:對接公司的持續集成,以保證自動化的持續迭代。制定開發規範、工程管理方案以及補充基礎工具並對接公司現有的基礎組件,滿足並規範 Flutter 上層業務的開發。還有性能及核心指標監控、灰度策略和混合導航棧開發等。
4、你認為 Flutter 框架有哪些新思路來提升開發效率?其中,最值得關注的點是什麼?為什麼?
Flutter 通過多種方式提升開發效率,包括有帶狀態的熱重載,響應式編程,Widget。其中 Everything"s a Widget 是一個比較新穎的思路,不同於以往頁面布局方式,Flutter 將布局位置、樣式、控制項統一抽象為 Widget,在寫頁面邏輯時通過組裝方式即可達成,每當應用狀態發生變化時,頁面直接進行重繪而不是調整 UI 控制項的樣式,這樣就減免 UI 變更部分的邏輯。另外,還有帶狀態的熱重載,這顯然能夠降低調試難度,非常有利於開發效率提升。除此之外,Flutter 也採用了其他框架的開發方法 - 響應式編程,用戶界面根據當前狀態來更新頁面,這也是提升開發體驗的一種重要方法。另外,在 Flutter 2019 年的規劃里,還可以看到對 Web(Hummingbrid) 和 Desktop 平台的支持計劃,統一整個前端開發技術棧無疑對開發效率的提升是非常顯著的,所以這也是我們值得關注的點。
5、最後,大前端技術發展日新月異,前端工程師除了要有編程能力和架構知識,還需要培養哪些能力,才能跟上技術發展潮流,不斷進行自我成長?
大前端技術迭代迅速,我自己也還在持續的學習中,還不能以一個高的視角來系統、完整的回答這個問題。不過我可以談談自己一個簡單的思考。技術發展潮流往往是為了解決現實中的問題、痛點。拿大前端來講,多端開發的成本、效率、質量就是一個痛點。這時候就會有一些解決思路及相應的技術方案,就會獲得較大的關注度,當它能夠較好的解決(或者部分解決)痛點時,大家就會擁抱這個發展。所以說在實際工作中,比如業務迭代中、技術方案落地中,我們如果能夠更加用心體會、思考,就能察覺到一些痛點,進而更積極的去了解針對這個痛點,業界是否有成熟的解決方案或者思路。這時候就實現了自我成長。
嘉賓介紹:
李會超,美團點評技術專家。專註於大前端開發領域多年,曾就職於新浪微博,現任美團外賣商家業務 iOS 負責人,致力於提升研發效率與研發質量,為商家提供穩定可靠的生產力工具。在美團的四年時間,推進了商家業務移動端架構升級和基礎設施建設,探索並大規模落地了多端復用的多重可行性方案,對 React Native 和 Flutter 擁有深刻的理解及豐富的項目實踐經驗,是美團點評最早落地 Flutter 線上大規模應用的實踐者和推動者。
如果以上的問題還沒有能夠解答你心中的問題,那麼你可以關注在 6 月 22-23 日在北京國際會議中心舉辦的 GMTC 深度培訓,在課程現場,李會超老師會為大家帶來《Flutter 技術進階與實戰》,本課程結合具體工程實例講解,總結了企業應用落地實踐過程和經驗、應用底層技術,幫助團隊快速了解 Flutter 開發核心技能,在低成本前提下實現業務的快速迭代。
一、課程大綱
Flutter 基本框架及原理講解
開發調試與熱重載
App 集成方案
倉庫管理及項目結構組織
頁面 / 數據框架使用
企業級落地整體方案
Flutter 未來發展
二、聽眾收益
了解 Flutter 開發框架及基本原理
了解 Flutter 開發調試方法
了解 Flutter 集成方案
了解 Flutter 企業應用落地方案
三、目標聽眾
中小型移動開發團隊
需要快速迭代的團隊
獨立開發者
不僅如此,滴滴司機端 iOS 團隊負責人馬華、美團點評 Android 技術專家何定旭,也將會分別為大家帶來客戶端和端內 H5 的性能問題優化、Android 性能優化的深度課程,讓你從 0 到 1 系統深入掌握相關熱門技術。
![](https://pic.pimg.tw/zzuyanan/1488615166-1259157397.png)
![](https://pic.pimg.tw/zzuyanan/1482887990-2595557020.jpg)
TAG:InfoQ |