大話設計模式讀書筆記2 策略模式

2022-02-04 12:13:44 字數 1171 閱讀 2815

策略模式是一種定義一系列演算法的方法,從概念上來看,所有這些演算法完成的都是相同的工作,只是實現不同,它可以以相同的方式呼叫所有的演算法,減少了各種演算法類與使用演算法類直接的耦合。

uml 圖:

根據《大話設計模式》——第二章 商場**這個案例**來簡單的記錄一下策略模式的使用方式:

///

///現金收費抽象類

/// public

abstract

class

cashsuper

現金收費抽象類

///

///正常收費子類

/// public

class

cashnormal : cashsuper

}//////

打折收費子類

/// public

class

cashrebate : cashsuper

public

override

double acceptcash(double

money)

}//////

返利收費子類

/// public

class

cashreturn : cashsuper

public

override

double acceptcash(double

money)

return

result;}}

各種算法子類

///

///上下文類

/// public

class

cashcontext

}public

double getresult(double

money)

}

上下文類

客戶端**:

void btnok_click(object

sender, eventargs e)

介面截圖:

《大話設計模式》讀書筆記2 策略模式

策略模式 strategy 它定義了演算法家族,分別封裝起來,讓它們之間可以相互替換,此模式讓演算法的變化,不會影響到使用演算法的客戶。策略模式結構圖 策略模式實現 abstract class strategy class concrestrategya strategy class concre...

大話設計模式讀書筆記 策略模式

策略模式作為一種軟體設計模式,指物件有某個行為,但是在不同的場景中,該行為有不同的實現演算法。比如每個人都要 交個人所得稅 但是 在美國交個人所得稅 和 在中國交個人所得稅 就有不同的算稅方法。策略模式的特點 1.定義了一族演算法 業務規則 2.封裝了每個演算法 3.這族的演算法可互換代替 inte...

大話設計模式讀書筆記之策略模式

大話設計模式讀書筆記之策略模式 1.定義 它定義了演算法家族,分別封裝起來,讓它們之間可以互相替換,此模式的使用,讓演算法的變化不會影響到適應這些演算法的客戶。2.相關的uml類圖 3.意義 策略模式是一種定義一系列演算法的方法,從概念上來講,所有這些演算法完成的都是相同的工作,只是實現不同,它可以...