《修煉Java開發技術 在架構中體驗設計模式和算法之美》 - 書摘精要

(P7)

建議直接加入到軟件公司中去,這樣會學到不少實際的東西;

程序員最主要的發展方向是資深技術專家,不管是 Java、.Net 仍是數據庫領域,都要首先成爲專家,而後纔可能繼續發展爲架構師;

加強工做的主動性和參與性;

只有擁有更高的眼界,才能謀取更大的發展;

(P10)

跳槽是須要本錢的,這個本錢就是你積累的工做經驗、工做業績、技術水平和工做能力;

(P11)

一個好的領域專家必定是業務領域的架構師,他可以給出某一個業務領域的架構,咱們能夠稱爲業務架構,只有技術架構和業務架構緊密結合,纔有可能真正創造出一個好的系統;

(P16)

系統應該隨着規模的變化,不斷演進。這樣的系統纔是科學的、經濟的;

(P22)

在設計模式中,全部的設計模式都遵循「單一職責原則」這一原則;

(P23)

「單一職責」也就是「單一變化緣由」;

「職責」也就是引發類變化的緣由;

(P28)

抽象層次應該不依賴於具體的實現細節,這樣才能保證系統的可複用性和可維護性;

抽象即「抽象類」或「接口」,二者是不可以實例化的;

若是沒有實現「依賴注入原則」,那麼也就意味着「開閉原則(對擴展開放,對修改關閉)」也沒法實現;

(P41)

資深的程序員都會看重數據結構和算法做用,水平越高,就越能理解算法的重要性;

(P49)

設計模式使代碼編制能真正地工程化,它是軟件工程的基石;

(P57)

「簡單工廠」的方法一般都是靜態的,因此也被稱爲「靜態工廠」;

一個「簡單工廠」,理論上能夠構造任何東西,因此又被稱爲「萬能工廠」;

在「簡單工廠」裏面能夠只有一個方法,也能夠有不少這樣建立的方法;

(P58)

「接口」就是「實現類」對外的外觀;

「接口」是系統可插拔性的保證;

(P67)

「工廠方法模式」是類的建立模式,又叫虛擬構造器(Virtual Constructor)模式或者多態性工廠(Polymorphic Factory)模式;

(P68)

在「工廠方法模式」中通常都有一個平行的等級結構,也就是說,工廠和產品是對應的。抽象工廠對應抽象產品,具體工廠對應具體產品;

(P110)

單例模式的本質是控制實例數目;

(P116)

在「建造者模式」裏,有個指導者,由指導者來管理建造者,用戶是與指導者相互聯繫,指導者聯繫建造者,最後獲得產品;

(P142)

建議不要混合使用深拷貝和淺拷貝,特別是涉及到類的繼承,父類有多個引用的狀況就很是的複雜,建議的方案是深拷貝和淺拷貝分開實現;

(P162)

在適配器模式中,實現了由「源」到「目標」的適配,適配器負責把「源」過渡到「目標」;

(P174)

將兩個角色之間的繼承關係改成聚合關係,就是將它們之間的強關聯改換爲弱關聯;

(P185)

在橋樑模式中的橋接是單向的,也就是隻能是抽象部分的對象去使用具體實現部分的對象,而不能反過來;

(P194)

從更本質的角度來看,基本上只要是面向抽象編寫的 Java 程序,均可以視爲是橋樑模式的應用,都是讓抽象和實現相分離,從而使它們能獨立地變化;

(P254)

享元模式是一個提升程序效率和性能的模式,會大大地加快程序的運行速度;

(P262)

享元模式是一種緩存技術;

(P460)

狀態模式的引入免除了代碼中複雜而冗長的邏輯判斷語句;程序員

相關文章
相關標籤/搜索