贊助商連結

十年磨一劍

來自 iThome 的文章 十年磨一劍,開發功力需要實戰累積

從接觸程式設計到現在也有五年的時間,每次都自感功力不足,殊不知十年才有小成,你五年算什麼。

許多程式語言具備了易懂難精的本質。程式人或許可以在相對短的時間內瞭解、學會該語言的主要語法,並且讀懂典型的程式碼,但這不代表已經確切地體會、掌握了該語言的核心及精髓。

這句話讓我想到以前老師說,程式設計就像看 Cookbook 一樣,看一看就會寫的,其實也沒錯,只要掌握基本的程式邏輯,熟悉一下語法,很快就可以上手了,但是要到出神入化,可就不是那麼容易。

不論你是在學校中修讀程式設計及電腦科學課程,或者是憑藉著書籍或課程自修入門,在本質上程式設計是一種全然需要在實戰中累積經驗和技巧的功夫,閱讀(甚 至是少量且走馬看花般的閱讀)以及課程,不過只是踏進這個領域的敲門磚,書本中及課程上所告訴你的,都必須透過一次又一次的實作,才能不斷地從中有所體會。

我非常能夠體會,實戰來帶來的學習,遠比每天高空嘴炮說要寫什麼網站,做什麼系統來的有用。其實回頭想想,每次功力的躍進,都是在實做之中。

大量的程式碼撰寫實作,就像是蹲馬步的功夫,有時看起來很單調、枯燥,甚至沒有什麼學問在裡頭。每個人都討厭反覆無聊的動作,但馬步蹲久了,下盤自然穩固了,也會更明白使力出力的法門。而這些都不是單靠老師點撥提示,或自修讀書就能夠輕易體會的。

其他還有很多地方就不節錄的,這篇文章雖然是寫程式設計,但其實其他領域不也是一樣嗎?唯有不斷的蹲馬步才有後來的武學大師。