這很騰訊!
問大家一個問題:做一個上次1024活動的小程序,需要花多少錢?
答案是0!
你可能在想:怎么可能?
服務(wù)器不要錢嗎?
數(shù)據(jù)庫不要錢嗎?
嘿嘿,還真不要錢!
打住!我可不是來推銷XX云服務(wù)器的,大家盡可以放心閱讀!
接下來跟大家介紹一下,如何從0開發(fā)一個小程序!
一、注冊小程序
第一步,進(jìn)入微信公眾平臺,點(diǎn)擊注冊按鈕,選擇小程序,注冊一個小程序賬號。

一路按照提示操作即可。
二、開發(fā)小程序
賬號注冊好了,就可以開始開發(fā)了。
不同于我們別的開發(fā),小程序開發(fā)需要使用微信專門的IDE:微信開發(fā)者工具。

新建一個項(xiàng)目,把第一步注冊生成的APPID等信息填入,就可以正式開始開發(fā)了。
小程序的開發(fā)非常簡單,和前端開發(fā)很像,尤其是熟悉VUE框架等同學(xué),上起手來應(yīng)該會非常輕松。
小程序以頁面為單位進(jìn)行管理,頁面的布局、樣式、數(shù)據(jù)和交互,分別在wxml、wxss、js中,和前端開發(fā)中的HTML+CSS+JS如出一轍,而且管理更加規(guī)范。

注意有一個問題:小程序是不能引用本地圖片的。
也就是說,你沒法把圖片文件放到工程目錄下,然后在代碼里面引用。
那怎么辦?程序界面需要用到的一些圖片資源怎么處理呢?
有兩個辦法。
一個是把圖片轉(zhuǎn)換成base64形式,比如這樣:

這個方法有個不好的地方就是圖片如果尺寸很大的話,轉(zhuǎn)換后的base64字符串會特別長,看起來很是別扭。
別扭倒也罷了,關(guān)鍵問題是微信對小程序程序打包后的大小是有限制的,這個辦法不能用多了,否則很容易就超出限制。
另外一個辦法就是使用云開發(fā)!
提到云,大家應(yīng)該不會陌生,很多個人、很多公司的業(yè)務(wù)都上了云,服務(wù)器、數(shù)據(jù)庫都是放在各種云上的。
而微信搞的這個云開發(fā),我只想雙擊666!在微信的開發(fā)生態(tài)中,用起來簡直不要太爽!
在開發(fā)工具上面點(diǎn)擊云開發(fā)按鈕,就能打開云開發(fā)界面:


云開發(fā)三大神器:
云存儲
云函數(shù)
云數(shù)據(jù)庫
下面逐一介紹下。
三、云存儲
回到前面那個問題:小程序里面想用圖片怎么辦?
云存儲來幫忙:直接把本地圖片拖到這里,上傳到云端,會給每一個文件分配一個文件ID。

然后,你就可以在代碼中使用它了:

怎么樣,是不是很方便?
這其實(shí)不算啥,真正方便的還在后面。
四、云函數(shù)
光有小程序端肯定不行,得要有個后端吧?
要后端,就得要個服務(wù)器吧?
有了服務(wù)器,還得要去申請域名,因?yàn)槲⑿挪辉试S直接使用IP訪問服務(wù)器。
申請了域名,還得要去弄個SSL證書,因?yàn)槲⑿疟仨氁笫褂肏TTPS訪問服務(wù)器。
就只是想要實(shí)現(xiàn)一個簡單的后端程序,就要去弄這一大堆東西,想到這頭都大了!

不用急,云函數(shù)一鍵搞定!
所謂云函數(shù),故名思議:運(yùn)行在云端的函數(shù)。
微信云開發(fā)提供了這樣的能力,你只需要提供一段代碼,至于這段代碼怎么部署、運(yùn)維等等一系列東西,你都不需要操心!

你需要做的就是去實(shí)現(xiàn)這個函數(shù),然后一鍵部署到云上運(yùn)行。
部署后還可以在工具中調(diào)用測試,也可以在小程序中調(diào)用:

所有的云函數(shù),都可以通過上面的工具統(tǒng)一管理,還可以本地調(diào)試和遠(yuǎn)程調(diào)試。

怎么樣,是不是很nice?
五、云數(shù)據(jù)庫
后端,必然是少不了跟數(shù)據(jù)庫打交道了。
傳統(tǒng)的后端開發(fā),一般都要自己管理服務(wù)器,然后在后端代碼中配置好連接信息,然后操作數(shù)據(jù)庫···
微信云開發(fā),不用這么麻煩,easy得不能再easy了!
后端建表:

云函數(shù)中讀取:

就是這么簡單直接,把接口封裝做到了極致!
六、費(fèi)用
好了,說了這么多好處,大家最關(guān)心的是價(jià)格了!
不得不說,騰訊這一次非常良心啊,居然提供了免費(fèi)的版本!!!

免費(fèi)版本中,有5GB存儲容量,每月2000下載次數(shù),1000上傳次數(shù)。10個云函數(shù),1000次調(diào)用。數(shù)據(jù)庫2GB。
這對于個人做一些簡單的小程序自己玩完全足夠了!
我開始想著免費(fèi)白嫖一波的,沒想到?jīng)]過多久參與答題的人就多起來,資源馬上就不夠用了,各種報(bào)錯就隨之而來,還收到了資源使用通知。

隨后我升級到了30元每月的套餐,云存儲200萬/每月下載數(shù),云函數(shù)20萬/每月訪問次數(shù),數(shù)據(jù)庫25萬/每天的讀取次數(shù),這才穩(wěn)住了局面!
最后插一個題外話,像微信云開發(fā)這樣的Serverless和FAAS開發(fā)方式,真的很方便,將開發(fā)門檻降到了最低,把應(yīng)用開發(fā)做到了像搭建積木一樣簡單,這樣確實(shí)提升生產(chǎn)力了,但對程序員學(xué)習(xí)技術(shù)真的好嗎?這是一個思考題,大家可以想想。
對了,上次的小程序大家先別著急刪除,后續(xù)還會有更多好玩的東西上線,希望大家多多支持~
