发布于 2021-12-28 08:25:16
一个设计模式不是由它给出的作为解决方案的结构建立的。
设计模式为常见问题提供了解决方案。如果两个不同的问题碰巧有非常相似的解决方案,那么它们仍然被认为是不同的设计模式,仅仅是因为它们解决了不同的问题。
发布于 2021-12-28 12:08:32
在中介模式中,您有一个中介对象,它处理由其他对象引发和使用的事件。
即。而不是拥有
MyControlOne.OnClick += myControlTwo.ChangeColour()你有
MyControlOne.OnClick += Mediator.Raise("MyControlWasClicked")
Mediator.Listen("MyControlWasClicked", myControlTwo.ChangeColour());这允许您的所有对象松散耦合。
在前面控制器的模式中。您只有一个控制器来处理所有传入的web请求。
MyWebsite
{
List<IHandler> handlers;
Handle(request, response)
{
foreach( h in handlers)
{
h.Handle(request, response)
}
return response;
}基本上,这就是微软所谓的请求处理程序。这里使用的“控制器”更普遍,这在今天谈论web框架时是很常见的。这更像如果您正在编程您自己的own服务器。
它与中介模式不同。
https://softwareengineering.stackexchange.com/questions/435588
复制相似问题