天天看點

Command(指令)模式自己的一些了解

指令模式是對指令的封裝,指令模式把發出指令的責任和執行指令的責任分割開來,分别委派給不同的對象。指令發出者隻關心發出指令,而指令的執行與否與他無關,這樣兩者就能夠很好的解耦,以前的強耦合關系便為了弱耦合的關系,這對于整個系統以後的擴充很有好處。如果是強耦合的關系,在以後的擴充很可能是重新寫整個系統的代碼。同時指令模式可以使新的指令很容易的加入到系統裡。舉個例子,以前皇上下聖旨就是一個指令模式的例子,聖旨下來,皇上是不會親自過問誰去送這個聖旨和這個聖旨到底怎麼到達目的地的,他隻關心聖旨在适當的時候到了适當的地點,完成了适當的任務(當然也有抗旨的時候,呵呵)。我們可以把這個聖旨了解為一個指令模式的最高層的接口,而皇上下達的每個指令都是一個聖旨。至于聖旨裡面到底是論功行賞還是滅門九族我們就無從知曉了,也就是說,皇上可以很容易的下達很多不同的口谕,而每個口谕不管内容是什麼都是聖旨。怪不得皇上這麼大的權力,原來他也懂得模式:)