1. 程式人生 > >一、Java設計模式之開閉原則

一、Java設計模式之開閉原則

  • 定義:一個軟體實體,如類、模組和函式應該對擴充套件開放,對修改關閉
  • 用抽象構建框架,用實現擴充套件細節
  • 優點:提高軟體的可複用性以及可維護性
  • eg:上班彈性作息,必須滿足8小時工時,對啥時上班放開
  • 核心思想:面向抽象程式設計,校驗來說,先校驗什麼,再校驗什麼。對新增一個校驗規則是開放的,不能對歷史校驗修改,避免影響歷史的。採用抽象,隔離以後變化,抽象化。
  • 上圖:

虛線:表示實現,實線表示繼承。

根基改動,風險很大。-->dao層改動,可能影響很大。

面向物件程式設計,一定要強調開閉原則。提高複用性和擴充套件性。

相關推薦

Java設計模式原則

定義:一個軟體實體,如類、模組和函式應該對擴充套件開放,對修改關閉 用抽象構建框架,用實現擴充套件細節 優點:提高軟

設計模式原則

override cati 聖誕 turn extension span 核心 inter open 開放封閉原則(Open Close Principle,簡稱OCP)盡量通過擴展軟件實體的行為來實現變化,而不是通過修改已有的代碼來實現變化 原始定義:Software

Python設計模式工廠方法

工廠方法 使用相同的介面,來處理不同的事情。 在工廠設計模式中,客戶端可以請求一個物件,無需知道這個物件來自哪裡(使用具體的哪個類來生成的,使用者只是呼叫同一個方法就能實現) 工廠通常有兩種形式, 一種是工廠方法 一種是抽象工廠 以下 是工廠方法的程式碼 使用者通

Java設計模式迪米特原則

定義:一個物件應該對其他物件保持最小的瞭解,又叫最小知道原則 儘量降低類與類之間的耦合 優點:降低類之間的耦合 

Java設計模式工廠方法

定義: 抽象工廠模式提供一個建立一系列相關或者相互依賴物件的介面 無需指定它們具體的類 型別:建立型 抽象工

Java設計模式策略模式

定義: 定義了演算法家族,分別封裝起來,讓他們之間可以互相替換,此模式讓演算法的變化不會影響到使用演算法的使用者 if

學習設計模式 - 六大基本原則原則

裏氏替換 成對 五個 jsp 導致 業務邏輯 關聯 影響 引入   設計模式總共有六大基本原則,統稱為SOLID (穩定)原則,分別是S-單一職責原則(Single Responsibility Principle), O-開閉原則(Open closed Principl

java設計六大原則原則(OCP)

抽象化是關鍵 定義抽象類或介面,使其可以有很多的具體實現(openfor extension) 預見所有的需要,在任何情況下都不再修改上層商業邏輯(closedfor modification)   對可變性的封裝原則 一種可變性不應當散落在程式碼的很多角落裡,應當將其

設計模式六大原則原則

1.定義: 開閉原則是設計模式裡面最基礎的設計原則,它指導我們如何建立一個穩定,靈活的系統。開閉原則定義如下: 一個軟體實體。如類/模組/函都應該對擴充套件開放,對修改關閉。 2.為什麼要有開閉原則或者說開閉原則的好處具體體現在哪裡? 在軟體的生命週期內,因為升級和維護或者要增加需求

設計模式軟體開發原則(1)原則和依賴倒置原則

開閉原則 定義 所謂開閉原則就是一個軟體實體如類、模組和函式應該對擴充套件開放、對修改關閉。 強呼叫抽象構建框架,實現實現拓展細節。 有優點是提高軟體的複用性和易維護展性。是面向物件的最基本原則。 依賴倒置原則 定義 高層模組不應該依賴底層模組,二者都應該依賴其抽象。 抽象不應該依賴細節:細節應該

java設計模式——建造者模式原型模式(建立性)【讀書筆記】

一、建造者模式(生成器模式)                 定義:將一個複雜物件的構建和它的表示分離開,使得同樣的構建過程可以得到不同的表示。                 效果:採用建造者模式,使用者只需要選擇建造的型別就可以得到它們,而具體的建造過程和細節就不需要

設計模式基礎原則

設計模式 設計模式23式 (一)瞭解設計模式給程式設計帶來的好處 (二)建立型模式:熟練掌握(簡單工廠,工廠方法,抽象,單利模式,建造者模式,原型模式) (三)結構性模式:介面卡模式,裝飾器模式,代理模式,外觀模式,橋接模式,組合模式,享元模式, (四)行為模式:策略模式,模板方

java 設計模式單例模式 篇就夠了

單例模式 單例物件(Singleton)是一種常用的設計模式。 在Java應用中,單例物件能保證在一個JVM中,該物件只有一個例項存在。這樣的模式有幾個好處: 1、某些類建立比較頻繁,對於一些大型的

Java設計模式觀察者模式

觀察者模式:Observer           觀察者模式主要用於1:N的通知,當一個物件(目標物件subject或Observable)的狀態變化時,他需要及時告知一系列物件(觀察者Observer),令他們做出相應           通知觀察者的方式有兩種,分

JAVA設計模式---代理模式()

前言 今天學習了代理模式,儘管只是對靜態代理有了一點理解,但還是非常開心的總結一下. -. 靜態代理 -. 繼承代理 -. 聚合代理 繼承代理 首先是要講述的是繼承代理 下面是我建立繼承代理的過程,如下

Java設計模式總體簡介()——簡單易懂

設計模式(Design pattern)是一套被反覆使用、多數人知曉的、經過分類編目的、程式碼設計經驗的總結。使用設計模式是為了可重用程式碼、讓程式碼更容易被他人理解、保證程式碼可靠性。 毫無疑問,設計模式於己於他人於系統都是多贏的,設計模式使程式碼編制真正工程化,設計模式是

Java設計模式從[魔獸爭霸星際爭霸DOTA編隊]分析迭代器(Iterator)模式

  在即時戰略遊戲、DOTA中,我們可以多選我們部隊,讓他們組成一個隊伍。在星際1、魔獸3中,一支隊伍的最大單位數量為12個,當我們選中一支隊伍後,可以命令他們集體朝著哪個方向移動或者進攻,而不用一個一個控制我們的單位。在程式中,我們是如何實現向這支隊伍“群發”命令的呢?最

Java設計模式責任鏈模式職責鏈模式

什麼是鏈1、鏈是一系列節點的集合。2.、鏈的各節點可靈活拆分再重組。職責鏈模式使多個物件都有機會處理請求,從而避免請求的傳送者和接受者之間的耦合關係,將這個物件連成一條鏈,並沿著這條鏈傳遞該請求,直到有一個物件處理他為止。角色抽象處理者角色(Handler):定義出一個處理請

java設計模式責任鏈模式狀態模式策略模式

若您對我的分享感興趣可以訪問:java設計模式專欄在常用的23中設計模式中,有三種模式容易混淆,這三種模式分別是:責任鏈模式、狀態模式以及策略模式因此接下來我們把這三種模式放在一起討論1、責任鏈模式(okHttp)職責鏈的本質是:不同的類對同一個問題的反應    責任鏈模式下

java設計模式——簡單工廠工廠方法模式抽象工廠模式(建立性)【讀書筆記】

1、簡單工廠模式            應用場景,程式設計中通過工廠方法接受一個引數,建立不同類型別的例項。            設計示意圖                                         例項