今天在分析乙個同類產品的時候,發現其系統在好多地方都需要使用者手工進行detect(檢測),這說明了什麼呢?
說明系統本身設計存在嚴重缺陷,無法保證其資料的完整和一致性,因此需要使用者頻繁進行detect,以免造成由於資料的不一致而影響後邊的操作。
如果乙個軟體頻繁需要使用者進行手工detect,那麼就要小心了,因為一旦使用者忽視了這個問題,必然造成災難性的影響,我就遇到過這樣的情況。在產品中有部分資料必須保證包含乙個固定的檔案,在設計的時候忽視了這方面的檢查,因此在資料的應用中造成了資料的不完整而影響了系統的應用。
如何避免detect的壞味道呢?
1:在設計的時候要考慮資料的一致性和完整性
2:做出正確的約束和檢查
3:如果出現了錯誤,要做到auto detect,盡量避免人工detect
重構 概念和壞味道 自己的理解
在軟體開發中專案失敗是很正常的,大部分的專案都在延期的邊緣,但是為什麼會造成這樣的結果呢?我們有很強的工程師,對專案管理也很完善,為什麼還會造成這樣的結果呢?為什麼專案做到了一定的程度,客戶只要求乙個小的修改我們都會帶出來一大堆的問題呢?一切的問題都在於你檢查過你寫的 了嗎?你對你的 重構了嗎?最近...
7種設計壞味道和11種原則
7種設計壞味道 1.僵化性 很難對系統進行改動,因為每個改動都會迫使許多對系統其他部分的其它改動。2.脆弱性 對系統的改動會導致系統中和改動的地方在概念上無關的許多地方出現問題。3.牢固性 很難解開系統的糾結,使之成為一些可在其他系統中重用的元件。4.粘滯性 做正確的事情比做錯誤的事情要困難。5.複...
7種設計壞味道和11種原則
7種設計壞味道 1.僵化性 很難對系統進行改動,因為每個改動都會迫使許多對系統其他部分的其它改動。2.脆弱性 對系統的改動會導致系統中和改動的地方在概念上無關的許多地方出現問題。3.牢固性 很難解開系統的糾結,使之成為一些可在其他系統中重用的元件。4.粘滯性 做正確的事情比做錯誤的事情要困難。5.複...