設計模式個人理解(一)
概念
**設計模式(Design Pattern)** 通俗來說就是一套被反覆使用,很多人知道,經過分類的,程式碼設計經驗的總結。
**使用設計模式的目的**:為了程式碼的可重用性,讓程式碼更容易被他人理解,提高程式碼的可靠性。
(ps:在此推薦一本書**《Design Patterns: Elements of Reusable Object-Oriented Software》**(即後述《設計模式》一書),
該書由 Erich Gamma、Richard Helm、Ralph Johnson 和 John Vlissides 合著(Addison-Wesley,1995)。這幾位作者常被稱為"四人眾(Gang of Four)",
故企業面試時稱的要求熟悉**GOF**常用設計模式,即本書的代稱。)
設計模式的六大原則
(ps:描述均以個人理解來描述,不做專業名詞贅述)
1.單一職責原則
職責劃分儘量詳細,依據職責對業務進行劃分。
通俗來說即是,一個類只做一件事,一個方法只做一件事
2.依賴倒置原則
面向抽象樣式程式設計,依賴抽象而不是依賴具體。
即抽象描述行為,具體用來實現行為。
3.里氏代替原則
即父類定義行為,子類進行具體實現。
當業務變更時,只需要更換不同的子類(使用多型)就可以完成業務的更換,並且對業務邏輯沒有影響。
4.介面隔離原則
使用多個專門的介面比使用單一介面多功能要好。
一個介面代表一個角色,不把不同的角色都交給一個介面。
5.迪米特原則
又叫最少知道原則。
即類應當儘可能的高內聚,低耦合。
方法中不使用類中沒有定義的其他類的例項。
6.開閉原則
簡單來說就是模組、類、以及功能,在需求改變的時候,應該在不修改現有程式碼的基礎上,引入新的功能。
相關文章
- PHP 簡單的幾個設計模式(個人理解)PHP設計模式
- 理解設計模式設計模式
- 設計模式理解設計模式
- 一句話理解設計模式設計模式
- Android中Activity設計思想個人理解Android
- 讀書整理 - 理解JavaScript設計模式(一)JavaScript設計模式
- 每天一個設計模式·策略模式設計模式
- 每天一個設計模式·代理模式設計模式
- 每天一個設計模式之命令模式設計模式
- 理解設計模式之單例模式(Javascript)設計模式單例JavaScript
- MVC設計模式深入理解MVC設計模式
- 妙用設計模式來設計一個校驗器設計模式
- 設計模式之狀態模式(三分鐘學會一個設計模式)設計模式
- 設計模式之模板方法模式(三分鐘學會一個設計模式)設計模式
- 每天一個設計模式之單例模式設計模式單例
- 每天一個設計模式之組合模式設計模式
- 每天一個設計模式之享元模式設計模式
- JAVA設計模式 1 設計模式介紹、單例模式的理解與使用Java設計模式單例
- 每天一個設計模式之責任鏈模式設計模式
- 每天一個設計模式之裝飾者模式設計模式
- 如何通俗理解設計模式及其思想?設計模式
- 架構師之路—理解設計模式架構設計模式
- 理解設計模式及依賴注入設計模式依賴注入
- 一天一個設計模式(二) - 單例模式(Singleton)設計模式單例
- 一天一個設計模式(三) - 建造者模式(Builder)設計模式UI
- 一天一個設計模式(四) - 原型模式(Prototype)設計模式原型
- 一天一個設計模式(四) – 原型模式(Prototype)設計模式原型
- 一.設計模式之工廠設計模式設計模式
- JAVA設計模式 4【建立型】理解建造者模式Java設計模式
- 談一談我對‘模板方法’設計模式的理解(Template)設計模式
- 【設計模式】設計模式(一)-- 大話設計模式讀書筆記設計模式筆記
- 角色設計:如何講述一個人
- [java設計模式]工廠設計模式,給物件一個合法的生產渠道。Java設計模式物件
- 一天一個設計模式(五) - 介面卡模式(Adapter)設計模式APT
- 每天一個設計模式之訂閱-釋出模式設計模式
- 一天一個設計模式(一) - 總體概述設計模式
- 設計模式(一)_單例模式設計模式單例
- 設計模式一(單例模式)設計模式單例