微信小程序簡稱小程序,張小龍在微信公開課 Pro 上發佈的小程序正式上線,時間是2017年1月9日。關於小程序,張小龍在他的公開課中有過很詳細的說明,你們盡能夠到網上去搜,這裏再也不贅述,只說做者本身的理解。前端
微信小程序這個詞能夠分解爲「微信」和「小程序」兩部分。程序員
其中「微信」能夠理解爲「微信中的」,指的是小程序的執行環境;固然微信在提供執行環境的同時也延長了用戶使用微信的時間。小程序
「小程序」是說它首先是程序,而後具有輕便的特徵。小程序並不像其餘應用那樣,它不須要安裝,而是經過掃描二維碼等打開後直接執行;用完之後也不須要卸載。這就是所謂用完即走的原則。微信小程序
另外,微信不會提供相似於小程序商店的地方,須要小程序提供者本身經過二維碼,羣分享的手段來傳播,這就是所謂去中心化的形態。promise
微信朋友圈提供了好友之間溝通訊息的手段,訂閱號提供了面向粉絲推送信息的手段,而小程序則是提供了用戶經過本身的操做而與服務實現互動的手段。緩存
本課程的目標讀者羣是瞭解基本的 C/C++ 語法但對小程序開發徹底沒有經驗的程序員,所以在說明微信小程序的同時,對相關技術也將進行相應的介紹。經過這種方式,可以使讀者可以很是順利地學習,而無需處處尋找資料致使忘了學習微信小程序這個原本的目的。服務器
微信小程序推出一年多一點的時間,算是一個新事物,可是利用的技術卻都是已經存在的技術。若是你稍加調查就會發現,不光是微信小程序,不少相似形態的應用都採用相似的架構:微信
使用 JSON 技術來表現應用的配置信息。包含應用的基本信息,頁面配置和路由,應用全體的信息等。
使用通過定製 CSS+XML 技術來實現視圖層的描述。畫面元素,例如列表、按鈕、文本框、選擇框等都經過 XML 語言來描述,聽從 XML 語法,對於頁面的共同風格,使用 CSS 進行定義。
使用 JavaScript 語言來實現邏輯層結構。包括用戶操做的處理,系統 API 的調用等。
架構在視圖層和邏輯層之間提供數據和事件傳輸功能,從而儘可能減小難度。因爲相似應有都屬於輕應用,因此提供的功能都比較單一。
具體的語法,用途等將會在使用的時候詳細介紹,這裏只提一下相關技術的基本狀況,瞭解便可。架構
換一種說法就是:並不須要另外本身調查,跟着本課程走下去就好。
app
第1章 申請appkey(含有微信小程序從基礎到進階課程全設計原稿含PSD源文件)
第2章 準備工做
第3章 小程序的基礎知識與新特性
講解小程序的一些必需要掌握的基礎知識,如文件類型、項目結構、配置文件等。部分以前老課程中沒有涉及的重要新特性也會在本章節說起。
第4章 flex佈局
咱們將在本章中詳細學習flex佈局的基礎知識,爲在項目中靈活應用flex佈局打下堅實的基礎。
第5章 小程序基礎知識與初識小程序組件
本章咱們將學習全局樣式、相對/絕對路徑、尺寸單位等小程序基礎知識。同時,咱們將初步介紹小程序自定義組件。
第6章 組件數據、事件與屬性
本章咱們將深刻學習組件的開放性與封閉性以及組件封裝的原則。
第7章 訪問API數據與ES6在小程序中的應用
本章,咱們將從一個簡單wx.request開始,講解同步與異步的區別,promise的意義,ES6中箭頭函數、class、const、module、export與import在小程序中的巧妙應用。同時,咱們也將初步探討封裝代碼的必要性。
第8章 流行頁面編碼與組件的細節知識
本章,咱們將逐步編寫流行頁面中剩餘的電影組件、期刊組件、導航組件,並進一步的完善喜歡組件。同時,咱們將在本章節進一步的講解setData的真正意義、組件封裝粒度、系統事件與自定義事件、properties和data的區別等重要的知識。本章內容很是豐富,加油吧。
第9章 Behavior行爲與加入緩存系統優化流行頁面
即便服務器返回數據的速度再快,咱們依然須要在頁面中加入緩存系統來優化用戶體驗。組件是一種複用的邏輯,但多個組件間的共同JS代碼又改如何複用?使用Behaviors行爲將解決這個問題。同時,咱們也將談談Behavior和多繼承的思想。
第10章 新版Music組件、組件通訊與wxss樣式複用
本章,咱們將進一步優化緩存帶來的附加問題。緩存的使用絕對不只僅是setStorage和getStorage這麼簡單,緩存的加入將帶來一些新的問題,這些問題的處理細節體現了一個前端程序員的成熟度。同時,咱們還將學習ES6擴展運算符和模板字符串在小程序中的應用、wxss樣式的複用、讓自定義組件支持hidden屬性與組件通訊。
第11章 Promise正確用法與函數簽名設計技巧
第12章 組件高級應用
本章咱們將探討組件的slot插槽和外部樣式類。組件最難平衡的是內置默認樣式和用戶自定義樣式的需求,咱們將一塊兒來探討一個不錯的解決方案。咱們將看到,小程序其實不只僅提供了屬性、還提供了wxml的標籤的傳遞與樣式的傳遞。
第13章 小程序wxs的應用
wxs是微信爲小程序定製的一套腳本語言,同JS相似,但又有不少不一樣。不少同窗認爲wxs沒有什麼用,但實際上是頗有用的。好比開源組件中就能夠提供一套wxs編寫的filter過濾器。本章,咱們未來深刻探討一下wxs的應用場景。
第14章 搜索與高階組件
搜索基本上是任何一個產品都不會缺乏的功能。可是一個好的搜索組件,細節是很是多的。本章,咱們將完成歷史搜索、熱門搜索等諸多商業級嚴謹搜索功能。
第15章 代碼重構與行爲抽象
本章咱們將重構搜索代碼,將分頁邏輯提取成一個「行爲」。之後,當咱們遇到任何一個須要使用分頁邏輯的組件時均可以服用分頁Behavior。此外,本章有大量的細節須要咱們完善。好比如何對搜索加「鎖」,如何判斷是否還有更多數據等。
第16章 高級知識與應用
本章,咱們將試着學習和應用一些比較抽象的知識。這些知識並非必備的,但好的程序員必須學會這種思惟和編碼習慣。咱們將在本章進一步優化和重構代碼,學習新版微信受權機制、自定義小程序button組件、將內置的小程序API轉換成Promise、複用整個Page等知識。
獲取該小程序開發項目視頻教程和資料,請私信。
微信小程序雖然是新事物,但學習方法卻不是新方法。
咱們的方法技巧是:首先生產一個最簡單的小程序實例,經過這個實例介紹微信小程序的構造和想法,這算是學習這個活動中「學」的部分。而後擴展這些知識點,經過開發一個簡單的小程序的過程來運用這些知識點,這算是「習」的過程。