[Chatter] 程式設計的深度跟廣度

[Chatter] : 程式設計的深度跟廣度。


昨天跟朋友哈拉打屁,引發了一些想法 :「程式設計有分深度跟廣度」。
程式設計的深度,指的是技術背後的精神與實現。
程式設計的廣度,指的是技術工具的使用與應用。


當一個新技術發表,兩個不同角度的人一起去看。
最終的結果都是能掌握,但在的路途上卻是分歧的。
以ASP.NET MVC來說 :
從深度去看,看到的是。MVC的精神是甚麼、微軟怎麼實現MVC架構。
從廣度去看,看到的是。ASP.NET MVC有哪些方法可以用、在專案上怎麼應用。


這又延伸出了一個問題,一項技術該學到甚麼程度。
從深度去看,學習掌握。深入了解核心精神、怎麼實現的手法。就算懂了,剩下的實做時候再去翻資料。
從廣度去看,學習掌握。深入了解技術提供的每個物件及方法、有哪些參數可以設定。就算懂了,實做時候馬上就可以上手。


深度及廣度,這兩個方向其實殊途同歸。
從深度下手,實做的時候,還是要回歸到廣度的學習。
從廣度下手,實做的時候,就會去體會到技術的深度。


程式設計還是發展中的產業,要學的技術有太多太多。
越來越能體會,「學無止境」這句話。

期許自己
能以更簡潔的文字與程式碼,傳達出程式設計背後的精神。
真正做到「以形寫神」的境界。