设计模式命名法澄清:供应商,服务,经纪人

本文关键字:供应商 服务 经纪人 设计模式 | 更新日期: 2023-09-27 18:09:58

谁能给我定义一下提供者、服务和代理之间的概念区别吗?

我经常编写MVC应用程序,并将大部分业务逻辑卸载给其他类。没有什么特别的,只是传递参数并接收回POCO实例。

给那些为我的控制器执行繁重工作的类一个正确的标签是什么?

设计模式命名法澄清:供应商,服务,经纪人

提供者实际上只是策略模式的另一个名称

通常,当有人提到提供者的使用时,他们是在谈论一些抽象的契约,其中可能存在许多实现。

//As an abstract base class
public void SetupRoles(RoleProvider provider){}
//As an interface
public void SetupRoles(IRoleProvider provider){}
//As a delegate
public void SetupRoles(Action<String> addRole){}

Service通常用来表示一个只有方法的无状态对象。服务可以用作策略,但不一定必须是。

//Plain old service... doesn't even need the web
// CRAZY TALK MAN!!!
public static class RoleService
{
    public static void SetupRoles(){};
    public static String[] GetRoles(){};
}

经纪人实际上只负责…代理。它被设计用于在服务和对象之间移动消息,编排服务之间的交互以保持它们的隔离。

public class Broker
{
    public void SendImportantMessage(Message msg)
    {
        //Do some important processing here
        // Maybe some validation
        NotifySomeOtherServiceOrClassOrMaybeBobFromAccounting(msg);
    }
}

这些似乎是架构模式设计模式;

  • 面向服务的体系结构。

  • Asp.net模式,每个开发人员都应该知道