我以前写过一篇文章,介绍了我日常工作和学习中使用 ChatGPT 的一些技巧:
与其整天担心 AI 会取代程序员,不如先让 AI 帮助自己变得更强大
为代码生成对应的单元测试代码
利用 ChatGPT 帮助自己研读经典框架的源代码
代码重构和性能优化
阅读正则表达式觉得头疼?让 ChatGPT 来替我们阅读
利用 ChatGPT 帮助自己入门一个相对比较陌生的技术领域
因为我确实感觉到 ChatGPT 让我的日常工作效率得到了提升,所以我也没有停止对 ChatGPT 使用技巧的积累。因此打算写个系列,把我每天新学到的技巧找个地方统一记录下来。这个系列如无特殊说明,都是基于 ChatGPT 3.5 来介绍。
假设我想写一篇文章,我给 ChatGPT 喂四段话,算是文章的提纲,然后期望 ChatGPT 按照这个提纲展开来写。
我给 ChatGPT 发送的初始 Prompt 如下:
我会给你发送若干段话。每段话发送完毕后,你必须记住这段话的内容,并且回复我,“我已经收到第N段话”,但不需要向我重复这些话的内容。其中N需要被该段话的实际序号所替代,比如替代成第一段话,第二段话,等等。
当我发送“我已结束”后,你要立即开始将这若干段话作为一篇文章的提纲,详细展开来,写一篇字数不少于 2000 字的技术类文章,并把文章发送给我。
下面是我给 ChatGPT 发送作为提纲的四段话:
-
伴随着 SAP R/3 在企业管理软件领域大放异彩之后,ABAP 也就有了我们如今熟知的全称:Advanced Business Application Program —— 高级业务应用程序编程。
-
1979 年,SAP发布了第二代 ERP系统,即 SAP R/2. ABAP 在 SAP R/2 的开发过程中发挥了重要作用,伴随着 ABAP 调试器、屏幕编辑器的出现,俨然已成长为一个完备的集成开发环境。
-
SAP R/3 于 1992 年发布,是 SAP ERP 系统的客户机/服务器版本,后来成为 SAP 最受客户欢迎的产品之一。SAP R/3 从某种程度上说树立了 ERP 软件的行业标准:很长一段时间内,SAP 几乎成为了 ERP 的同义词。
-
现代 ABAP 的一大创新之处,是 ABAP 与 SAP HANA 数据库的交互,以及为了支持 Fiori 和其他 Web 应用程序开发而创建出新的编程模型,比如 ABAP Programming Model for SAP Fiori,以及 Restful ABAP Programming(RAP)。
依次喂给 ChatGPT:
这里有个小插曲:我发送了“我已结束”的指令之后,ChatGPT 虽然答应的好好的,让我“稍等片刻”,然而它却立即结束了当前的会话,这不是敷衍我吗?
于是我也体验了一次当老板的感觉,发话道:“你写好的文章在哪里?”
ChatGPT 这才如梦初醒,将我要的东西发给了我:
有朋友可能会不理解:为啥要这么麻烦?我一次性把四段话一起发送给 ChatGPT 不就行了吗?
和编程一样,我们要考虑到 ChatGPT 接收 Prompt 的边界情况。假设我们想提供给 ChatGPT 的不是短短的提纲,而是长篇大论的素材,期望 ChatGPT 根据这些素材写作。根据我的实际测试,一次喂给 ChatGPT 的数据有尺寸限制,超过这个限制则报错:
The message you submitted was too long, please reload the conversation and submit something shorter.
我把 ChatGPT 写好的文章全文摘录如下,大家把它和我的原创文章 ABAP 真的会过时吗?聊聊 ABAP 的过去,现在和未来比较一下,你们觉得两篇文章各有什么优缺点呢?
标题:ABAP:企业管理软件领域的强力编程语言
作者:ChatGPT 3.5
摘要:ABAP(Advanced Business Application Programming)是一种强大而广泛应用于企业管理软件的编程语言。从其诞生伴随着 SAP R/2 到如今的 SAP R/3 和现代化的 ABAP 编程模型,ABAP 在企业管理软件领域扮演着重要角色。本文将探讨 ABAP 的历史、发展以及与 SAP HANA 数据库和 Fiori 应用程序的整合,展示了其在企业应用开发中的重要性。
第一节:ABAP的起源与发展
ABAP的全称是Advanced Business Application Programming,起初是作为SAP R/3系统的一部分而诞生的。SAP R/3于1992年发布,成为SAP ERP系统的客户机/服务器版本,也是当时最受欢迎的企业管理软件之一。ABAP在SAP R/2和SAP R/3的开发过程中发挥了重要作用。随着ABAP调试器和屏幕编辑器的出现,ABAP逐渐成长为一个完备的集成开发环境,为企业应用的开发和定制提供了强大的工具和环境。
第二节:ABAP与SAP HANA的整合
现代的ABAP在与SAP HANA数据库的交互方面做出了重大创新。SAP HANA是一种内存数据库和数据处理平台,它提供了高速的数据存储和处理能力。ABAP通过与SAP HANA的整合,可以利用其强大的计算能力和优化的查询性能,加速企业应用的数据处理和分析过程。ABAP程序可以直接访问SAP HANA数据库,并利用其列式存储和并行处理能力,提高系统的响应速度和效率。
第三节:ABAP编程模型与Fiori应用程序开发
为了支持现代的Web应用程序开发,ABAP引入了新的编程模型。其中,ABAP Programming Model for SAP Fiori和Restful ABAP Programming (RAP) 是两个重要的模型。ABAP Programming Model for SAP Fiori提供了一种基于业务对象的编程模型,使开发人员能够更轻松地创建和扩展SAP Fiori应用程序。它提供了一套标准化的设计模式和开发工具,帮助开发人员快速构建响应式、可扩展和易于维护的应用程序。
另一方面,Restful ABAP Programming (RAP) 是一种面向服务的编程模型,充分利用了RESTful架构的优点。RAP通过提供简洁的API和数据模型,使开发人员能够轻松构建面向业务的RESTful服务。它将业务逻辑与数据访问分离,实现了松耦合的架构,使系统更易于扩展和维护。
结论:
ABAP作为企业管理软件领域的强力编程语言,经过多年的发展与演进,已经成为SAP ERP系统开发和定制的重要工具。它与SAP HANA数据库的整合,使企业能够充分利用内存计算和高速数据处理的优势。同时,ABAP编程模型的引入为现代的Web应用程序开发提供了便利,特别是在SAP Fiori应用程序的开发中起到了重要作用。
ABAP的持续发展和创新使其在企业应用开发中保持了重要地位。随着技术的不断演进,我们可以期待ABAP在未来进一步提升企业管理软件的开发效率和功能。无论是在传统的企业资源计划(ERP)系统中,还是在现代化的云端解决方案中,ABAP都将继续发挥其重要作用,为企业带来更高的效益和创新。
这是一篇简要的ABAP技术文章,涵盖了其起源、发展历程以及与SAP HANA和Fiori应用程序的整合。ABAP作为一种强大而灵活的编程语言,为企业应用开发提供了丰富的功能和工具。随着技术的不断进步,我们可以期待ABAP在未来继续发展,为企业管理软件领域带来更多创新与突破。