2007年10月7日 星期日

E29 設計的終點(6)──穩定、容易改變、又能快速開發

綜合以上所有的想法,開發一個系統時,我會先著重在MVC的分層設計,每一層再分為Implementation-Controll-Action三個小層次;不管大的層次或小的層次,其中的設計都使用Interface來規範裡頭打算要做的事情,Interface的實作程式會依需要去使用已經開發完成的元件並加以控制

每一層往上會去思考套用Design Pattern的可能性,再適當地改寫為適合作流程控制的寫法,甚至更進一步地做成基本框架的類型。把每一個功能與層次的內容與作法都定義出來,再統合審視可能性與適用性並修正,等專案人員都同意之後就定義出工作項目並發配下去進行。

系統經過精密切割後分層開發,每一層都檢視看哪些可以利用reuse的元件,在寫作的同時讓別人明白裡面在做什麼,並在與其他各層銜接的地方加上吸收改變的避震器類別。每一層都可以方便使用實作,又可以輕易改變內容,如此一來專案的品質將更穩定,開發速度也會比之前更快。

第一次的實作會是辛苦的,因為要比直接做一個專案花費更多的時間。決策上如果確定未來有類似的專案需要開發,那持續往這個方向改進會是最有利的。

這張圖要表示的是所有實作元件與檔案之間的關係:

沒有留言:

張貼留言