作者:Tong_T,來自授權(quán)地址 序言:微信之父張小龍說:“小程序是一種不需要下載安裝即可使用的應(yīng)用,它實(shí)現(xiàn)了應(yīng)用“觸手可及”的夢(mèng)想,用戶掃一掃或者搜一下即可打開應(yīng)用。也體現(xiàn)了“用完即走”的理念,用戶不關(guān)心是否安裝太多應(yīng)用的問題。應(yīng)用將無處不在,隨時(shí)隨地可用,但又無需安裝卸載。” 我個(gè)人覺得張小龍是一個(gè)十分有情懷的互聯(lián)網(wǎng)人士,2017年3月27日微信終于向個(gè)人開發(fā)者提供開發(fā)賬號(hào)和平臺(tái),對(duì)于計(jì)算機(jī)專業(yè)的我,也是在忍不住想體驗(yàn)一下這個(gè)未來將取代原生App的應(yīng)用(自己開發(fā)一段時(shí)間后才慢慢發(fā)現(xiàn),未來不會(huì)大面積取代,而是兩者有機(jī)結(jié)合,準(zhǔn)確點(diǎn)說:小程序是一種介于原生app、和web app的hybrid); 于是在慕課網(wǎng)上學(xué)習(xí)小程序的開發(fā),也跟著教程實(shí)戰(zhàn)開發(fā)了一個(gè)“文章閱讀器和電影信息”的項(xiàng)目,并取名《回憶與電影》,這個(gè)小程序目前只是體驗(yàn)版,也并不希望能上線,畢竟創(chuàng)意不是自己的,而是自己在學(xué)習(xí)過程中的認(rèn)識(shí)和理解,所以在博客中記錄從4月1日到4月10 日,這十天的開發(fā)過程和心得。未來規(guī)劃在一個(gè)月之內(nèi)開發(fā)一個(gè)自己創(chuàng)意的小程序上線玩玩。實(shí)戰(zhàn)項(xiàng)目就得有成果,在序言這塊先把效果圖放上來: 第一章:準(zhǔn)備工作一個(gè)軟件開發(fā)項(xiàng)目的開發(fā)第一步必然都是尋找平臺(tái),自然要尋找代碼編輯器(IDE),框架,代碼編寫語言,配置環(huán)境變量等等。 小程序也不例外,AppID也就是微信開發(fā)賬號(hào),網(wǎng)上也有很多關(guān)于此的申請(qǐng)步驟,再此不多贅述,其實(shí)把微信公共平臺(tái)(https://mp.weixin.qq.com/)中小程序這一欄里面的信息都填好后,跟著步驟一步步就可以完成。 接下來那就是IDE的下載,官方給的IDE就是“微信web開發(fā)者工具”,和webstorm,pycharm都差不多(這里我個(gè)人真的很高興,我們中國終于有自己封裝的開發(fā)工具,可能是我孤陋寡聞,在研究生學(xué)習(xí)階段中,用的編輯器都是國外的),雖然這個(gè)IDE名字很low,版本管理,還有使用情況的確值得改善,但是起碼有,而且用的是自己的框架封裝,作為中國人,真的很驕傲。(創(chuàng)建項(xiàng)目方法自行摸索) 慕課網(wǎng)上說:學(xué)習(xí)小程序,其實(shí)是在學(xué)習(xí)MINA框架。對(duì)的,MINA框架就像Jquery一樣為開發(fā)提供了豐富的組件和API。(具體框架中的各種API,組件和方法都在微信開發(fā)官方文檔中查詢) 第二章:項(xiàng)目構(gòu)架1、MINA和jquery不一樣,jquery是典型的操作DOM,獲取節(jié)點(diǎn)后實(shí)現(xiàn)js操作,而小程序從操作 DOM 轉(zhuǎn)為操作數(shù)據(jù),基于微信提供的一個(gè)過橋工具實(shí)現(xiàn)很多H5很難實(shí)現(xiàn)的功能,有點(diǎn)類似于hybrid開發(fā),不同于 hybrid開發(fā)的方式是:微信開放的接口更為嚴(yán)謹(jǐn),結(jié)構(gòu)必須采用他提供給我們的組件,外部的框架和插件都不能在這里使用上,讓開發(fā)者完全脫離操作 DOM,開發(fā)思想轉(zhuǎn)變很大。 2、小程序的實(shí)現(xiàn)機(jī)制 小程序的開發(fā)是基于MINA框架進(jìn)行開發(fā)的。微信通過封裝微信客戶端提供的文件系統(tǒng)、網(wǎng)絡(luò)通信、任務(wù)管理、數(shù)據(jù)安全等基礎(chǔ)功能,對(duì)上層提供了一套完整的Javascript Api,使得開發(fā)者能夠非常方便的使用到微信客戶端提供的各種基礎(chǔ)功能,快速構(gòu)建一個(gè)應(yīng)用。框架設(shè)計(jì)如下: 框架提供了自己的視圖層描述語言 WXML(類似Html)和 WXSS(類似CSS)基于 JavaScript 的邏輯層框架,并在視圖層與邏輯層之間通過單向數(shù)據(jù)綁定進(jìn)行數(shù)據(jù)傳輸,使開發(fā)者更加聚焦于數(shù)據(jù)與邏輯上。 3、開發(fā)此項(xiàng)目要有Html5和CSS3和javascript的基礎(chǔ)。 4、整個(gè)項(xiàng)目的項(xiàng)目骨架:
慕課網(wǎng)視頻可以通過參與這個(gè)活動(dòng)獲得:最新免費(fèi)視頻分享活動(dòng) |