中介者模式的介紹:中介者模式是行為型模式這一,在日常生活中,比如兩口子吵架,孩子和雙方的父母會(huì)勸架,孩子和雙方的父母就稱(chēng)有中介者的意思,就是“和事佬”,也就是說(shuō)調(diào)解兩個(gè)起爭(zhēng)端的人。而中介紹者模式比這個(gè)例子要復(fù)雜的多,上面的例子只是涉及到2個(gè)人的,中介者模式要涉及的對(duì)象是多個(gè)。多個(gè)對(duì)象之間的交互關(guān)系,是很復(fù)雜的,是網(wǎng)狀的關(guān)系,中介者就是要把這種多對(duì)多的關(guān)系轉(zhuǎn)化為一對(duì)多的關(guān)系,就是轉(zhuǎn)化為星狀結(jié)構(gòu),如下圖
網(wǎng)狀關(guān)系
星狀關(guān)系
中介模式的定義:中介者模式包裝了一系列對(duì)象的相互交互作用的方式,使得這些對(duì)象不必相互明顯作用。從而使它們可以松散耦合,當(dāng)某些對(duì)象之間的作用發(fā)生改變時(shí),不會(huì)立即影響其他的一些對(duì)象之間的作用,保證這些作用可以彼此獨(dú)立的變化,中介者模式將多對(duì)多的相互作用轉(zhuǎn)化為一對(duì)多的相互作用。中介者模式將對(duì)象的行為和協(xié)作抽象化,把對(duì)象在小尺度的行為上與其他對(duì)象的相互作用分開(kāi)處理。
中介者模式的使用場(chǎng)景:當(dāng)對(duì)象之間的交互操作很多且每個(gè)對(duì)象的行為操作都依賴(lài)彼此時(shí),為防止在修改一個(gè)對(duì)象的行為時(shí),同時(shí)涉及修改很多其它對(duì)象的行為,可采用中介者模式,來(lái)解決緊耦合問(wèn)題。該模式將對(duì)象之間的多對(duì)多關(guān)系變成一對(duì)多關(guān)系,中介者對(duì)象將系統(tǒng)從網(wǎng)狀系統(tǒng)變成以中介者為中心的星狀形結(jié)構(gòu),達(dá)到降低系統(tǒng)的復(fù)雜性,提高可擴(kuò)展性的作用。