當前位置:
首頁 > 科技 > 如何快速掌握Flutter開發核心技能?

如何快速掌握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 系統深入掌握相關熱門技術。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 InfoQ 的精彩文章:

微眾銀行眼中的區塊鏈分散式商業趨勢及技術落地

TAG:InfoQ |