欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

真實(shí)測評(píng):用uni-app開發(fā)小程序,比原生開發(fā)好在哪里?

2022-08-23    分類: App開發(fā)

小程序原生開發(fā)有不少槽點(diǎn):

原生wxml開發(fā)對Node、預(yù)編譯器、webpack支持不好,影響開發(fā)效率和工程構(gòu)建流程。所以大公司都會(huì)用框架開發(fā)

微信定義的這套語法,wxml、wxs,以及wx:if等語法,私有化太強(qiáng)。不如正經(jīng)學(xué)vue,學(xué)會(huì)了全端通用,而不是只為微信小程序

vue生態(tài)里有太多周邊工具,可以提高開發(fā)效率,比如ide、校驗(yàn)器、三方庫。。。而微信的開發(fā)者工具和專業(yè)編輯器相比實(shí)在不好用,個(gè)性化設(shè)置也非常少

作為前端工程師,除了微信小程序,還要開發(fā)web、其他小程序甚至App,人們不喜歡來回切換開發(fā)工具和變更語法思考方式。

uni-app自然可以解決這些問題,但開發(fā)者又經(jīng)常有些顧慮:

怕使用uni-app后,微信小程序里有的功能無法實(shí)現(xiàn),受制于uni-app的更新

怕性能不如原生WXML

怕框架不成熟,跳到坑里

擔(dān)心社區(qū)生態(tài)不完善

本文從開發(fā)者關(guān)心的功能、性能、學(xué)習(xí)門檻、開發(fā)體驗(yàn)、生態(tài)、可擴(kuò)展性等維度,逐個(gè)分析對比,給予說明。

1、功能實(shí)現(xiàn)

開發(fā)者最常問的問題:如果小程序迭代升級(jí),新增了一批API,但uni-app框架未及時(shí)更新,該怎么辦?

其實(shí)這是誤解,uni-app不限制底層API 調(diào)用;在小程序端,uni-app支持直接編寫微信原生代碼。

類比傳統(tǒng)web開發(fā),如果vue、react等框架的使用,造成開發(fā)者無法操作瀏覽器提供的所有api,那這樣的框架肯定是不成熟的。小程序開發(fā)也一樣,uni-app框架中,同樣可調(diào)用微信提供的所有原生代碼。

故如果存在某些API(平臺(tái)特有或新增API),uni-app尚未封裝,開發(fā)者可直接在uni-app中編寫微信原生API,即wx.開頭的各種API。

舉個(gè)例子,目前uni-app雖然尚未封裝跨平臺(tái)的廣告(ad)組件,但開發(fā)者在小程序端依然可以使用微信組件來展現(xiàn)廣告,代碼示例如下:

包括微信小程序自定義組件、WXS、云開發(fā)這些復(fù)雜用法,在uni-app里一樣全面支持。

所以,結(jié)論是:使用uni-app框架開發(fā),在功能上和原生小程序開發(fā)沒有區(qū)別,不會(huì)有任何限制。

2、性能體驗(yàn)

開發(fā)者常問的第二個(gè)問題:三方框架,內(nèi)部大多做了層層封裝,這些封裝是否會(huì)增加運(yùn)行負(fù)載,導(dǎo)致性能下降?

同樣是多慮了,uni-app不會(huì)導(dǎo)致性能下載,甚至對很多環(huán)節(jié)做了自動(dòng)優(yōu)化,很多場景下性能體驗(yàn)比微信原生開發(fā)更好。

類似使用vue.js開發(fā)web,不但不會(huì)造成性能比原生js差,反而由于虛擬dom和差量更新技術(shù)的運(yùn)用,在大多數(shù)場景下,比開發(fā)者手動(dòng)寫代碼操作dom的性能還好。

小程序中需要頻繁的寫setData代碼來更新數(shù)據(jù),這里很重要的就是差量數(shù)據(jù)更新。如果不做差量,代碼性能不好,如果每處邏輯都判斷差量數(shù)據(jù)更新,那代碼寫起來太麻煩了。

使用uni-app,底層自動(dòng)差量數(shù)據(jù)更新,簡單而高性能。

我們從優(yōu)化理論、實(shí)測數(shù)據(jù)兩個(gè)維度來仔細(xì)說明。

2.1、理論:框架優(yōu)化方案

為提高性能體驗(yàn),小程序從架構(gòu)設(shè)計(jì)層面做了很多工作:

邏輯層、視圖層分離,避免JS運(yùn)算阻塞視圖渲染

單獨(dú)定義組件標(biāo)簽(wxml),減少DOM復(fù)雜度

精簡樣式(wxss),提升渲染性能

復(fù)雜組件原生化(video/map等),解決web組件的功能/體驗(yàn)缺失

通過這些規(guī)范約束,大幅提升了小程序的整體性能體驗(yàn),但依然存在不少性能坑點(diǎn),其中以setData最為頻繁普遍。

這里引用微信官方的描述,簡單介紹一下setData背后的工作原理:

小程序的視圖層目前使用 WebView 作為渲染載體,而邏輯層是由獨(dú)立的 JavascriptCore 作為運(yùn)行環(huán)境。在架構(gòu)上,WebView 和 JavascriptCore 都是獨(dú)立的模塊,并不具備數(shù)據(jù)直接共享的通道。當(dāng)前,視圖層和邏輯層的數(shù)據(jù)傳輸,實(shí)際上通過兩邊提供的 evaluateJavascript 所實(shí)現(xiàn)。

為簡化開發(fā),微信將evaluateJavascript調(diào)用封裝成了setData JS方法,實(shí)現(xiàn)視圖層和邏輯層的數(shù)據(jù)傳輸,數(shù)據(jù)流示意圖如下:

名稱欄目:真實(shí)測評(píng):用uni-app開發(fā)小程序,比原生開發(fā)好在哪里?
文章路徑:http://www.aaarwkj.com/news48/192598.html

網(wǎng)站建設(shè)、網(wǎng)絡(luò)推廣公司-創(chuàng)新互聯(lián),是專注品牌與效果的網(wǎng)站制作,網(wǎng)絡(luò)營銷seo公司;服務(wù)項(xiàng)目有App開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

營銷型網(wǎng)站建設(shè)
亚洲一区在线观看蜜臀| 野花日本免费高清完整| 日韩成人三级一区二区| av大全网站免费一区二区| 夜夜操狠狠操天天摸| 日韩精品欧美精品视频一区| 欧美三级高清视频在线播放| 亚洲不卡高清一区二区三区| 粉嫩美女精品一区二区| 国产极品美女在线观看网站| 熟女亚洲一区精品久久| 我的农村中年激情熟妇| 亚洲欧洲日韩另类在线| 美日韩黄色大片免费看| jvid视频在线观看免费| 国产精品久久中文字幕网| 密臀av一区二区三区| 中出亚洲精品日韩在线视频| 国产精品国产不卡在线| 激情图区亚洲一区二区| 亚洲精品日韩一区二区| 色哟哟网站在线观看入口| 亚洲少妇插进去综合网| av在线手机中文字幕| 欧美看黄网站在线观看| 亚洲综合久久精品少妇av| 午夜神马福利激情视频| 黑人巨大亚洲一区二区久| av成人资源一区久久| 亚洲日本韩国视频久久精品| 国产成人激情自拍视频在线观看 | 国产精品久久久天美传媒| 一区二区三区人妻av| 亚洲国际天堂av在线| 日韩夫妻精品熟妇人妻一区| 国产女同一区二区三区久久| 国产熟女高潮一区二区| 五月天丁香婷婷一区二区| 有码精品视频在线观看| 加勒比在线观看欧美一区| 最新日本人妻中文字幕|