2008年6月2日 星期一

Q10 努力的方向(2)──建立軟體元件庫與使用文件

建立可以切割並重用的系統後,接下來是讓所有人都知道每一個空格裡有哪些元件、各有什麼用途、提供了哪些方法等等,這相當於建立全部元件的資料庫。建立的主要目的在於讓所有人可以快速知道全部有哪些元件、元件被放置在哪一個空格,當然也應該可以依特定目的來尋找。

下圖是一個專案裡的部分元件,所有的元件都依應用的層次被放置到對應的定義層次裡。如果有一個專案只是需要基本的架構在上面開發,就只需要拿基本與架構用的所有元件;如果要特定系統的元件就再多拿一層系統用的元件。除了基本架構的快速組成,在各個專案遇到的元件問題在解決後可以適用到其他使用同樣元件的專案裡。

分層負責的意義在於要做的動作在每個地方、每個層次都有負責的元件。如果開發的人為了求快速完成功能,而沒有去定義綠色圈圈所定義的元件時,我們可以思考一下原來該在那裡的變數與程式都會跑到哪裡去?找出那些消失的東西與學會使用它們是否需要額外的時間?是不是每個人都要去懂?需要使用部分的層次時,那些缺少的東西掉落在哪裡?

個人的快速是由於減少封裝的元件,進而造成其他人使用上的困難是我所不能接受的作法,更何況那些問題到頭來還是會掉在自己身上。維持元件架構的完整與提供齊全的文件都是在開發的同時應該做到的責任。

沒有留言:

張貼留言