2008年4月6日 星期日

N06 設計的製程(7)──備齊Component應有的Method

Component的初期只是系統裡的一個Package,Method的設計都是根據Activity的定義而來。當我們覺得這個Package適合抽取為Compoent時,或許在現在的系統而言只要直接將之劃歸元件庫就可以繼續開發,但是對於一個必須應付多方面需求的Component而言卻應該把所有該有的Method都定義清楚。

想像一下ATM對於晶片金融卡的動作,我們需要的是讀取卡片帳號、比對密碼、變更密碼、顯示約定轉帳帳號等動作,所以在ATM的設計裡定義了這些動作。後來覺得處理晶片金融卡的動作適合抽取為Component,但是原有的動作Method是足夠的嗎?當開發網路ATM系統時,我們會發現還需要加上寫入約定轉帳帳號的動作。

當然有人會質疑在第一個系統時並不知道未來需要什麼,但是我們可以根據簡單的原則來檢視定義的Method。首先是生成與消滅,用來確認如何取得Component物件來使用與不用時消滅它的方法;再來是資料的CRUD原則,Component裡的所有資料都應提供Create、Retrive、Update與Delete四種方法才算是完全的使用(有保護性質的資料就需要隱蔽其中幾種)。

這兩個原則用來檢視存取資料的靜態方法,如果Component裡提供了流程控制的方法,就應該有更進一步的考量。

沒有留言:

張貼留言