為您解碼網(wǎng)站建設(shè)的點(diǎn)點(diǎn)滴滴
發(fā)表日期:2018-06 文章編輯:小燈 瀏覽次數(shù):3008
2018年6月21日Google發(fā)布Flutter首個(gè)release預(yù)覽版,我個(gè)人認(rèn)為Flutter將可以代替絕大多數(shù)Native開(kāi)發(fā),F(xiàn)lutter還可進(jìn)行web端開(kāi)發(fā),說(shuō)不定以后還可以整合整個(gè)前端框架,RN也有可能將不復(fù)存在。
Flutter的官方開(kāi)發(fā)語(yǔ)言為Dart,這個(gè)語(yǔ)言也是Google出品的一個(gè)語(yǔ)言,至今為止,Dart最火的項(xiàng)目就是Flutter,猶如是Flutter量身訂造的一般。不過(guò)看Dart的官網(wǎng)介紹,Dart的目標(biāo)是致力于客戶(hù)端開(kāi)發(fā)。
那么,為什么要學(xué)習(xí)Flutter呢?Flutter最NB之處在于,同一套代碼可以在Android端與iOS端同時(shí)運(yùn)行,并且Flutter的編譯器支持熱加載(hot reload),就是說(shuō)改完代碼,不用重新編譯,直接command + s save一下代碼編譯器或者編輯器繼承的Flutter插件會(huì)直接自動(dòng)差異化編譯熱加載到開(kāi)發(fā)機(jī)或者模擬器上。這種開(kāi)發(fā)效率絕對(duì)高過(guò)現(xiàn)在市面上所有的“開(kāi)源的”熱加載插件。我也是親身體驗(yàn)了一下Demo,果然很快,編譯并加載的時(shí)間只有800多毫秒,也有可能是改動(dòng)很少的緣故才效率很高。
其實(shí)市面上已經(jīng)有很多可以將Android、iOS一套代碼兩端同時(shí)運(yùn)行的框架了,那么這個(gè)框架與其他的區(qū)別又是什么呢?
現(xiàn)階段,主要有兩大分支RN與Hybrid,他們應(yīng)該都是基于jsbridge與Native交互的,并且都要依賴(lài)于原生的WebView,如果要想做到一套代碼Android、iOS同樣的效果的話(huà),需要做大量的重構(gòu)(我們公司基礎(chǔ)部門(mén)的同事在RN宣講時(shí)這么說(shuō)的)其實(shí)我說(shuō)的這些都是廢話(huà),來(lái)看看Flutter是如何解釋的吧
關(guān)于Flutter的更多好處,請(qǐng)看Flutter宣講PPT
其實(shí)我覺(jué)得除了他所提到的這些點(diǎn),我覺(jué)得還在環(huán)境配置方面也有一些不同,RN的話(huà)還需要適配RN的版本,但是Flutter的話(huà),提供的感覺(jué)更像一個(gè)編譯插件,希望以后版本不要像RN一樣變得那么麻煩。
隨著iOS和Android同一套代碼可以?xún)啥送瑫r(shí)運(yùn)行這樣強(qiáng)大的功能出世,并且與RN或者小程序框架完全不同的架構(gòu)與體驗(yàn),我相信他之后會(huì)將整個(gè)前端(Android、iOS、H5)統(tǒng)一,便利開(kāi)發(fā)者的學(xué)習(xí)于開(kāi)發(fā)效率。這是我個(gè)人的展望啦。
喜歡的小伙伴可以關(guān)注我的公眾號(hào)AllAboutCoding