設計的臭味,腐化軟件的氣味

軟件開發的過程中所體現出來的壞味道:

1.僵化性
很難對系統進行改動,因爲每個改動都會迫使許多對系統其它部分作出改動;
2.脆弱性
對系統的改動往往會導致一些在概念上無關的地方出現問題;
3.牢固性:
很難解開系統的糾結,使之一些功能成爲其它系統能夠公用的組件;
4.粘滯行:
即做正確的事情比做錯誤的事情要困難很多,系統對環境和某些不可預料的事情太過於依賴;
5.不必要的複雜性
設計中包含不具任何直接好處的基礎架構,換句話來說就是有設計過度的嫌疑,考慮的變化太多,導致系統過於複雜,影響了當前功能的實現;
6.不必要的重複性:
設計中有重複的結構,而該重複的結構本來可使用單一抽象的接口進行統一;
7.晦澀性:
這個壞味道應該很好懂,即代碼很難閱讀,理解,沒有很好的表現出意圖;

總結:以上的壞味道可能在軟件開發的初期,並沒有察覺,但是隨着需求的變更而我們軟件的設計並沒有做出相應的變化,而是一直在抱怨需求怎麼老變,或者是需求和我們原來的設計不符,打破了我們原來的設計,應該讓我們左右爲難了,其實歸根結底就是我們設計的問題,我們應該尋找更好的方法來擁抱變化,現在比較流行的就是大家一直在提的“敏捷開發",但是關於敏捷的過多問題在此就不贅述了,僅僅說一下敏捷開發人員的解決問題之道:

   (1).遵循敏捷實際去發現問題;
(2).應用設計原則去診斷問題;
(3).應用設計模式去解決問題;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章