1. 程式人生 > >設計模式學習-(11.橋接模式)

設計模式學習-(11.橋接模式)

橋接模式: 提取需求的共同點,在這裡關鍵是脫離與this的耦合

// 提取共同點
    function changeColor( dom ,color ,bg){
        dom.style.color = color;
        dom.style.background = bg;
    }

    var spans = document.getElementsByTagName('span');
    spans[0].onmouseover = function () {
        changeColor( this, 'red' , '#ddd' );
    };
    spans[0].onmouseout = function () {
        changeColor( this, '#333' , '#df5f5f5' );
    };

    spans[1].onmouseover = function () {
        changeColor( this.getElementsByTagName('strong')[0], 'red' , '#ddd' );
    };
    spans[1].onmouseout = function () {
        changeColor( this.getElementsByTagName('strong')[0], '#333' , '#df5f5f5' );
    };

 //  多元化物件,  與建造者模式類似,只不過 分類 並沒有用閉包的方式實現
function Speed( x,y ){
        this.x = x;
        this.y = y;
    }
    Speed.prototype.run = function () {
        console.log( '運動起來' );
    };

    function Color( cl ){
        this.color = cl;
    }
    Color.prototype.draw = function () {
        console.log( '繪製色彩' );
    };

    function Ball( x, y ,c ){
        this.speed = new Speed( x, y );
        this.color = new Color( c );
    }
    Ball.prototype.init = function () {
        this.speed.run();
        this.color.draw();
    };
    var ball = new Ball( 1 , 2, 3 );
    ball.init();


相關推薦

設計模式學習-11.模式

橋接模式: 提取需求的共同點,在這裡關鍵是脫離與this的耦合 // 提取共同點 function changeColor( dom ,color ,bg){ dom.sty

大戰設計模式【16】—— 模式

操作 sign log 及其 hub www. .cn crete bstr 橋接模式(Bridge) 設計模式使用的例子https://github.com/LinkinStars/DesignPatternsAllExample 一、定義 將抽象部分與

7、設計模式(結構型)之模式

作用 將抽象部分與實現部分分離,使它們都可以獨立的變化 何時使用 實現系統可能有多個角度分類,每一種角度都可能變化 優點 抽象和實現的分離 優秀的擴充套件能力 實現細節對客戶透明 例項 下面

設計模式最終總結】模式

橋接模式概述         橋接模式是一種很實用的結構型設計模式,如果軟體系統中某個類存在兩個獨立變化的維度,通過該模式可以將這兩個維度分離出來,使兩者可以獨立擴充套件,讓系統更加符合“單一職責原則”。與多層繼承方案不同,它將兩個獨立變

設計模式讀書筆記之模式(bridge pattern)

橋接模式:將抽象部分和他的實現部分分離,使他們可以獨立地變化。 我個人認為,說橋接模式和享元模式, 與其說是一種設計模式,還不如說是一種思想, 它體現在對系統或物件的分析階段。當你用橋接模式的思想去分析一個系統或物件,然後用程式碼實現它之後拿給別人看, 未必有人能說出你用了

設計模式學習模式

一.設計意圖:      將抽象部分與它的實現部分分離,將他們都可以獨立地變化。      手機有很多牌子且在不斷變換,但是App應用也會不斷增多。所以程式要讓抽象部分(手機)與實現部分(App)分類,獨自變換。我們就已這個例子來介紹橋接模式。 二.例子:      

.net設計模式 模式學習筆記

運用設計模式只是為了解決一類問題的,當解決掉當前一類問題,通常會在解決這個問題時候 帶來其他問題  合理應用揚長避短 結構性設計模式:             

java 設計模式 學習筆記17 模式

 橋接模式:           將抽象部分與它的實現部分分離,使他們多可以獨立的變化。抽象與實現分離,表示抽象類和他的派生類用來實現自己的物件。        在系統中,可能有多角度分類,每一種分類都有可能變化,這時就把這種多角度分離出來讓他們獨立變化,減少各個角度的耦合。

