瀏覽單個文章
darkangel
Major Member
 
darkangel的大頭照
 

加入日期: Aug 2001
文章: 211
引用:
作者vxr
現在寫高階語言...
比方說C#, Java等..
對於資料結構與演算法並不是如此重要..
如果有現成的API, 直接都吃吃掉了...
更大的關注點在於軟體框架(架構)的維護和擴展...
近代程式設計, 國內應該是要非常強調這一部分...
尤其更"鬆散"的環境, 比方說Web開發...
軟體架構上的維護以及模式的學習真的是非常重要...

自己寫給自己爽就算了..
但是寫完後續有人接手維護...
良好的程式碼結構是非常重要的..
除非前一手蓄意留陷阱...

我在幫一些公家單位對ASP進行debug的時候..
有時候真的是非常的痛苦
1. 常常都是undocumented..
2. ASP採用義大利麵式寫法, 有時看起來很直接(直觀), 但是一堆邏輯參在一塊形成"邏輯泥沼"的時候, debug需要費工夫. 新型的ASP.NET MVC雖然回歸義大利麵式的存在, 不過這兩個差很多..
3. ASP古代的東西, 沒啥良好開發工具....
4. ...


以 application 的觀點來看的話,資料結構跟演算法似乎不太重要,但是如果以 system programming 的觀點來看,資料結構跟演算法很重要。
舉個簡單的例子,如果現在多工系統不是建構在演算法之上,你可能做個 copy file 就要卡在電腦前面了。
我同意現在都有 API 可以處理那些東西,我也認為能 call API 就 call API 別自己再發明輪子,但那不代表我們可以不用懂,如果寫個 sort 只知道 call API,這類人就是所謂的 script kid/code monkey,只會拿別人的解法來用,進步會是有限的。
至於程式開發、架構、維護、模式,這些東西也很重要,不過這類重心比較偏向方法論,從很久以前就有很多書在探討這方面的主題,例如二十年前微軟那本"如何撰寫零錯誤程式"、經典的"人月神話"、到最近十年的"人件"(Peopleware)、"編碼大全"(Code Complete)、"設計模式"(Design Pattern)等等都是在探討這方面的問題。
寫程式就像是練武,探討怎樣把程式寫得好,就是練功了。
不過說真的,在台灣寫程式,練武也練功,都是一場空~

__________________
滿招損 謙受益
舊 2013-05-23, 01:27 PM #18
回應時引用此文章
darkangel離線中