愛伊米

程式設計真的很難嗎?為什麼會認為學程式設計難?

對每一個決心學習程式設計的程式設計師來說,你的學習歷程可能是這樣:如同一片樹葉,開始被各種建議拽著走,直到學完了每一個你能想象到的課程。

但會有很多的學生覺得程式設計很難?其實學習程式設計是很有趣很好玩很實用並很有成就感的一件事!

程式設計真的很難嗎?為什麼會認為學程式設計難?

臺灣知名技術專家蔡學鏞先生寫了一本《程式設計ING》,給出了一張圖:

程式設計真的很難嗎?為什麼會認為學程式設計難?

這張圖道出一個人們學習程式設計會覺得難的問題關鍵——學習過程中的“正向”興趣迴圈是否成功地建立。

強烈的興趣與不斷獲得的成就感是整個學習過程的“引擎”,它為學生完成整個學習任務提供源源不斷的強大動力,有無數的事實支援這個觀點。

而傳統的教學觀點認為,本科的主要教育目標之一是為學生在本專業領域未來的發展“打下紮實的理論與實踐基礎”,所以從一開始就要“嚴格要求”、“科學訓練”。

程式設計真的很難嗎?為什麼會認為學程式設計難?

這個觀點不能說錯,但是,我們的計算機教育,尤其是針對初學者的教育,首要的任務應該是引起學生的興趣,興趣是最好的老師大家應該都聽過把,學習沒有興趣,一切免談。

而現在之所以很多大學生覺得程式設計難,其主要原因就是現有的計算機教學方式從一開始就給了這些學生“痛苦”的程式設計體驗,並且在後期枯燥的專業課程學習中不斷得到強化,最終使很多大學生對程式設計敬而遠之或畏之如虎。

程式設計真的很難嗎?為什麼會認為學程式設計難?

下面我將會介紹在學習過程中會面臨的獨特挑戰,這是每個階段的核心內容:

學習蜜月期:這是一個充滿喜悅的、非常容易取得成功的過程,藉助精雕細琢的資源,你會解決那些看似很難,但全是可以攻破的問題。你會掌握基本的語法結構,對於取得的成就很開心。

迷霧懸崖:這是一個痛苦的自我實現的過程,比蜜月期難過得多,你會覺得憑自己的力量似乎什麼也做不了。你的首要挑戰是不斷地除錯,同時你還不太知道該怎麼問正確的問題,來找到一種可以積聚能量的辦法。

絕望迷宮:這是一段很長又很孤獨的旅程。在無盡的迷宮裡,沒有一條清晰的道路,每一個方向似乎都是正確的。你總是繞圈圈,對於穿過迷宮所需的資源如飢似渴。

令人興奮的上升期:終於,你找到了一條正確的路,對於如何構建應用軟體有了自己的理解。但是你的程式碼仍然像是地窖倉庫,脆弱得像紙牌屋。

程式設計真的很難嗎?為什麼會認為學程式設計難?

透過完成上述工作並順利度過快速成長期的關鍵是獲得反饋。那些完全依靠自學的學生或許富有成效,但卻缺乏專業級別的那種清晰的、模組化的、易維護的程式碼寫作能力。

你需要的是其它人一起質疑你的假設、提出尖銳的後續問題,並迫使你去解決這些漏洞。

那麼,你能做到嗎?

前路漫漫,但你並不孤單。祝大家好運!

*版權宣告:圖文素材來源於公開網路資源,如有侵權,請聯絡我刪除!!