從13年百度率先提出輕應(yīng)用的概念以來,支付寶,微信等好多大流量App都借助自己的平臺(tái),推出了小程序。小程序的優(yōu)勢(shì)很明顯:輕量、無需安裝、隨用隨走、性能又可以媲美原生的應(yīng)用,更重要的是可以充分發(fā)揮各自平臺(tái)的優(yōu)勢(shì),帶來更精彩、更豐富的用戶體驗(yàn)。
而開發(fā)小程序,就不得不提JavaScript與Node.js。
JavaScript其實(shí)跟Java也沒什么關(guān)系,它的官方名稱為ECMAScript,是一種解釋性的腳本語言,可以嵌入HTML,然后在瀏覽器中運(yùn)行。HTML大家應(yīng)該都知道,是一個(gè)網(wǎng)頁的描述文件,它是靜態(tài)的,而JavaScript能夠?yàn)檫@些靜態(tài)的頁面添加動(dòng)態(tài)內(nèi)容,所以在前端開發(fā)中必不可少。
早期的JavaScript之所以流行,是因?yàn)槠涔δ軓?qiáng)大,在不需要服務(wù)器的情況下就能在客戶端大有建樹,使得瀏覽器中的網(wǎng)頁不再呆板死寂!但也正因?yàn)镴avaScript的動(dòng)態(tài)性,網(wǎng)站的安全性能無法得到有效的保障,所以也詬病不少!
2009年,隨著封裝了Chrome V8引擎的Node.js發(fā)布,使得JavaScript又獲得了新生,和PHP,Python等語言一樣,成了服務(wù)器端開發(fā)的利器。時(shí)至今日,各種基于JavaScript的框架層出不窮,不僅在前端開發(fā)中風(fēng)采不減,而且在混合開發(fā)(Hybrid)領(lǐng)域大放異彩,涌現(xiàn)了React Native,Angular UI等優(yōu)秀框架。
小程序開發(fā),大家為什么不約而同的選擇了JavaScript?
首先,與它與生俱來的優(yōu)勢(shì)是分不開的,即跨平臺(tái)、面向?qū)ο?、事件?qū)動(dòng)等。
其次,就是Node.js的帶來強(qiáng)大的服務(wù)器環(huán)境支持。Node.js的單線程、異步I/O、事件驅(qū)動(dòng)等特點(diǎn)可以解決應(yīng)用的高并發(fā),加上強(qiáng)大的V8引擎來解釋JavaScript,正好適合小程序的業(yè)務(wù)特點(diǎn)。
所以,在平臺(tái)端搭建小巧的Node.js服務(wù)器,然后用JavaScript開發(fā)小程序,就成了現(xiàn)有平臺(tái)們的首選。
一是用來描述頁面信息的XML文件(相當(dāng)于Web中的HTML文件);
二是用來美化頁面的XCSS文件(CSS樣式文件,X在不同平臺(tái)可能有不一樣的字母);
三是用來處理事件的JavaScript文件(標(biāo)準(zhǔn)的JS文件);
四是用來聲明配置(路徑、信息等)的JSON文件(或其它的用來描述配置信息的文件,但以JSON居多,畢竟大家都熟悉,和JavaScript最般配)。
其實(shí)小游戲和小程序的框架是類似的,只不過小程序中可能不需要太多的頁面,所以有些會(huì)省去頁面文件和CSS文件,主要是基于H5的Canvas(同時(shí)支持2D和3D WebGL)來開發(fā)。
很多開發(fā)過H5應(yīng)用的朋友也會(huì)納悶,為什么平臺(tái)的小程序不直接用H5,而是都自立門戶,定義自己的規(guī)范呢?
首先,是各自平臺(tái)的展現(xiàn)形式不一樣,即所用的控件有很大的不同,H5并不能在不同的平臺(tái)更好的適配,反而會(huì)降低用戶體驗(yàn)滿意度。
其次,每個(gè)平臺(tái)都有自己的特有的API體系,H5開發(fā)也不能做到適配所有。
總之,平臺(tái)的差異性,資源的差異性,決定了規(guī)范的差異性,與其適配折中,不如自定規(guī)矩,然后發(fā)揮更大的優(yōu)勢(shì)!
今日頭條的小程序一直在秘密的進(jìn)行著。這兩天有點(diǎn)空閑,看了看API,跟其它平臺(tái)相比,并沒有特別的不同。
頭條小程序充分結(jié)合了其場(chǎng)景:大流量入口(搜索、微頭條、我的頁面)、內(nèi)容匹配(個(gè)人首頁、文章詳情頁、小視頻詳情頁)、廣告投放(廣告、頻道、錢包)等。
但是在數(shù)據(jù)存儲(chǔ)、文件存儲(chǔ)、云端開發(fā)等環(huán)節(jié)還相對(duì)薄弱,畢竟頭條的云端產(chǎn)品還不曾露面(不知道會(huì)不會(huì)做?),由于其還沒有正式上線,在內(nèi)測(cè)版體驗(yàn)還算不錯(cuò),值得期待!
小程序依托平臺(tái)的魅力,已經(jīng)展現(xiàn)了其特殊的優(yōu)勢(shì)。如何與自家平臺(tái)的特色相關(guān)聯(lián),平臺(tái)也是想盡了方法,用盡了策略。
現(xiàn)階段,大家對(duì)小程序的接受還是有限,大家最擔(dān)心的是小程序帶來的平臺(tái)臃腫和混亂。
不管擔(dān)憂也罷,不習(xí)慣也罷,小程序都會(huì)成為一種發(fā)展趨勢(shì)。借助云計(jì)算和5G的發(fā)展,小程序一定會(huì)帶來突破性的發(fā)展。