代码之家  ›  专栏  ›  技术社区  ›  miceuz

应用层和业务逻辑层有什么区别?

  •  53
  • miceuz  · 技术社区  · 15 年前

    应用层和业务逻辑层有什么区别?我理解业务层提供特定于业务的服务,而应用层将业务服务和服务结合起来,并向最终用户提供服务(Web服务、UI等)。我说得对吗?

    6 回复  |  直到 6 年前
        1
  •  63
  •   Mark Seemann    10 年前

    听起来不错。

    这个 业务层 实现 域模型 在一个 边界技术中性 方式。换句话说,它不依赖于任何特定的UI或与服务接口相关的技术,例如Web库或窗口化API。您应该能够使用任何类型的应用程序(Web、富客户机、Web服务等)的业务层。

    这个 应用层 在业务层和边界技术之间架起桥梁。

        2
  •  20
  •   Justin Ethier    15 年前

    总结如下:

    • 应用程序层由特定于此应用程序的元素组成。因此,它将包含UI、UI的后端处理以及应用程序和业务逻辑层之间的任何绑定。在一个完美的世界中,这个层不包含任何业务域逻辑。

    • 业务逻辑层(BLL)包含特定于业务域的逻辑。另外,如果您要创建一个单独的BLL,那么这个层应该包含其他应用程序以及这个应用程序可以使用的逻辑。例如,一组公开定义良好的API的Web服务。这会将BLL与您的应用程序分离开来,并允许您将来灵活地在其上构建其他应用程序。

        3
  •  2
  •   Javier Parra    15 年前

    据我所知,业务层负责业务决策,也就是涉及客户机协议的逻辑。

    应用层是与业务决策无关的原始流程。

        4
  •  1
  •   mehdi ghadimi    11 年前

    在业务层的经典分层中,我们有:

    -业务规则 -安全 -用户活动登录 -事务管理…

    功能请求+非功能请求=业务代码

    在DDD中,诸如业务规则和业务逻辑之类的功能需求保持在域层中,并且 非功能需求(如安全和用户活动登录)保留在应用程序层中

        5
  •  0
  •   Big Endian    15 年前

    我认为它是基础设施。根据应用程序的不同,它可以包含用于配置、报告、UI外壳等的管道。

        6
  •  -1
  •   Pang Ajmal PraveeN    6 年前

    在我看来,业务逻辑和应用程序逻辑的区别在于:业务逻辑管理数据,应用程序逻辑管理用户。

    __ https://www.bennadel.com/blog/2436-what-the-heck-is-business-logic-anyway.htm#comments_41200