微信小程序本質(zhì)上是一套Hybrid開發(fā)框架,因此從技術(shù)上看,小程序?qū)儆谂f瓶裝新酒。但是依托于微信這個(gè)超級(jí)平臺(tái),在配合線下無數(shù)的輕量使用場景,小程序推出的時(shí)機(jī)恰到好處。下面一起簡單的來看一下。
從技術(shù)實(shí)現(xiàn)的角度看,小程序是融合原生和WEB特性的一套Hybrid混合開發(fā)框架。從原生能力上看,每個(gè)小程序都有原生的路由管理,每個(gè)頁面都能監(jiān)聽部分原生App的生命周期,同時(shí)暴露了特定的原生API。從WEB能力上看,小程序支持絕大部分CSS,支持Javascript的ES6語法,同時(shí)借鑒了現(xiàn)代WEB框架的響應(yīng)式開發(fā)理念,提供了類VUE的model和view綁定機(jī)制。
小程序生命周期
小程序生命周期包含兩個(gè)方面,一是小程序作為App,從被用戶打開到關(guān)閉,需要經(jīng)歷的生命周期。一是每個(gè)頁面從入棧到出棧,需要經(jīng)歷的生命周期。
小程序路由
路由看似簡單,卻是小程序最大的亮點(diǎn),因?yàn)樗穆酚墒窃?。也就是說每個(gè)小程序頁面都運(yùn)行在一個(gè)新的原生容器中,并且容器的切換是通過原生技術(shù)來實(shí)現(xiàn)(小程序的容器就是WebView)。Hybrid開發(fā)經(jīng)歷了這么多年,對(duì)于一些簡單頁面,用戶已經(jīng)很難分辨出這個(gè)頁面是原生頁面或者是WEB頁面,直到在頁面切換時(shí)露出馬腳。原生APP在路由切換時(shí)的流暢程度是WEB技術(shù)很難企及的。
小程序開發(fā)框架
小程序只支持模板引用,沒有提供組件開發(fā)支持。這樣的考慮不清楚是出于技術(shù)原因或是刻意限制小程序的規(guī)模。經(jīng)過仔細(xì)甄選,以下是推薦的兩款小程序開發(fā)框架:
wepy;labrador
這兩款框架都支持組件化開發(fā),wepy提供了非常接近VUE的開發(fā)語法,很適合以VUE作為開發(fā)框架的前端團(tuán)隊(duì)。labrador使用相對(duì)復(fù)雜一些,適合喜歡折騰探究實(shí)現(xiàn)原理的小伙伴,可以在網(wǎng)上找到許多相應(yīng)的小程序開發(fā)教程。
然而,對(duì)于團(tuán)隊(duì)而言,不建議直接以這兩款框架做為主力開發(fā)工具。原因之一,這些框架的更新進(jìn)度比不上小程序本身的更新進(jìn)度。原因之二,這些框架對(duì)小程序做了層次很深的二次封裝,在對(duì)小程序基本原理不理解的情況下,很難針對(duì)性的對(duì)自己的小程序APP做好相應(yīng)的優(yōu)化和升級(jí)。
所以,對(duì)于小程序的第三方開發(fā)框架,在對(duì)小程序開發(fā)有著足夠經(jīng)驗(yàn)的前提下,對(duì)于大型項(xiàng)目,可以考慮第三方框架,對(duì)于中小型項(xiàng)目,建議選擇小程序的原生開發(fā)方式。
以上就是對(duì)于微信小程序開發(fā)內(nèi)容的簡單介紹,希望對(duì)大家有所幫助。
上海茂鴻文化傳播有限公司版權(quán)所有 滬ICP備15047936號(hào)-2 如有圖片侵權(quán)請及時(shí)聯(lián)系本站,及時(shí)刪錯(cuò)或更改