摘要:設計模式提供六個基本原則,分別是開閉原則單一職責原則里氏替換原則依賴倒置原則接口隔離原則迪米特法則開閉原則對擴展開放,對修改關閉。總結六大設計原則是代碼設計的基本原則。
JAVA設計模式提供六個基本原則,分別是:
開閉原則(OCP) - The Open-Closed Principle
單一職責原則(SRP) - Single Responsibility Principle
里氏替換原則(LSP) - Liskov Substitution Principle
依賴倒置原則(DIP) - Dependency Inversion Principle
接口隔離原則(ISP) - Interface Segregation Principle
迪米特法則(DP) - Demeter Principle
開閉原則對擴展開放,對修改關閉。
開閉原則宗旨是在已有系統基礎上進行開發,不要對正常運行的代碼進行修改操作。需要擴展需求時,通過添加新類或者新代碼來實現,對已有代碼做到最少修改,甚至是零修改。
接口或類只提供一種業務實現。
單一職責原則宗旨是每個接口、類的功能,只能用來做專門的事,強調系統內業務職責唯一,避免職責擴散,做到業務統一管理。
使用父類的地方可以用子類來替換。
里氏替換原則宗旨是子類盡量不要重寫父類或者接口中已經實現的方法,即子類和父類邏輯保持一致性。
面向抽象編程,即通過接口或者抽象類提供依賴關系。
依賴倒置原則宗旨是指各個業務模塊之間依賴關系,通過約定的接口或者抽象類來實現,不涉及具體的實現細節,細節交給具體的實現類來完成。
JAVA實現依賴倒置的方式有三種:
構造方法
setter方法
接口注入
接口隔離原則接口中的方法和屬性都是實現類所需要,沒有額外無用信息。
接口隔離原則宗旨是接口的完美復用,接口的內容對于實現來說無冗余代碼。
迪米特原則又叫最少知道原則,核心思想是低耦合,高內聚。
迪米特原則宗旨是弱化代碼(通常指類)之間的依賴關系。
六大設計原則是代碼設計的基本原則。設計原則規范了開發人員如何去設計和實現代碼,來提高程序的規范性、可讀性、擴展性和維護性。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/70655.html
摘要:前言關于設計模式,想必大家的第一感覺就是過于高深,有點虛吧。為什么要學習設計模式因為要裝逼啊咳咳,大家請忽略前面那句話。處處都是設計模式的體現,所以若想攻下,設計模式是必學的。下節預告單例模式 前言 關于設計模式,想必大家的第一感覺就是過于高深,有點虛吧。相對來說,我們還是更熟悉ssh或者ssm之類的開發框架,一個工具用久了就會熟能生巧,就像刷漆工,時間長了也知道如何刷的一手漂亮的好墻...
摘要:依賴倒置原則是個設計原則中最難以實現的原則,它是實現開閉原則的重要途徑,依賴倒置原則沒有實現,就別想實現對擴展開放,對修改關閉。 1、單一職能原則(Single Responsibility Principle, SRP) 定義 There should never be more than one reason for a class to change.應該有且僅有一個原因引起類的...
摘要:當然,除了讓我們顯得更加專業之外,在自己所學習或者工作的項目中,適當合理的使用設計模式,能夠給項目帶來很大的好處。 簡單說兩句 本文首發公眾號【一名打字員】 對不住各位老鐵了,年前說好要更幾波JAVA的東西,又偷懶了,沒辦法,在這里用小錘錘偷偷錘了自己幾下。由于工作原因,更新時間不定,各位老鐵有問題可以私聊我哈。 對于初學者或者是正在向中高級的Java程序猿(打字員)來說,時刻梳理自己...
摘要:首先先祝大家國慶節快樂今天距離為我運營公眾號已經一個月了,今天把文章整合一下,希望對大家有幫助,也謝謝朋友的支持,我會繼續堅持原創,寫更好的文章給大家一視頻獲取學習資源分享合集二功能篇實現金額的語音播報功能基于模式風格的封裝之路炫酷動畫跳 showImg(https://segmentfault.com/img/remote/1460000011437678?w=900&h=500);...
摘要:首先先祝大家國慶節快樂今天距離為我運營公眾號已經一個月了,今天把文章整合一下,希望對大家有幫助,也謝謝朋友的支持,我會繼續堅持原創,寫更好的文章給大家一視頻獲取學習資源分享合集二功能篇實現金額的語音播報功能基于模式風格的封裝之路炫酷動畫跳 showImg(https://segmentfault.com/img/remote/1460000011437678?w=900&h=500);...
閱讀 1559·2021-11-17 09:33
閱讀 1111·2021-11-12 10:36
閱讀 2422·2019-08-30 15:54
閱讀 2446·2019-08-30 13:14
閱讀 2920·2019-08-26 14:05
閱讀 3296·2019-08-26 11:32
閱讀 3011·2019-08-26 10:09
閱讀 3005·2019-08-26 10:09