開發(fā)語言上小程序與傳統(tǒng)的網(wǎng)頁差別不大:是使用JavaScript 腳本語言編寫邏輯代碼、使用類似于HTML的WXML的語法形式來描述頁面的結(jié)構(gòu)、使用類似于CSS的WXSS來描述樣式,但是由于小程序渲染和邏輯分離的運(yùn)行機(jī)制與傳統(tǒng)的網(wǎng)頁存在差異,所以無法使用傳統(tǒng)的網(wǎng)頁的開發(fā)調(diào)試工具,因此我們推出了小程序開發(fā)生態(tài)開發(fā)工具——微信開發(fā)者工具。開發(fā)者可以借助微信開發(fā)者工具完成小程序的代碼開發(fā)、編譯運(yùn)行、界面和邏輯調(diào)試、真機(jī)預(yù)覽和提交發(fā)布版本等功能。
小程序的主要開發(fā)語言是 JavaScript ,所以通常小程序的開發(fā)會被用來同web網(wǎng)頁開發(fā)來比較。
兩者有很大的相似性,對于前端開發(fā)者而言,從網(wǎng)頁開發(fā)遷移到小程序的開發(fā)成本并不高,但是二者還是有些許區(qū)別的。
web開發(fā)者需要面對的環(huán)境是各式各樣的瀏覽器,PC 端需要面對 IE、Chrome、QQ瀏覽器等,在移動(dòng)端需要面對Safari、Chrome以及 iOS、Android 系統(tǒng)中的各式 WebView 。而小程序開發(fā)過程中需要面對的是兩大操作系統(tǒng) iOS 和 Android 的微信客戶端,以及用于輔助開發(fā)的小程序開發(fā)者工具,小程序中三大運(yùn)行環(huán)境也是有所區(qū)別的。
web開發(fā)渲染線程和腳本線程是互斥的,這也是為什么長時(shí)間的腳本運(yùn)行會導(dǎo)致頁面失去響應(yīng),而在小程序中二者是分開的,分別運(yùn)行在不同的線程中。網(wǎng)頁開發(fā)者可以使用到各種瀏覽器暴露出來的 DOM API,進(jìn)行 DOM 選中和操作。而如上文所述,小程序的邏輯層和渲染層是分開的,邏輯層運(yùn)行在 JSCore 中,并沒有一個(gè)完整瀏覽器對象,因而缺少相關(guān)的DOM API和BOM API。這一區(qū)別導(dǎo)致了前端開發(fā)非常熟悉的一些庫,例如 jQuery、 Zepto 等,在小程序中是無法運(yùn)行的。
同時(shí) JSCore 的環(huán)境同 NodeJS 環(huán)境也是不盡相同,所以一些 NPM 的包在小程序中也是無法運(yùn)行的。
上海詠熠科技為您提供全方位微信小程序開發(fā)制作方案。
運(yùn)行環(huán)境邏輯層渲染層
iOSJavaScriptCoreWKWebView
安卓X5 JSCoreX5瀏覽器
小程序開發(fā)者工具NWJSChrome WebView
網(wǎng)頁開發(fā)者在開發(fā)網(wǎng)頁的時(shí)候,只需要使用到瀏覽器,并且搭配上一些輔助工具或者編輯器即可。小程序的開發(fā)則有所不同,需要經(jīng)過申請小程序帳號、安裝小程序開發(fā)者工具、配置項(xiàng)目等等過程方可完成。
上一篇:用什么編程語言來編寫微信小程序
下一篇:?申請小程序必須要申請公眾號嗎
TEL:15156887767 QQ:584511937
Copyright ? 2021 上海詠熠科技有限責(zé)任公司 All Rights Reserved. | 滬ICP備2022003714號-1 | XML地圖
公司地址:上海 浦東 川沙