作为一名程序员,你一定有过这样的经历:排查某个 bug 花费了好几个小时,在各个搜索引擎尝试搜索,浏览了几十甚至上百个网站,结果搜到的答案千篇一律,没有一个说到点上。而自从有了 ChatGPT,就可以告别这种窘境,不需要到各个网站搜索答案,也不用在各种技术交流群里“低三下四”地求人。
ChatGPT 在编程方面的表现非常优秀,你可以向它请教各种各样的编程问题,甚至让它帮你写代码,成功的关键取决于你的 prompt 是否写得合适。
假如给 ChatGPT 设定一个角色——软件开发专家,那么它将会如何帮助我们编程,以下我们就来看看 ChatGPT 在软件开发中的实际应用。
输入 prompt:

ChatGPT 输出:

角色已经设置好了,下面看看它的表现如何。
ChatGPT 在生成代码方面非常强大,甚至跟专业程序员不相上下。我们以 Go 语言为例小试牛刀。输入prompt:

ChatGPT输出:
ChatGPT 不仅给出了代码,还提供了注释,并在末尾做了总结。这对于初级程序员或想要学习 Go 语言的小白来说,简直是大大的福利。
如果想快速掌握一门编程语言,阅读并理解别人写的代码是一个不错的选择。然而,如果遇到不懂之处,就会很困扰。而有了 ChatGPT 之后,再遇到这种情况,只需将这部分代码发给它,让它来解释即可。输入prompt:

ChatGPT输出:

ChatGPT 准确解释了这段代码的含义并计算了输出结果。由此看来,ChatGPT 在这方面的能力确实非常不错。程序执行时报错是很正常的一件事,根据报错信息,大多数时候可以确定问题,但有时候报错信息不够清晰,就很难定位问题,这会让开发人员产生极大的挫败感。ChatGPT 的出现让排查错误更加高效。只需将报错信息复制粘贴到 ChatGPT 中,它就会说明出错的原因和错误的含义并给出解决思路或方案,大大节省了我们排查错误的时间。示例如下。
输入prompt:

ChatGPT输出:

可以看到,ChatGPT 准确识别了这段报错信息并给出了解决思路。测试是软件开发的重要环节之一,而编写有效的测试脚本往往很耗时且具有挑战性。ChatGPT 可以简化这一过程,帮助你创建高质量的测试脚本。你可以简单地用自然语言描述想创建的测试场景,指定测试数据和其他细节,ChatGPT 就能按要求自动生成测试脚本,帮助你节省大量时间,而且它提供的代码质量非常高。 输入prompt:

ChatGPT输出:


ChatGPT 很快生成了一个黑盒测试脚本并介绍了使用方法,非常人性化。ChatGPT 还可以帮助开发人员预测代码的潜在风险,识别其中的安全漏洞,而不必先运行它,这可以让开发人员及早发现错误,提高代码质量。输入prompt:

ChatGPT输出:

我们输入了一段代码,ChatGPT 迅速找出了 SQL 注入漏洞并给出了修复方法。一个复杂的代码库可能包含难以理解或修改的代码。重构可以在不改变其外部行为的情况下改进代码的设计。ChatGPT 就是一个能提供重构建议的优秀工具,可以帮助我们写出可维护和可理解的代码。
例如,我们可以向 ChatGPT 咨询如何重构函数,提高其性能。ChatGPT 会分析我们提供的代码并给出修改建议,比如使用内置函数或者算法替换循环,同时删除多余的代码。ChatGPT 还可以用来改善代码的结构,使代码更容易理解和维护。当然,也可以用它来检测不良的代码,避免一些可维护性、可读性和可扩展性方面的问题。
输入prompt:

ChatGPT输出:


ChatGPT 针对我们提供的代码给出了 3 个优化建议,并详细解释了每个方法的具体含义和用法。内存泄漏是常见且令人头痛的问题,还特别难以捕捉和调试。当程序不再需要内存但没有及时回收时,就会发生内存泄漏,这最终会导致性能问题或者安全问题。ChatGPT 可以帮助识别内存泄漏问题并给出修复方法。输入prompt:

ChatGPT输出:

从结果来看,ChatGPT 成功识别内存泄漏问题并给出修复建议。
总之,ChatGPT 是一个强大的编程辅助工具,无论是编写代码、解释代码、排查错误、重构代码,还是检查代码存在的风险和漏洞,ChatGPT 都是开发人员的好帮手。 怎么样,这些简单的方法你学会了吗?
更多超实用高效 prompt,这本书都能帮你!
《ChatGPT高效提问:prompt技巧大揭秘》李世明,代旋,张涛 | 著
本书以通俗易懂的语言,详细介绍了如何编写高质量的提示,引导 ChatGPT 输出优质答案,满足各种信息需求。书中包含详细解释和丰富示例,旨在帮助读者掌握利用 ChatGPT 解决各种问题的实用技能。全书内容分为 6 章,其中前 3 章为基础介绍,后 3 章为具体用法和实战。其中包含 13 个 prompt 常见用法,8 个 prompt 高阶用法,13 个应用场景,提供丰富的实践案例,另外还有 100 个优秀的 prompt 示例可供参考。