上述 2 个缘故因由,每一个都是重新打磨,优化或修正 AI 语句的核心缘故因由。日常,在我阅读一篇文章大概一本书的时间,很多时间,我很盼望可以或许听到来自作者本身的思索和看法,无关对错。由于人总是盼望知道另一个人是怎么思索、选择或举措的,由于很多时间,同类才有参考意义。我也盼望我的书能出现出我的风格和头脑。
我现在正在写一本新书。这本书,其中有很小一部门,可能会让 AI 协助润色,但是主体我会用本身的语言来写作。由于我想让我的书出现出我的头脑和写作风格,别的,我也不想再泯灭时间,去打磨 AI 润色的语句。
开辟 miniblog 项目时的感受
《从零开辟企业级 Go 应用》这本书通过先容一个高质量的实战项目 miniblog 的开辟过程,来先容如何开辟 Go 应用。
在开辟 miniblog 项目时,里面的很多地方也借助了 AI 工具。整体感觉是,AI 工具在编程上的资助会比写作时的资助更大、更有参考和使用代价。
以下是开辟过程中,整体的使用感觉:
AI 项目明确本领偏弱: AI 当前还不能很好的明确整个项目,也无法体系化的给出整个项目的计划和实现;
AI 计划本领偏弱: 当前 AI 还不能很好的从更上层视角去计划软件架构、功能实现方式等。在使用 AI 的过程中,AI 会给出一些计划和实现方法,但这些计划和实现方式很多是网上现有的实现,在我看来,并不是最优解。所谓的最优解,应该是基于现在,进一步升华,AI 当前缺乏思索、升华本领;
AI 天生代码偏低中阶: 在我看来 AI 可以或许给出一些不错的代码实现,但在使用过程中,发现很多实现属于低级、中级阶段的实现方式,如果想到达更高级的实现方法,需要一个有履历的人进一步引导 AI 如何去实现。
AI 是一个好的执行者: 在使用 AI 的过程中, 感觉 AI 是一个很好的执行者。只要你能把你的计划友好的表达给 AI,它便可以很快的天生需要的代码,而且天生的代码很规范、细节思量到位。但是,在天生的过程中,需要你不断引导 AI 以天生预期的代码(相当于你是一个代码架构师)。当然了,最大的利益是,你不用去一行一行的撸代码了,大大进步了开辟服从;
AI 有本身善于的范畴: 在使用 AI 的过程中,发现有些范畴 AI 能带来极大的资助,例如:单元测试用例天生、代码解释天生、代码优化(AI 给出的不少优化,都有参考代价)、具体的搬砖任务。
总结下借助 AI 编程的感受:AI 是一个好的执行者,但不是一个好的计划者。AI 具备计划本领,但计划本领方向于低级、中级阶段,对于一些高阶的计划,乃至创意性的计划,AI 现在本领还很弱,不能满足需求。
如果再让我写一个 Go 实战项目,我的选择如下:
做好一个计划者: 我会饰演好一个计划者的脚色,从项目维度,联合本身的开辟履历等 Token 数非常大的上下文(我脑海中的 Token 数,远超当前 AI 的 Token 阈值),去计划整个项目的架构、开辟方式及具体功能计划;
做好一个指挥官: 根据本身的计划、思索,编写良好的 Prompt 去让 AI 执行。核心点就是,AI 写出来的代码(风格、实现方式、逻辑等)是我想让它写的,只是我本身懒得写而已;
做好一个学习者: 在开辟过程中, 也会实验让 AI 优化代码,参考 AI 天生代码中的好的实现、定名方式等。
人能做到,而 AI 做不到的
上面先容了 AI 的本领。这里再先容下由人主导编写的《从零开辟企业级 Go 应用》课程,相较于 AI 有什么更突出的地方。核心点如下:
课程内容体系化: AI 当前还不能体系化的给出整个项目的计划及实现。本书基于我已往的 Go 项目开辟、架构履历,非常体系的先容了 Go 项目的计划和实现方式,包罗项目开辟中的各个阶段,例如:计划阶段、开辟阶段、测试阶段、摆设阶段等;
课程架构更优:AI 当前可以给出一些小范围的架构计划,但这些架构计划偏初、中级,在我看来并不是最优解。本书基于对其他 Go 项目的计划和实现,基于个人的思索,计划了一个更优的架构和实现方式;
课程实现更优: AI 给出的代码实现可以满足低级大概中级的代码实现要求,但本书,盼望给出一种更高级的计划和实现,以是其中的实现根本都是基于个人履历、思索来计划和实现的;
课程说的是人话: 现在网上充斥了大量的 AI 天生内容,看起来很机械,缺少了一些人的灵魂在里面。在我学习过程中,很多时间,我盼望可以或许看到一个作者本身的思索,而无关对错。如果你想知道一个一线 Go 开辟者的思索和实现,那么可以认真学习本书。