Hybris service layer和SAP CRM WebClient UI架构的横向比较

扶醉桌前 提交于 2020-02-29 01:55:35

我把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的原创文章,请关注公众号"汪子熙":

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!