2008年6月9日 星期一

Q17 努力的方向(9)──循序漸進的想法

從別人指定的功能需求下找出適當的流程與動作,用計算機程式正確地達成目的是一種快樂,這種成就感正是這個領域吸引人的魅力。

然而在系統範圍較大、需求較多的時候,各個功能之間總有採用相同動作的時候,如何管理這些重疊的地方暫時都得靠個人的想法。強調絕對重用的人會讓重覆動作只存在於一個地方,只注重完成功能者就可能在各功能裡都有一份相同的動作程式碼。這樣的重疊也會出現在下一個相同領域的專案上,而且除了功能實現的想法外還要加上與前一系統的異同分析;甚至不同領域間的系統也要相互分析比較。不想作這些比對的人,手上就只會擁有一堆無法相容的程式碼。

歸本溯源,最初的想法都只是“如何完成一個功能”,想法是沿著Use Case的流程行走。不過這個功能的分解動作為了提供給同系統內其他功能使用會被收集到集合裡,整理出每個集合提供什麼動作也是必要的工作。對集合而言,每個提供外界操作的動作都是它的功能需求,如何在內部達成這個需求又回溯到“如何完成一個功能”的想法。

“想法”是所有人完成功能的思維,不管它被放在文件裡或是程式裡都是確實存在的。找出別人曾經有的想法與留存自己現在的想法,都是讓設計經驗得以留存的重要關鍵;只是現在大家普遍使用的記錄方式都無法保證足以讓他人明瞭原有的想法。因此,改善現有的作法以留下現有想法以減少後來負責人的負擔正是需要努力的方向。

要能從程式碼中快速回溯出原有的設計想法,需要的兩個前提是:正確的Component結構與Java構文解析。

沒有留言:

張貼留言