2007年10月8日 星期一

E30 萬物生息皆有其道,設計系統亦同

在早期的工作歲月裡,曾經我也認為達成系統要求的目標即可,但逐漸累積經驗後我慢慢感覺設計的東西要能彈性地應付需求的改變,才能夠正確實用在多種不同的地方。但是缺乏實際的方向時所能改進的地方其實是很有限的。

2004/07公司裡有講師講授OO-226 (B)的課程,那時第一次聽到這類的設計方式感覺似乎不錯,但是那時還無法理解。2005/10公司派我到恆逸上OO-226 (C)的課程,這次的課本編排得很好,所以聽起來也格外用心;只是聽完後依主管要求在公司講解一遍時,只能食古不化地依內容照念。

2006/01起公司開始研發自有產品,這時我大膽地與同組人員決定使用OOAD來做,不過當時原擬定四週的設計,光是Data Model就做了兩週半才定稿,與其他直接寫程式的組相比落後許多,但是在03/26那天初次感覺到OOAD的融會貫通。

2006/08接手了沒有一行程式是自己所寫的那個產品,除了首次以正式的方法進行錯誤的修正與需求的變更之外,也漸漸明白沒有分割好設計層次所得到的程式有哪些問題。2007年在公司又陸續講了兩場OOAD,加上聽過一場軟體工程的講座便興起了將自己OOAD的想法記錄下來的念頭。

2007/05/30開始在Blog上以每日一小篇的方式記錄,原先的計畫是以百篇上下的內容描述整個系統的開發與維護內容,但是一邊撰寫又一邊領悟到新的想法,現在到這裡已經成長到超過130篇,看來整個系統寫完應是200篇左右。

思索與領悟的過程裡,感覺在實作與設計之上還有一個“道”的存在,所謂的架構設計、細部設計等等都是依循那個常理所必然生出的產物,而且唯有領悟到那個道才能設計出理想的系統。現在的我也只不過是初次感受“道”的存在的新手而已……。

沒有留言:

張貼留言