[程式教育] 如何學習程式語言?比較3種不同的學習管道
前一篇我們提到,學習之前必須搞清楚「動機」與「目的」,再尋找對應的有效學習方法。但是對程式語言的初學者來說,還沒有理解基礎知識的情況,包括有哪些程式語言?分別應用在哪些領域?都還是矇矇懂懂的,很難有明確的動機與目的。
對國高中生來說,除了技職體系或五專之外,大部分的學生還未進入所謂專科教育。在沒有任何電腦科學的基礎知識下,不論你一開始是學習哪一種程式語言,我們可以把學習管道區分為以下三大類。
簡單來說,這三種學習管道是依照「自己學還是別人教」跟「單向學習還是雙向反饋」這兩個分辨點來加以區分,所以在學習曲線、花費的時間跟金錢成本上,當然也有所差異。
一、自主學習
自主學習,意即從零開始完全靠自己尋找相關資訊,一步步摸索前進。好處是因為全都自己來,學習過程比較深刻、容易記得住。但缺點是可能無法有系統性的學習,在未整理的龐大資訊量中,要花相對多的時間尋找正確的學習資源。
對於有自主學習經驗的學習者來說,在已經有明確的學習目標的前提下,只要尋找到適合自己的學習資源,那學習成效也是不錯的。但相對的,沒有明確目標,就容易在過程中發散,或甚至根本不知道如何開始,導致學習受挫。
缺點:不容易系統化學習
資源:書籍、線上教學影片
二、線上課程
線上課程,與上面提到的資源:線上教學影片,是有區別的。在這邊對「線上課程」的定義是一門「課程」,也就是課程內容是有「特定目標」的。在上完這樣的課程後,預期能獲得某方面的知識,然後帶著這些知識,繼續往下一個階段的課程前進。
相對於自主學習,透過線上課程,能較有系統化的學習。但這樣的課程,通常是事先錄製好的內容,學習者是單方面的吸收。一旦遇到有疑問的地方,只能再自行尋找相關答案,如果找不到解答,或者對其有疑慮,學習就容易到一半卡關。
缺點:單向吸收無法及時反饋
資源:免費或付費的線上課程平台
三、實體教學
實體教學,可以解決上述線上課程的缺點,這邊我定義為互動式教學,所以遠端或是面對面的實體教學,都屬於這一類。畢竟程式語言是一門需要手動操作的課程,有老師在旁即時反饋,絕對是最有效的學習方式。
實體課程的好處是,有疑問時可以快速獲取答案。不過當課程是團體形式時,在課程進度需配合多數人的程度而安排,也容易因整體程度差異影響學習成效。所以最佳的方式還是一對一教學,不但可以即時反饋,還能依照學習者的能力去彈性調整課程內容,以獲取最佳的成效。
優點:即時反饋、課程彈性
資源:教育組織、一對一家教
三種學習管道的比較
從上述文章,我們可以整理出下列表格,將這三種學習管道,依照不同面向,分別列出其差異處。提供給學習者,能依照自己的情況,選擇適當的管道,加以學習。
比較面向\學習管道 | 自主學習 | 線上課程 | 實體教學 |
---|---|---|---|
區分點 | 自己學 單向吸收 | 別人教 單向吸收 | 別人教 雙向互動 |
系統化 | 低 | 中 | 高 |
時間成本 | 高 | 中 | 低 |
費用成本 | 低 | 中 | 高 |
學習資源 | 書籍 網路 | 免費課程平台 付費課程平台 | 一對多教學 一對一家教 |
至於「二的九次方」這個網站,是我,「三寶爸工程師」,所建立的教學網站。我個人能提供「一對一家教」的實體教學,歡迎有興趣的家長或同學,透過我的臉書私訊聯繫我。網站的部分則會在接下來的文章中,依照上述不同的管道與類別,列出現有的學習資源,也歡迎有興趣的學習者,填寫下方表單訂閱電子報,才能收到最新文章的通知。