19observer
<1>分析依賴關係
比如a依賴b,如果b變化,那麼對a就會存在影響,所以會導致變化。
在分析專案的時候,要這樣考慮。
對於b變化,怎樣才能是a不變化,那就是a依賴的是穩定的,是抽象的
是不變化的,那什麼是不變化的,什麼是穩定,就是介面。
<2>如何分析乙個類的結構和關係
要綜合考慮這個類依賴的類,關聯的類,當依賴的類和關聯的類
變化的時候,對於本類的影響。
介面是穩定的,所有要依賴穩定。
學到的是思維方式:物件導向的思維方式
其實就是物件導向的基本原則.
模式是解決依賴的問題,解決變化。
間接層20責任鏈
父類和子類不能看出 繼承
要看做封裝變化,一種變化。
21備忘錄
學習技術,要知道技術最終解決的問題是什麼。
追求技術,要知道技術是解決什麼問題,問題的
本質,而不是技術的應用.
寬窄介面:定製介面,對於不同的客戶,應該給予不同的
介面。介面隔離原則,單一職責原則。
物件的介面是有物件自己負責的,而不是客戶負責的。
職責是由物件本身來規範的。
22state
子類就是改變,子類支援擴充套件.
物件導向的思想。
物件是根據行為定義的。
oo思想:定義物件,什麼物件,怎樣定義物件。
物件是職責,提供服務,提供行為。
要具有動態思想,時間軸看變化。
縱談軟體預構(一) 開篇
非常偶然地學到了乙個概念,叫預構。接下來的時間,就對預構的各個方面做下簡單的 首先,我們先來看下什麼叫軟體預構。聽到軟體預構這個詞,相信很多人第乙個想到的詞都是 軟體重構 我也不例外。但是這兩個詞完全是兩個概念。重構是對乙個已完成的專案利用模式進行實際的設計,上的修改。而預構是利用前人,或者曾經開發...
設計模式 設計模式
物件導向程式設計 oop 的基本概念有 封裝,抽象,繼承,多型等,如何開發出可復用的物件導向軟體一直困擾著軟體開發人員。可復用的物件導向技術包括類的繼承,物件的組合和引數化型別 generic gof的巨著 設計模式 總結出可復用的物件導向的23個設計模式,並且歸類成 建立型模式,結構型模式和行為型...
設計模式 命令設計模式
一句話總結 命令設計模式的實質是將命令定義,命令的執行分離開,從而提公升了系統的解藕性 結構 命令的抽象command 命令的具體實現concretecommand 命令處理者抽象ireceiver 命令處理者的具體實現concretereceiver 命令的呼叫者invoker 客戶端client...