我是如何學習小程式的

GavinHsueh發表於2018-06-19

前段時間和大家一起分享了一篇關於學習方法的內容《大牛與搬運工的差距——學習方法的力量》。我們將學習過程分成八步,並借鑑了敏捷開發的迭代思想,以達到自我迭代學習的效果。行勝於言,理論結合實踐才是王道,所以本文我將基於前面的學習方法,分享我是如何學習微信小程式的。

關於小程式

小程式是繼訂閱號、服務號、企業號後,16年騰訊新推出的又一種開發能力。小程式無需下載安裝,可以在微信內便捷地獲取和傳播,可謂是一款“即掃即用,用完即扔”的便捷應用,同時具有近似APP般的出色使用體驗。
坦白講,此刻和大家分享小程式學習,已經有點後知後覺的意味了。小程式剛出來時,和很多人一樣,我其實也是持有懷疑、觀望的態度,即便到目前為止,我接觸的小程式恐怕就是上次玩的那個“跳一跳”了。
最近也是因為想在我們的一款建站系統的開源專案中關聯小程式,才決定學習瞭解下小程式,接下來我們就馬上開啟小程式的學習之旅。

1.確立目標

我學習小程式的目標很明確,總的來說就兩個:
1.學習小程式相關技術,能獨立開發製作一款小程式。
2.將小程式與我們的開源專案(蟬知建站系統)關聯打通。

2.拆分任務

我們通過逆向分解,將每個目標拆分成具體的可執行任務。這個過程其實就是將目標細分整理成具體的小目標或問題,然後將其關聯到一個個可執行的任務,目的是完成目標或解決問題。
完成我的兩個目標,需要具體學習哪些知識,完成哪些事項呢?第一個目標需要學習小程式的程式碼框架結構、執行機制、元件用法、小程式後臺操作以及小程式開發工具的使用等。第二個目標則需要學習小程式的API、外掛、相關介面呼叫,以及蟬知建站系統這邊的微信模組程式碼。

梳理之後,就變成了一個個需要完成的具體任務。這裡我藉助一款協同辦公工具的待辦任務管理功能,將需要做的任務都羅列出來,方便後面執行跟蹤。

3.蒐集知識資源

學習過程中必然少不了各種學習資料,在蒐集知識資源時主要側重三方面:書籍、官方文件和網路技術文章。
我首先找的就是微信的官方文件——《小程式開發文件》,內容涵蓋了快速入門的簡易教程、元件、框架、API、開發者工具等內容,既權威又全面。其次書籍我選的也是由騰訊官方微信架構師熊普江編寫的《小程式,巧應用:微信小程式開發實戰 第2版》。學習過程中以這兩份材料為主要資源,除此之外,還在CSDN、掘金、部落格園等IT技術門戶裡查閱一些小程式相關的“乾貨”。
對於知識資源的蒐集,還是要提醒大家注意一點,切勿做“收藏控”。很多朋友對於書籍、各種教程、網路文章等資源,購買了下載了收藏了,然後,就沒有然後了,最終真的淪落為“收藏品”。而我們真正要做的是要把知識“收藏”並沉澱到我們腦子裡。

4.分配自身資源

其實就是時間管理。我們時間、精力等各方面資源有限,所有的知識不可能平均分配有限資源。對於我們蒐集的知識資源,要分清主次,然後使用不同的時間管理策略進行學習。
前面梳理了一些需要執行的學習任務,並整理了大量的學習資源,這一步要做的就是將這些任務、資源結合自身的實際情況,合理規劃分配時間精力。每個人的情況不同,所以這一步因人而異,這裡我還是藉助工具的待辦功能,做一個具體可執行性的學習計劃。


5.勤學

學習效率與效果取決於執行力。之前文章介紹過學習過程中的一些方法論,這裡我簡要地介紹一下學習小程式時的大體過程。
a.快速泛讀
對於小程式的基本的程式碼框架結構、執行機制、後臺管理操作以及開發工具的使用這些內容,都是快速的過了一遍。熟悉核心概念與基本的操作流程,具體的細節問題在後面的使用操作時在深入研究。
b.深入解讀
根據小程式的MVVM開發模式,深入學習其檢視層與邏輯層相關知識,包括常用的函式、事件、元件、API等的使用。並結合開發工具實踐操作,通過做個demo案例來進一步瞭解這些知識點的運用。
c.問題攻讀
對於學習過程中遇到的問題,先查閱資料或谷歌來解決。比如小程式裡的WXML、WXSS與HTML、CSS還是有些區別的,包括JS的使用也有別於PC端的DOM操作機制。如果有難以解決的問題,可以先記下,或許後面會柳暗花明或找他人幫助。
這一步學習的正確姿勢是在實踐操作中發現問題,然後帶著問題找答案。

6.建立知識體系

不要以為這一步可有可無,建立知識體系有助於幫我們理清各個概念和知識點之間的關聯,逐漸形成系統的知識體系。基於前面的大量泛讀和深入解讀,我們可以逐步構建出一個知識體系。這裡我藉助xmind腦圖工具,整理了一下小程式的知識體系。

7.好問

基於前面問題攻讀後還有未解決的問題,就要求教他人獲取幫助了。提問也是一門藝術,這仍是一個學習交流的過程,而不是讓別人去解決原本你該解決的問題。
向別人提問求助時,要講問題的來龍去脈講清楚,如怎麼引起的,自己嘗試做了哪些操作等等。這些年在眾多技術交流社群和平臺,見過很多奇葩的提問方式,這裡列幾個,與大家共勉。
a.直拋結果型
直接甩出一張截圖或錯誤提醒,並附上一句:怎麼解決?怎麼破?跪求科普……
b.不懂就問型
不動腦,不動手,碰到問題就問。這種選手即便幫他解決了問題,他也學不到東西。
c.懶人型
與前者類似,但更滑稽可笑,看到這種問題我個人向來直接無視。比如“這個問題是這樣操作麼?”,“我這樣整對不對?”,“是點這裡麼?”……

8.分享複述

其實即便不提“費曼技巧”,我們很多人在學習時都會用到分享複述這個方法。無論是演講、錄視訊、還是像我此刻這樣寫文章,其實都是在向他人闡述自己對知識的理解和觀點,然後大家會給自己一些反饋,比如你的錯誤、問題,接著自己再回歸到知識裡完善補缺“漏洞”,如此迭代學習。

小結

我將自己學習小程式的過程分為八步:
1.確立目標:沒有目標的學習是不會有結果和效果的。
2.拆分任務:將目標分解成具體可執行的學習任務。
3.蒐集知識資源:查閱官方文件、購買書籍、蒐集網路乾貨文章。
4.分配自身資源:合理分配時間精力,制定學習計劃。
5.勤學:強大的執行力是學習的根本保障。
6.建立知識體系:將學習的知識在腦海裡建立系統模型。
7.好問:避免孤立學習,但好問也要會問。
8.分享複述:檢驗學習成果,提高學習效果的最好方法。

作者:GavinHsueh,專注專案管理、辦公自動化、網站建設等web應用開發領域。
我是如何學習小程式的

相關文章