1129浏覽量

小(xiǎo)程序與普通網頁開(kāi)發具體(tǐ)有何區别?

來源: 時間:2020-02-26

小(xiǎo)程序的主要開(kāi)發語言是 JavaScript ,是小(xiǎo)程序的開(kāi)發同普通的網頁開(kāi)發相比有很大(dà)的相似性。對于前端開(kāi)發者而言,從網頁開(kāi)發遷移到小(xiǎo)程序的開(kāi)發成本并不高,但是二者還是有些許區别的。


網頁開(kāi)發渲染線程和腳本線程是互斥的,這也是爲什麽長時間的腳本運行可能會導緻頁面失去(qù)響應,而在小(xiǎo)程序中(zhōng),二者是分(fēn)開(kāi)的,分(fēn)别運行在不同的線程中(zhōng)。網頁開(kāi)發者可以使用到各種浏覽器暴露出來的 DOM API,進行 DOM 選中(zhōng)和操作。而如上文所述,小(xiǎo)程序的邏輯層和渲染層是分(fēn)開(kāi)的,邏輯層運行在 JSCore 中(zhōng),并沒有一(yī)個完整浏覽器對象,因而缺少相關的DOM API和BOM API。這一(yī)區别導緻了前端開(kāi)發非常熟悉的一(yī)些庫,例如 jQuery、 Zepto 等,在小(xiǎo)程序中(zhōng)是無法運行的。同時 JSCore 的環境同 NodeJS 環境也是不盡相同,所以一(yī)些 NPM 的包在小(xiǎo)程序中(zhōng)也是無法運行的。


網頁開(kāi)發者需要面對的環境是各式各樣的浏覽器,PC 端需要面對 IE、Chrome、QQ浏覽器等,在移動端需要面對Safari、Chrome以及 iOS、Android 系統中(zhōng)的各式 WebView 。而小(xiǎo)程序開(kāi)發過程中(zhōng)需要面對的是兩大(dà)操作系統 iOS 和 Android 的微信客戶端,以及用于輔助開(kāi)發的小(xiǎo)程序開(kāi)發者工(gōng)具,小(xiǎo)程序中(zhōng)三大(dà)運行環境也是有所區别的,如表1-1所示。

表1-1 小(xiǎo)程序的運行環境

運行環境 邏輯層 渲染層
iOS JavaScriptCore WKWebView
安卓 V8 chromium定制内核
小(xiǎo)程序開(kāi)發者工(gōng)具 NWJS Chrome WebView

網頁開(kāi)發者在開(kāi)發網頁的時候,隻需要使用到浏覽器,并且搭配上一(yī)些輔助工(gōng)具或者編輯器即可。小(xiǎo)程序的開(kāi)發則有所不同,需要經過申請小(xiǎo)程序帳号、安裝小(xiǎo)程序開(kāi)發者工(gōng)具、配置項目等等過程方可完成。

聯系我(wǒ)們

一(yī)次需求提交或許正是成就一(yī)個出色産品的開(kāi)始。
歡迎填寫表格或發送合作郵件至: qczsky@126.com

大(dà)理青橙科技

電(diàn)話(huà):13988578755 13988578755

郵箱:qczsky@126.com

地址:大(dà)理市下(xià)關龍都春天10層