技術實戰:初創專案前端框架選型

FinFish發表於2022-11-29
作為一個小開發,近期完整的經歷了,一個初創專案從搭建到推向市場的過程。實際上在整個過程中,開發只佔很小的一個板塊,尤其是對於我司這種初創型企業,人少錢少,每一分都得花到刀刃上,因此產品開發的過程要足夠快,成本也要足夠低!
由於我們專案的特殊性,最初的產品demo透過微信小程式的形式跑通了基本功能,然後就到了正式研發階段。老闆對產品的要求就是需要包含:微信小程式、H5、Android、ios、windows、macos並且儘可能多的覆蓋其它平臺。本系列文章先站在公司的的角度對產品技術選型進行分析,然後再根據我們專案實際開發經驗進行彙總,供大家參考。
目前大前端技術也非常豐富,可以實現,一次開發,打包多個平臺。團隊針對幾個不同技術方案裡進行了討論:有比較老牌的Cordova、Xamarin、NativeScript,也有近幾年比較火:React Native、Flutter、FinClip、Election

Cordova

Cordova勝在架構簡單,比如一個簡單的Activity,上面搭載一個CordovaWebView Component,他是一個改造過的WebView,加裝了一些Cordova API,讓你藉此和Native的部分互動。App基本上就是一個Mobile Web,多了一些跟Native互動的能力。
優點是好上手,寫程式碼快。有豐富的外掛去銜接Native平臺、社群完善。使用Ionic可以一套程式碼在安卓端、iOS端、網站端、小程式端通吃。
Cordova(Ionic)缺點也明顯,終究是個Web,效能體驗太差了!

Xamarin

Xamarin是Cordova的老對手,Xamarin的產品簡化了針對多種平臺的應用開發,包括iOS和 Android。總體比Cordova複雜多了,大致上分成幾個部分:Xamarin.Android、Xamarin.iOS、Xamarin.Mac(後來才出現的)以及Xamarin.Forms。
Xamarin.Mobile有很多優點。在這一框架內,開發 Android 和 iOS 應用可以不用轉到 Eclipse 或者額外購買 Mac 並使用 Xcode,而繼續在Visual Studio之中使用 C# 與 .NET Framework 進行。而且效能效能接近原生、內建功能豐富(數千個自定義UI控制元件)。 缺點:稍微延遲支援最新的平臺更新、對開源庫的訪問受限、Xamarin生態系統不大、與第三方庫和工具的相容性問題等等

Flutter

Flutter是近兩年風很大的一款開源、跨平臺移動端開發框架,由 Google 開發。Flutter 使用 Dart 作為開發語言,這是一門簡潔、強型別的程式語言。它允許使用同一個程式碼庫構建高效能、漂亮的 iOS 和 Android 應用,Flutter還提供了兩套視覺庫,可以針對不同的平臺有不同的展示效果。此外,透過自定義的 Flutter 引擎可以將其嵌入到其他平臺。


技術實戰:初創專案前端框架選型

Flutter優點非常多:開源免費;Dart語言簡單易學;獨立的Skia渲染引擎,高效能高一致性、豐富的元件支援、豐富的社群支援,在混合開發中,是最接近原生開發的框架。
團隊沒有選擇Flutter 的主要原因是Flutter on desktop也還是beta版本。Windows PC和linux平臺的相容支援官方正在持續研發中。

FinClip

與上面Flutter、Cordova、Xamarin這些框架技術比起來 FinClip 實在是一款輕便簡潔的小工具,我們驚歎於它的靈活性!整體靈活又體積小巧(大概3M)。
FinClip 是一套小程式容器技術,也可以說是小程式SDK Runtime/Engine,提供 Runtime 基於瀏覽器核心,採用動態語言(JS)和宣告式 View 構建(XML),並且相容網際網路主流小程式技術,可採用 vue、react 基礎上的 DSL 框架。
這種容器技術與上述的跨端技術不僅不衝突,還可以相容。不管是透過Flutter、Reactive Native、uni 、Taro等開發出來的小程式都可以透過FinClip執行。
小程式執行時方案的高價效比,主要體現在應用體驗、應用框架支援以及宿主環境結合等方面。
應用體驗方面,小程式技術是前端容器技術的一種應用,其元件及UI都有明確的規範,開發者不用考慮相容性及類似H5開發時複雜工具及框架的選擇。同時,由於元件及UI都是預設的,展示體驗也會更佳。 應用框架支援方面,執行時方案不僅支援純 wxml 微信小程式執行,還支援包括Flutter、Reactive Native、 uniapp等第三方框架整合的小程式。 宿主環境結合方面,小程式是基於App端實現的應用,其獲取系統(App)的許可權也會多於H5;目前小程式技術的發展已經趨於成熟,市面上小程式以執行時已經開始出現多智慧終端裝置的適配(基於Andriod系統的多終端螢幕適配)。


技術實戰:初創專案前端框架選型

目前我們團隊選擇了FinClip這樣一款,靈活性輕量較高的技術方案,並且透過官方IDE裡自帶的“小程式轉APP”功能將前期在微信上跑通的demo轉成了APP應用上架到了應用市場。目前還在實現PC端的適配。該技術應用的情況,後續再給大家做分享。



來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70021577/viewspace-2925644/,如需轉載,請註明出處,否則將追究法律責任。

相關文章