设计模式学习(六):重构与模式,推荐书籍(完)
備注:
1.????????模式常常組合使用,共同解決問題。
2.????????模式是特定場景下優雅的解決方案,因此場景很關鍵。在軟件設計中,特定的場景可能是顯而易見的,可能是隱而不現的,有時甚至是設計者有意創造的。因此使用模式時,對問題的分析至關重要。
3.????????模式的使用是有先后之分的。
4.????????DP書中所給的結構圖僅僅是模式可能的實現方式之一,但不是唯一。實現一個模式往往有多種途徑。
5.????????模式本身是比較復雜的。純粹的為了模式而模式,并不會改善設計,相反會引入不必要的復雜性。之所以使用模式,是因為它提供了一種優雅的解決方案
6.????????有些模式,比如行為型的模式等,常常在設計初期就引入,但是更多的模式則不宜過早的引入。“Refactoring to Patterns”是目前普遍公認的最好的使用設計模式的方法。
7.????????模式和語言無關
8.????????使用模式不難,用好模式難.唯一的建議: 多編程。
重構與模式
很多模式并非作為主模式被引入系統設計的,往往是在系統不斷進化的過程中,根據需求而引入。模式的引入過程就是系統的一個組合重構過程。進化的系統需要持續重構,因此重構就成了使用模式的一個很好的途徑。
重構的目標:消除重復代碼;消除冗余代碼;簡化代碼邏輯。本質上,重構就是為了提高代碼的可讀性和可維護性等。
重構往往需要測試驅動開發的支持。沒有測試代碼重構很難進行,測試代碼是保證重構不破壞代碼原有行為的必要條件。
重構過程不宜采取過大的步驟。采取盡可能小的重構步驟,在不破壞代碼行為的前提下,盡量使重構的代碼在可編譯狀態下進行代碼的增刪和替換。小步驟的重構往往就是最快的重構方式。
模式導向的重構是把重構和模式使用結合在一起的一個途徑。
參考書籍
設計模式?????? ???????????? 1995
設計模式精解(2nd)?? 2006
敏捷軟件開發????????????? 2003
Refactoringto Patterns(中文: 重構與模式)? 2006
HeadFirst Design Patterns ????ElisabethFreeman, Eric Freeman 2007
推薦書籍:
測試驅動開發(TDD)???? Kent Beck
重構????????????????? Martin Fowler
Patternsof EnterpriseApplication Architecture ??Martin Fowler
Extreme Programming Explained??????????? ?Kent Beck
Object-orientedSoftware Construction?? ??????Bertrand Meyer
UMLDistilled(有中文版)??? ???????????????Martin Fowler
大部分寫于:2007-02-05~06
完成于2007-03-30
修改于:2009-09-05
---------------------------------------------------
兄弟的公司:立即購--手機購物,誠信網購
兄弟的公司:立即團
歡迎轉載,請注明作者和出處
轉載于:https://www.cnblogs.com/zhenjing/archive/2010/12/15/refactoring_2_patterns.html
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的设计模式学习(六):重构与模式,推荐书籍(完)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 分享python os.system一点
- 下一篇: 你真的了解JavaScript的比较运算