zoukankan      html  css  js  c++  java
  • Hybris service layer和SAP CRM WebClient UI架构的横向比较

    我把Hybris service layer理解成CRM WebUI的API layer.
    The Hybris ServiceLayer is an API for developing services for SAP Hybris Commerce. It provides a number of common services, while allowing you to extend these or develop your own.
    The main characteristics of the ServiceLayer are: - 我逐条和CRM WebUI框架比较

    (1) It is based on a service-oriented architecture.
    Jerry: Hybris里的SOA架构和BYD不一样,后者支持不同的deployment unit部署在不同服务器上, cross unit的应用通过message通信。
    Hybris是一个monolithic应用,所有的extension物理上都运行在一台server,一个session里(不考虑cluster mode)

    (2) It provides a clean separation of business logic and persistence logic.
    Jerry: CRM WebUI也满足。

    (3) It provides a number of services, each with its well-defined responsibilities.

    (4) 这个描述太generic,大多数framework的某个layer都应该满足。

    (5) It provides a framework to develop your own services and to extend existing ones.
    Jerry:CRM WebUI的API和Genil layer也支持extensibility

    (6) It is heavily based on the Spring Framework.
    Jerry: 这是Hybris的特色和强大之处,抱Spring的大腿

    (7) It is based on common patterns, such as interface-oriented design and dependency injection.
    Jerry: CRM WebUI也满足。

    (8) It is the layer where partners should implement their business logic.
    Jerry: CRM WebUI也满足。

    (9) It provides hooks into model life-cycle events for performing custom logic.
    Jerry: ABAP没有build一说,也不需要在class activate的时候执行post操作。没有这种use case.

    (10) It provides hooks into system event life-cycle events such as init and update process.
    Jerry: 同8

    (11) It provides a framework for publishing and receiving events.
    Jerry: CRM WebUI里大量使用到的event subscription和issue就是CL_CRM_BOL_ENTITY_COL的focus_changed event.

    上图的client是这四种entity的通称:

    (1) Page Controllers of an MVC framework
    (2) Web Service clients
    (3) Scripts
    (4) Other services

    三种service:

    (1) Business Services implement business use cases, such as cart handling or back order.
    (2) Infrastructure Services provide the underlying technical foundation, such as internationalization, import, export, and so on.
    (3) System services provide functionality required by the ServiceLayer, such as model handling and session handling.

    要获取更多Jerry的原创文章,请关注公众号"汪子熙":

  • 相关阅读:
    CountDownLatch原理分析
    Maven項目打包報錯:Plugin execution not covered by lifecycle configuration
    Java实现编辑距离算法
    MQ的深入理解
    关于HashMap
    JVM基础详解
    Java实现Mysql的 substring_index 函数功能
    Kettle发送邮件
    Kettle实现从数据库中提取数据到Excel
    bzoj1596[Usaco2008 Jan]电话网络*
  • 原文地址:https://www.cnblogs.com/sap-jerry/p/12389125.html
Copyright © 2011-2022 走看看