設計模式學習筆記-模式

學習 write images 基礎 abs 分離 對象 bsp uml 一、概述 將抽象部分與它的實現部分分離,使它們都可以獨立地變化。 二、模式中的角色 Abstraction:定義抽象類的接口;維護一個指向Implementor類型對象的指針;

設計模式之十八:模式Bridge

ora 它的 pla sin string src ams down ng- 橋接模式: 將抽象部分和它的實現部分相分離開來,以使它們能夠單獨地變化。 UML圖: 主要包含: Abstraction:定義了抽象部分的接口。操作一個實現部分對

設計模式十五——模式

不用 java 高層 ext 部分 獨立 lib 類型 ray 1.描述 將橋接部分與他的實現部分分離,是他們都可以獨立的變化。 2.模式的使用 ·抽象(Abstraction):是一個抽象類,該抽象類含有Implementor的聲明,即維護一個Implementor類型

C#設計模式之八模式Bridge【結構型】

升級 方向 implement 詳細 .cn mage names 這樣的 意圖 一、引言 今天我們要講【結構型】設計模式的第二個模式,該模式是【橋接模式】,也有叫【橋模式】的。大家第一次看到這個名稱會想到什麽呢?我第一次看到這個模式根據名稱猜肯定是連接什麽東西的。因為

Java設計模式學習記錄-模式

www 方便 就是 奔騰 一個 splay public face mage 前言 這次介紹結構型設計模式中的第二種模式,橋接模式。 使用橋接模式的目的就是為了解耦,松散的耦合更利於擴展,但是會增加相應的代碼量和設計難度。 橋接模式 橋接模式是為了將抽象化與實現

C#設計模式系列:模式Bridge

span -i 原來 派生 引用 分享圖片 on() 版本 nta 1.1定義 當一個抽象可能有多個實現時,通常用繼承來進行協調。抽象類定義對該抽象的接口,而具體的子類則用不同的方式加以實現。繼承機制將抽象部分與它的實現部分固定在一起,使得難以對抽象部分和實現部分獨立地進行

java面試題之----jdbc中使用的設計模式模式

connect @override 操作 tro orb his order ng- return 1.JDBC(JavaDatabase Connectivity) JDBC是以統一方式訪問數據庫的API. 它提供了獨立於平臺的數據庫訪問,也就是說,有了JDB

重走Java設計模式——模式Bridge Pattern

橋接模式 定義 將抽象部分與實現部分分離,使它們都可以獨立的變化。 結構詳解 橋接模式主要包含如下幾個角色: 1.Abstraction:抽象類; 2.RefinedAbstraction:擴充抽象類; 3.Implementor:實現類介面; 4.Co

設計模式模式Bridge Pattern

設計模式之橋接模式(Bridge Pattern) 備註:只是瞭解了大概,在實際應用中還沒有 1.用處 將抽象部分與實現部分分離,使它們都可以獨立的變化。 2. 分類 結構型模式 3. UML 4. 程式碼 測試類Test public class Test { publ

設計模式十八模式

橋接模式(Bridge),將抽象部分與他的實現部分分離,使他們都可以獨立地變化 類圖的來源 http://img5.imgtn.bdimg.com/it/u=1548947177,2280329040&fm=26&gp=0.jpg public abstract

設計模式-模式Bridge

橋接模式是構造型模式之一。把抽象(Abstraction)與行為實現(Implementor)分離開來,從而可以保持各部分的獨立性以及應對它們的功能擴充套件。 角色和職責: 1.抽象類(Abstraction)-Car:    維護對行為實現(Implementor)的引用 2.具

23種設計模式模式python_c++實現

23種設計模式之(十)橋接模式(Bridge) 本文主要介紹23種設計模式之組合模式,附詳細python/c++示例程式碼。 - 概念 - 應用場景 - 注意事項 - 程式碼示例 - 總結 - 程式碼連結 橋接模式(Bridge)