Head First設計模式(1)

OO基礎算法

1、抽象編程

2、封裝spa

3、多態設計

4、繼承繼承

 

OO原則接口

1、封裝變化開發

2、多用組合,少用繼承基礎

3、針對接口編程,不針對實現編程擴展

 

OO模式軟件

策略模式(Strategy Pattern)——定義算法族,分別封裝起來,讓它們之間能夠互相替換,此模式讓算法的變化獨立於使用算法的客戶

 

要點

1、知道OO基礎,並不足以讓你設計出良好的OO系統

2、良好的OO設計必須具有可複用、可擴展、可維護三個特性

3、模式能夠讓咱們建造出具備良好OO設計質量的系統

4、模式被認爲是歷經驗證的OO設計經驗

5、模式不是代碼,而是針對設計問題的通用解決方案。你可把它們應用到特定的應用中

6、模式不是發明,而是被發現

7、大多數的模式和原則,都着眼於軟件變化的主題

8、大多數的模式都容許系統局部改變獨立於其餘部分

9、咱們常把系統中會變化的部分抽出來封裝

10、模式讓開發人員之間有共享的語言,可以最大化溝通的價值

 

利用繼承來提供Duck的行爲,這會致使哪些缺點?

1、代碼在多個子類中重複

2、運行時的行爲不容易改變

3、很難知道全部鴨子的所有行爲

4、改變會牽一髮動全身,形成其餘鴨子不想要的改變

相關文章
相關標籤/搜索