ChatGPT使用自然语言处理 (NLP)技术,可以像人类一样进行对话。输入一些文本“提示”,可以得到文本形式的回复。让人惊讶的是,它可以根据给定的提示生成代码,并为任何类型的查询提供描述性的答案,它还可以调试输入的代码,并且充当解释器或编译器。
对于程序员来说,ChatGPT无疑是一个好帮手,在开发的很多环节中都可以提供帮助,以输出更高质量的代码。问题来了,如何输入“提示”才能得到更准确、精确的答案呢?以下是我们为大家列出的20 个常见提示词。
解释
ChatGPT可以通过解释所需的概念来在这方面帮助我们。解释提示可用于理解一个概念、一段代码,或者算法的时间或空间复杂度。
例如:解释{概念或函数}在{编程语言}中的工作原理。
解释一下下面的{编程语言}代码是如何工作的{代码片段}
解释以下用{编程语言} {代码片段}编写的代码的时间和空间复杂度
语法
软件开发人员使用各种技术堆栈。因此,在学习新的堆栈时记住每种语言和技术的语法变得很困难。这正是 chatGPT 发挥作用的地方,它通过适当的示例为编程语言的元素提供正确的语法。
例如:{编程语言}中的{语句或函数}的正确语法是什么?
修复Bug
软件开发中的大部分时间都花在寻找代码中的错误上。它不仅会影响个人的工作效率,还会延迟代码的发送。使用此提示,可以轻松了解代码中的错误并获得调试帮助。
例如:如何修复以下{解释功能}的{编程语言}代码?{代码片段}
应用案例
在编码时了解行业的应用案例非常重要。这使得代码易于阅读,并且还有助于在组织发展时 维护代码库。
我们可以要求 ChatGPT 提供一组在针对特定编程语言进行编码时要遵循的规则和建议。
给出一些用{编程语言}编写{概念或函数}的应用案例。
优化
持续优化你的代码,因为它可以提高程序的性能并有助于节省资源。优化可以是行数或空间和时间复杂度方面。
例如:优化以下{编程语言}代码,该代码{解释了功能}:{代码片段}
示例 – 代码行数优化
在这里,ChatGPT 建议使用列表理解
示例 – 时间复杂度方面的优化
生成代码
我们还可以输入具体的要求,让ChatGPT为我们直接编写一段代码。此时,准确并详细的描述需求对于获得期望的结果至关重要。
用{编程语言}编写一个程序/函数来{解释功能}
代码转换
我们经常需要将给定的代码从一种编程语言转换为另一种编程语言。当组织改变其技术堆栈时可能会出现这种情况。在学习新的编程语言时,了解如何用另一种语言实现相同的任务也很有帮助。
例如:将以下{编程语言1}代码转换为{编程语言2}:{代码片段}
让 ChatGPT 充当解释器
ChatGPT 还可以进行角色扮演,例如充当解释器或编译器。我们不需要为此下载任何东西来实现这一点。这允许我们在浏览器本身中编写代码。它可以在使用命令进行测试/实验或学习时使用。
例如:我希望你表现得像一个{编程语言}解释器/编译器。我会给您{编程语言}代码,您将执行它。不提供任何解释。除了代码的输出之外,不要回复任何内容。第一个代码是:{code}
网页设计灵感
我们可以向chatGPT询问有关我们网站的UI/UX设计的任何建议,以便在没有设计团队实际帮助的情况下,更好地了解它。
例如:我希望你担任网页设计顾问。我将为您提供与需要帮助设计或重新开发其网站的组织相关的详细信息,您的角色是建议最合适的界面和功能,以增强用户体验,同时满足公司的业务目标。您应该利用您对 UX/UI 设计原则、编码语言、网站开发工具等的知识,为项目制定全面的计划。我的第一个请求是“我需要帮助为{目的}创建一个{网站类型}。”
提出一个框架
在开始项目之前选择正确的框架或库非常重要。它可以极大地影响项目的性能、可扩展性和复杂性。通常,很难决定使用哪个框架。但是,我们可以利用 chatGPT 来了解一下。
例如:您能为我的网站推荐一个合适的前端框架/库吗??我正在制作{类型的网站}。
编写代码注释
开发程序时写注释非常重要。这些有助于稍后理解特定函数或代码块的功能,也可以帮助新加入者理解代码库。ChatGPT 可以帮助我们为给定的代码片段生成适当的注释。
例如:重新生成下面的代码片段,但请在每行代码中添加注释{输入代码}
生成自述文件
自述文件是存储库的重要部分,其中包含存储库的用途以及下载和/或使用项目(如果有)的指南。编写好的自述文件有助于吸引更多人访问您的存储库。
例如:为下面的代码生成文档。您应该包含详细说明,以允许开发人员在本地计算机上运行它,解释代码的用途,并列出此代码中存在的漏洞。{输入代码}
生成数据集
在从事机器学习项目时,数据集非常重要。如果我们无法找到合适的数据集或需要更多数据来训练我们的模型,我们可以使用 ChatGPT 来获取生成的数据,并且也是所需的格式和数量。
例如:生成 {type of dataset} 数据集,其中包含与 {service 或 Product} 相关的 {n} 个数据点,字段包括 {fields}
网页抓取
网络抓取用于从网站收集数据。使用chatGPT,同样可以通过以下方式实现:
例如:使用 Python 和 Beautifulsoup 从 {url} 抓取数据
除此之外,ChatGPT 还可以在软件开发生命周期的不同阶段为我们提供帮助 [ SDLC ]。
规划阶段
在开始项目之前,我们必须计划可能面临的任何潜在挑战、估计成本和时间表,以便我们采取相应行动。ChatGPT 可以通过回答此类问题来帮助定义项目的范围和要求。
例如:我正处于软件开发项目的规划阶段,需要有关[特定任务/挑战]的指导。以下是一些项目详细信息:[提供简要概述、要求、时间表、团队和风险]。
我正在寻求以下方面的见解:[指定软件架构、资源分配、功能优先级和可扩展性规划等领域]。
请提供您的建议,以帮助我有效地进行计划。
分析阶段:准备SRS文件
我们可以使用ChatGPT根据项目描述准备SRS文档。这可以帮助节省大量时间,因为它可以用作软件开发人员可以即兴创作并创建最终文档的框架。
例如:为我的软件开发项目生成全面的软件需求规范 (SRS) 文档。详细内容如下:【提供项目概述、利益相关者、功能需求、非功能需求、假设和约束。】
请生成结构良好的 SRS 文档,其中包含以下部分:简介、范围、功能需求、非功能需求、用户界面、系统架构、数据管理、外部接口、约束、假设和依赖关系。
确保该文件涵盖了项目成功开发的所有必要要求。
设计阶段
我们可以要求ChatGPT根据项目的规范建议合适的数据模型和要遵循的设计模式。数据模型和设计模式是项目的重要组成部分,需要在开始之前明智地选择,否则可能会导致金钱和精力的损失,还可能会延迟项目交付。
例如:我需要为我的软件项目设计有效数据模型的建议。以下是一些细节:[简要描述该项目、关键功能、用户需求、数据源和关系]。
我正在寻求以下方面的建议:[实体识别、属性、关系、规范化和优化]。
请提供您设计有效数据模型的建议
开发阶段
我们可以寻求有关如何从可能陷入困境的点继续进行的建议,或者可以寻求有关扩展项目等的帮助。
例如:我正在开发一个软件项目,需要有关确保可扩展性的建议。详细信息:[简要描述该项目、当前用途和未来增长以及技术堆栈]。
我正在寻求以下方面的建议:[架构、数据库优化、基础设施、缓存/性能优化]。
请提供您的建议和最佳实践,以确保我的项目的可扩展性。
测试阶段
在将代码发送到生产环境之前,测试非常重要。这有助于识别任何可能未被发现的错误或极端情况,从而增强用户体验并防止对组织声誉造成损害。我们可以借助ChatGPT来生成测试用例
例如:您能帮我为此功能编写测试用例{解释该功能}吗?
部署阶段
在这个阶段,一个重要的问题是选择哪种部署策略。部署策略定义了如何向用户显示新版本软件中的更改,以便理想情况下为零停机时间,并且用户几乎不会注意到所做的更改,即用户不会因软件更新而受到任何干扰。我们可以要求chatGPT建议一个最适合我们项目并且可以自我评估的部署策略。
例如:该软件项目的最佳部署策略是什么?{解释一下这个项目}
结论
毫无疑问,chatGPT 可以完成很多任务,使软件开发人员的工作变得更轻松。但是,它不是万能的。我们不能盲目相信它,因为毕竟它还正在进化学习当中,可能无法给出正确的结果。也可能有一些偏见。除此之外,使用 chatGPT 时始终存在相关的安全问题。不应向 chatGPT 提供组织的内部代码,也不应泄露与组织政策或即将开展的项目相关的任何机密内容。
原文:
https://www.geeksforgeeks.org/chatgpt-prompts-for-software-developers/;本文经翻译整理后发布。