舉個簡單的例子,有一個用戶發布新聞的功能,新聞實體public class News{ public string ID{get;set;} public string UserID{get;set;} public string Name{get;set;}}如果說用戶發布一個新聞,則是調用邏輯類的AddNews()方法?,F在需要增加一個新需求,要控制用戶發布新聞的數量。最常規的做法就是在用戶實體增加一個新聞數量的標記屬性,在AddNews()里加入判斷控制,同時每則增加一個新聞則改變新聞數量的標記。 我想請教的是:如何在一開始的設計中,就預留這種可能的擴展,在類的設計中應該怎么去做。能做到在新的需求中能最少的改變,實現最小的偶合。盼高手指教,萬分感謝!
2 回答

紫衣仙女
TA貢獻1839條經驗 獲得超15個贊
程序永遠都是為業務服務的,所以在搞清楚業務之前做代碼很可能是不滿足業務需求的,像上面所說的這種屬于一個業務功能,也就是說這是需求的一部分,只能在設計之前就搞清楚,而后期去完善就只能去改原來的設計了。當然了,為了盡量降低后期維護的更改范圍,可以這么做:設計一個類,屬性中包含其他實例,具體有哪些實例是通過讀配置文件,通過反射生成,這樣方便擴展,但是在實際操作過程中,該原來的代碼是難免的。
- 2 回答
- 0 關注
- 654 瀏覽
添加回答
舉報
0/150
提交
取消