AI 代码的情况较为复杂,具体表现如下:
单独给AI从零开始写一些小功能没有任何问题,相信这类案例已经不少了,但是《玩具帝国》的情况不足以让AI从零开始,而AI还没到可以完全写出程序架构的时候。如果让AI给我写小功能的话,我写的程序框架又比较复杂,而现在的AI还不足以把我所有的程序框架学会,所以我的解决方案是,把不方便配表而又需要撰写的代码交给AI。这种代码的特点是简单、模板化、多是调用API,只牵涉小部分的特殊逻辑。以Buff系统为例,游戏里的Buff特别多,有些Buff带有不同的执行逻辑,不方便统一配表,撰写这些Buff的代码又非常耗时。试了下用Cursor让它仿照我的代码写一些Buff,发现生成结果可以直接用。不过目前Cursor生成复杂代码还需要复杂的前期调教,多开几次之后觉得很麻烦,用多了之后发现还是ChatGPT比较方便。以下面这段代码为例,我给出的模板代码是对ProducebleCombatUnitBase单位的Attack、Defence、Speed属性进行调整:我将多段类似的代码喂给AI后,询问它是否学会了,并让他总结规律:然后,尝试让它撰写一个类似的:Then please write a Buff,which acts on a Musketeer,and Musketeer is a kind of unit.What it does is make its CostFood 1.5 times what it was.
生成性AI作为程序员的助手是最早的应用之一。它的工作方式是:一个模型在大量的代码库(例如,GitHub上的所有公共仓库)上进行训练,然后在程序员编码时给出建议。这些结果是非常出色的。实际上,可以合理地预期这种方法将成为未来编程的代名词。生成的代码:对不使用分号的攻击具有安全防护然而,相对于我们下面将介绍的图像生成,生产力的提升相对较小。其中一部分原因,如上所述,是在编程中(实际上,在更广泛的工程问题中也是如此,但在这篇文章中我们关注编程)正确性至关重要。例如,[最近的一项研究发现](https://arxiv.org/abs/2108.09293v2),对于匹配高风险[CWEs(常见弱点枚举)](https://cwe.mitre.org/about/faq.html)的场景,40%的AI生成的代码包含漏洞。
代码块对于非程序员来说运用有一些难度,但是如果你愿意折腾,其实在AI时代,学习一些基础的语法就足够了,因为具体的逻辑可以让AI来帮你写。这里的Python代码就是AI帮我写的(我是Java开发,不会Python)