从无名到有名,老子这句话放进 SAP RAP 开发里,就是一条从混沌业务到可演进业务对象的路
在做 SAP ABAP RESTful Application Programming Model 开发时,我最怕的不是代码难写,而是业务一开始就被过早命名。一个字段刚从用户访谈里听到,就急着建成 CDS element;一个动作刚在会议里被提到,就立刻写成 action;一个状态还没弄清生命周期,就已经放进 behavior definition。表面上看,系统很快有了名字,有了实体,有了服务,有了 URL,有了 SAP Fiori Elements 页面。可过一阵再回头,才发现这些名字像钉子一样钉在系统里,迁移难,扩展难,兼容难,连一次普通的字段重命名都可能牵动 UI、OData metadata、authorization、test data、integration consumer 和后续版本兼容。老子说,「无名,天地之始;有名,万物之母。」这句话放到 RAP 里,恰好可以解释一件很工程化的事情,好的 RAP 不是从命名开始,而是从尚未命名的业务秩序开始;可系统真正能运行,又必须走向清晰、稳定、可发布的命名。无名不是没有设计,有名也不是随便起名。无名是一段业务尚未凝固的观察期,有名是一套模型、行为、接口和服务边界被确认后的出生证明。SAP 官方资料把 RAP 定位为 ABAP Cloud 的重要组成,用来构建 clean core compliant、cloud-ready 的业务应用、服务和扩展,并且覆盖 SAP BTP ABAP Environment、SAP S/4HANA Cloud 以及 SAP S/4HANA 等场景;RAP 也用于构建 transactional SAP Fiori apps、OData-based services 和 extensions。这个事实很关键,因为 RAP 一旦被用于云就绪和 c