探索 SAP Cloud Application Programming Model

学习目标

  • 描述 SAP Cloud Application Programming Model

简介

设想您是一家快速成长型公司的项目负责人。您面临数字化转型组织的挑战,同时还需要与现有 SAP 解决方案无缝集成。这正是 SAP Cloud Application Programming Model(CAP)作为您的首选框架发挥作用的地方。

什么是 SAP Cloud Application Programming Model?

SAP Cloud Application Programming Model,通常缩写为 CAP,并不只是您开发工具库中的又一个工具。它是一个全面的框架,旨在缓解传统上与企业级应用程序开发相关的大部分痛点。它附带了一整套丰富的语言、库和工具,用于构建企业级服务和应用程序。它引导开发者沿着一条由经过验证的最佳实践构成的“黄金路径”前进,并为重复性任务提供了大量开箱即用的解决方案

当您深入 CAP 的世界时,会遇到若干将架构维系在一起的关键组件。

该图展示了 CAP 组件的架构。有关这些组件的信息在下一段中提供。

Core Data Services (CDS)

CDS 是数据建模基础设施,也被称为编程模型的支柱,它为您提供了捕获服务定义和数据模型的手段。对于服务定义和数据模型,使用的是

定义语言(Definition Language,CDL)

。更多相关内容请参见

语言参考文档

,位于官方 CAP 文档(

cap.cloud.sap

)中。

Service SDKs

SAP Cloud Application Programming Model 提供了适用于 Java 和 Node.js 的库,您可以使用这些库通过同步和异步 API 提供和消费服务。

这些 SDK 包含与底层平台服务的开箱即用集成,例如身份验证和凭据流,或 SaaS 租户的入职与离职。

Development Tools

SAP 提供了一个名为 SAP Business Application Studio 的整体式基于 Web 的开发环境,它已配备并预配置了 CAP 开发所需的所有工具。除此之外,也支持在 VS Code 或 Java 专用 IDE 中进行本地开发。

Databases

对于 CAP 应用程序的持久层,您可以在多种可用的数据库选项中进行选择。SAP HANA Cloud 是首选。不过,也可以使用 PostgreSQL 或 SQlite(用于本地开发)等其他技术。

Frontends

作为一个全栈框架,CAP 对多种前端技术开放。SAP Fiori 得到完全支持,但也可以将 Vue.js、Angular 或 React 等其他 UI 框架置于您的服务之上。

Infrastructure

有两种技术栈可用:Java 和 Node.js。可以部署到 SAP BTP, Cloud Foundry Runtime 或 SAP BTP, Kyma runtime。

Platform Services

SAP BTP 服务可以通过 SDK 进行集成和消费。

重要 CAP 资源概览

作为 CAP 开发者,您应熟悉一些关键的 CAP 资源,以便入门或探索高级场景。第一个是名为 CAPire官方 CAP 文档

CAPire - Official Documentation 页面的截图。

CAPire 中,您可以找到 CAP 针对 Node.js 和 Java 的所有方面内容。在 GitHub 上有大量初学者和高级示例项目可供使用。

CAP Node.js 发布周期

CAP Node.js 的发布与 Node.js 发布时间表相关联。CAP 的版本管理同样基于语义化版本(semver),而语义化版本又基于版本号 MAJOR.MINOR.PATCH。各个元素的递增方式如下:

  • MAJOR CAP 的新主版本12 个月发布一次(通常在 5 月左右)。在启动新项目时,强烈建议采用最新的主版本。旧版本仅接收关键缺陷修复(PATCHES)。

  • MINOR 处于活跃状态的主版本会获得每月次版本更新。这些次版本更新包含在同一主版本内向后兼容的功能更新。因此,CAP 框架的公共 API 不会发生破坏性变更。

  • PATCH 在官方活跃版本与维护版本之间,会定期发布补丁版本以修复缺陷。

该图展示了 2022 年至 2025 年时间轴上的 CAP 发布计划。

在 CAP 文档的发行说明部分中,可以阅读更多关于该时间表的内容并查看变更日志。