乐趣区

关于abap:SAP-云平台-ABAP-编程环境的前世今生

SAP Cloud Platform 公布后很长一段时间,在 SAP 各大技术社区里,能感觉到 ABAP 从业者们心田一丝隐隐的失落:只管 SAP 和其余 IT 公司一道,大步迈开了向云端转型的步调,在 SAP 云平台上通过 BYOL(Bring Your Own Language)的架构,实现了对业界风行编程语言的反对,这使得领有 Java,nodejs,PHP,Python,Ruby,Go 等编程技能的开发人员们,也能退出 SAP 生态圈这个小家庭。


不过 ABAP 从业者们“被云时代摈弃”的这份难堪,随着 SAP 云平台 ABAP 编程环境的公布一扫而光。SAP Cloud Platform 编程环境和运行时,曾经呈现了 ABAP 的身影:

ABAP 退出 SAP Cloud Platform 编程环境的小家庭,益处是不言而喻的:

(1) 宽广的 ABAP 从业者们终于上车了,大家以前在 Netweaver On-Premises 里的 ABAP 编程技能能够持续在云上发光发热——只管 SAP 云平台上的 ABAP 编程环境里呈现了许多新的关键字,新的编程模型,然而 ABAP 毕竟还是 ABAP,这些新常识对于 ABAP 从业者来说,学习和把握的速度比非 ABAP 编程人员要快得多。

(2) 为基于 ABAP 技术栈的 SAP 产品的扩大,提供了一种新的开发方式。这一点稍后会开展细说。

(3) 为以前大量存在于 ABAP On-Premises 环境的二次开发代码提供了迁徙到云上的可能性。

(4) SAP Cloud Platform 上提供的品种丰盛的企业级微服务,机器学习等弱小性能,现在也能够被同在 SAP 云平台上的 ABAP 编程环境生产了。

现在 SAP Cloud Platform 上可供选择的编程语言又削减了 ABAP,那么咱们接到开发工作时,依据什么样的根据从工具库里筛选应用的编程语言呢?

SAP 给出的倡议就是:具体问题具体分析。

企业开发人员具备的技能,企业现有的零碎和软件资产,以及待开发的用户需要和波及到的业务场景,都会影响编程语言的抉择。一般来说,ABAP 和非 ABAP 编程语言各具劣势,各有各的实用场合:Java,JavaScript 和 Python 等语言的开发生态圈十分凋敝,Github 各种开源的组件,工具库,能够说但凡你能想到的点子,生态圈简直都早已有人做进去了,因而抉择这些编程语言开发,咱们能够防止反复造很多轮子;而 SAP 云平台上的 ABAP 环境,借助 CDS view,Restful ABAP Programming 模型等 ABAP 语言提供的原生个性,在扩大基于 ABAP 技术栈的 SAP 产品时劣势显得特地突出。

SAP 云平台 ABAP 编程环境的一种典型的应用场景,就是以 Side-by-side 形式对 S /4HANA Cloud 进行扩大。

首先须要解释何谓 side-by-side Extensibility.

传统的 SAP 产品的二次开发形式是,ABAP 开发者们通过 SAP GUI 登录到 ABAP On-Premises 零碎,间接在被扩大的零碎上通过 Netweaver 提供的各种加强技术进行二次开发。

S/4HANA Cloud,SAP Marketing Cloud,SAP Cloud for Customer 等后盾基于 Netweaver ABAP 的云端解决方案,还提供了基于浏览器的面向 Key User 的扩大工具,使用者在浏览器里通过简略的向导步骤,也能实现对所在的云产品进行加强的需要。

这种加强形式,应用的开发工具由被加强利用自身提供,生成的资源和被加强的 SAP 产品都位于同一服务器上,因而称为 In-App 加强形式。这种形式简略易用,须要的技术门槛绝对较低。

与此绝对应的则是 SAP Cloud Platform ABAP 编程环境提供的 side-by-side 加强形式。这种加强形式通常的步骤是首先在本地开发环境实现开发,而后再部署到 SAP 云平台,SAP Kyma 等平台上,因而二次开发内容最终部署和运行的环境,和被加强的 SAP 产品从物理上看是松耦合的,不在同一服务器上。

上图即 SAP S/4HANA Cloud 通过 side-by-side 形式进行扩大的示意图。位于 SAP 云平台上的 ABAP 加强通过云平台提供的 Connectivity 服务(能够了解成 ABAP On-Premises 里的 Destination), 生产 SAP S/4HANA Cloud 的 OData 服务,实现对后者零碎数据的增删改查和 Action 操作。

Side-by-side 加强形式使得作为数字化外围的 SAP S/4HANA 的利用代码放弃 Stable & Clean,同时又能让二次开发工作者紧跟技术倒退的趋势,应用业界最新最风行的技术进行 SAP 产品加强。

至此,SAP Cloud Platform ABAP 编程环境和 S /4HANA Cloud 的区别和关系,想必大家应该能了解了吧。前者是加强 / 集成工具,后者是被加强的零碎。

这种加强形式十分合乎征询公司 Gartner 的大佬,John MacDorman 提出的 IT 双模型的交付模式,即采取两套独立治理却彼此互补的模式,一套交付模式采纳传统成熟的软件开发形式,需要变动频率绝对较低,强调交付的强壮和稳定性。另一套则兼走偏锋,遵循“天下文治,唯快不破”的现实,强调麻利,翻新,摸索,速度,高频次的迭代。

笔者过后看了 Google 上对 Gartner 提出的 IT 双模型的介绍文字,第一反馈就是:这不就是在形容 SAP 智慧企业概念里的“数字化外围”(SAP S/4HANA)和翻新平台 (SAP Cloud Platform) 的关系吗?


Side-by-side 这种加强内容与被加强的零碎离开部署的灵便形式,使得从实践上来说,如果加强开发的设计得足够通用,从商业模式上说,其就具备了能够独自拿进去售卖的可能性。

咱们通过上面的链接拜访 SAP 利用核心:

https://www.sapappcenter.com/…

顺次勾选右边的 SAP Cloud Platform Services 和 ABAP,即可列出所有应用 SAP Cloud Platform ABAP 编程环境开发的 partner 解决方案。


总结

本文首先从 SAP 云平台引入 ABAP 技术栈的反对开始说起,具体介绍了 ABAP 退出 SAP 云平台编程环境大家族的初衷和意义。接着具体介绍了 SAP 云平台 ABAP 编程环境 side-by-side Extensibility 扩大形式的理念和实际操作,引出了 Gartner 公司 IT 双模交付模型的探讨。

退出移动版