caoz的梦呓

零基础AI编程进阶篇

先说个题外话,前段时间我用AI开发的产品,Boringtime新版本上线后,很快从服务端接受的数据看到了不少诡异的现象,但是我自己无法重现,就很焦虑,后来几经周折联系到了那个玩家,对方也是我的粉丝,给我提供了他的操作截屏视频,我才恍然大悟,快速重现了问题,先后处理了4个bug,也很感激的给对方发了一个红包。
为什么我自己测试不出来呢,因为这个游戏我玩的太熟练了,最高难度关卡每次都是一遍过,而所谓诡异问题的出现都是在失败后重新开局的过程中系统缺失了一些必要的数据清理。所以我测试这么久,都没意识到,游戏失败后重开会有什么其他问题出现。
题外话但也是和本文主题有关,有时候我们经常存在这样的盲区,就是自己会无视一些自己认为很基础,很简单的问题,但这些问题在别人眼里,可能并不是这样的,这也是一种同理心的缺失。所以今天我要提的话题,原本我认为属于没必要单独展开说的,对于一些有经验,有意识的人来说,可能都是通篇废话,但是最近我才觉得,对于另一些人来说,可能对他们自己的学习困局,还是会有所帮助的。
我之前讲过,AI既是你最听话的助理,也是你最有耐心的导师,之前多篇文章提到的,都是如何把它当助理,怎么指挥AI工作,那么今天,说说,如何向AI学习;我之前文章也提到过,零基础用AI编程,刚起步是没问题的,但你不能满足于零基础,需要在这个过程中不断提升自己。零基础可以用AI编写出原型产品,以及不需要持续维护的简单产品;但如果你需要做一个具有一定复杂度的,具有持续维护性的产品,零基础开发者基本上是无法掌控的,这时候,你需要不断提升自己,而AI,是可以辅助你跨越这个障碍的。
我坦白我不是零基础,但我也说过我对移动端开发完全没经验,对交互设计也非常不擅长,所以现在我遵循AI的建议,使用我从未接触过的前端框架,其实很多时候我也是疯狂利用AI补课。说一下我经常会问AI的问题,我相信对不少零基础开发者来说,是有意义的。请注意,这些问题的目的不是直接让AI干活,而是让你更好的理解该如何进一步指挥AI干活,以及更好的理解你的产品所面临的问题和风险。
案例1:
提示词:请检查一下网页交互和数据传输部分,是否存在严重的安全隐患,并解释给我。在我确认前不要修改。
解读:这时候AI可能会给出多个严重级别不同的安全隐患。但这只是开始。
提示词:请继续解释这些安全隐患潜在的危害和利用途径,并且告诉我最简防护策略是什么,在我确认前不要修改。
解读:继续深入了解问题所在,并开始了解防护策略的可行性。但这也不是最终。
提示词:请讲述你所说的防护策略,是否会带来额外的风险或者用户使用上的困扰,是否对现有功能和性能带来额外的代价。并给出不同策略的详细对比。
解读:再度理解安全策略的成本代价,这点也很重要。
提示词,好了,请按照你所说的方案*进行修复和处理,注意最小化修补,不要影响现有功能和性能。
这是一个完整的,适合小白的流程,但这个过程中,你需要真正理解风险所在,修复方案的可行性和原理,如果中间不理解,可以继续按照你习惯的方式提问,直到理解为止。
案例2:
提示词:请检查代码是否存在冗余和废弃的部分,仔细核对是否可以安全裁剪删除,并告知我,等我确认后进行删除。
提示词:请再度确认你说的某某冗余是否可以安全删除,不会造成其他业务的关联影响。
提示词:好,可以删除某某冗余/废弃代码,注意不要影响正常功能。
提示词:请检查是否存在一些调用和处理流程有相似逻辑,重复度高,具有合并可能,请先罗列相关部分的合并可能性和合并方案,等我确认再执行操作。
提示词:请继续讲解不同方案优劣和风险所在,以及我未来可能需要什么什么功能或者特性,哪个方案具有更好的兼容性。
讲解,不但要进行代码裁剪与合并,还要理解扩展性的概念,如果想要做一个持续可维护的项目,如果不做裁剪合并,不做兼容性考虑,AI的代码很快就会变的过于冗长和杂乱,而且废弃代码会严重影响后续的AI开发和修改。此外,不合理的架构会导致后续维护,测试都会有巨大的成本,一个好的架构,当你进行产品更新的时候,真的可以用简单的测试来验证新的功能和特性;但是一个烂架构,可能一点点改动就会让你前面无数工作突然面目全非。
案例3:
提示词:请帮我看看服务端请求频次和数据传输是否有优化的空间,能否提供一些简单方案,我先确认再修改;
提示词,我有个想法,用什么什么方法来调整传输模式,是否可以带来成本下降,请解释给我;
提示词,我现在的产品安装包是否有进一步优化裁剪的空间,请告诉我现在哪些库和资源文件占用了最大的空间;
提示词:如果我删掉某某库/资源文件,是否有其他轻简的替代方案,替代方案的风险是什么。
提示词:你说的替代方案我没听懂,请进一步解答其中***的具体含义,以及和原方案的优劣对比。
案例4:
提示词:现在系统生成这个***的效率太低了,是否有更优的算法,在这个领域最好的算法是哪个。请告诉我,先不要修改。
提示词:能否给我按照你说的**算法和..算法,各做一个测试程序,并提供一个压力测试,我想看看二者的效率差距。请不要修改线上程序,做独立的测试程序。
提示词:如果用**算法,对我的这个产品,是否会带来额外的隐患和风险,请解释给我。
案例5:
提示词:目前执行结果为***,明显和我预期的结果不同,请尽快定位问题并解释给我,先不要修改,先定位问题并给我明确的解读,然后告诉我最小修复方案是怎样的。
提示词:这个解读过于模糊,修复方案也不彻底不精确,我不需要兜底方案,我要的是精确的问题定位,现在请在关键位置增加必要的调试输出。
提示词,我已经重现了刚才的问题,贴上去的是你刚才增加的调试输出,现在请根据这个调试结果,再度跟我解释问题,并给出合理的修复方案建议,等我确认后再修改。
提示词,这个方案我不太理解,请解释的更具体一些,特别是这个环节为什么要这样这样做。
提示词,这个方案是否会影响到其他调用,其他业务逻辑,是否可以做的通用性更好一些。
提示词,类似问题在其他游戏中是否也存在,请先查核,并解释给我。
提示词,是否可以用通用的方案处理不同游戏的这类问题,是否可以合并成同一个通用函数,基于不同参数来请求。
案例6:
提示词:请问我这个需求里,数据是怎么存储的,存储格式是怎样的?
提示词:这种存储方式是否可以支持更多的玩家在线,如果我需要承载****人同时在线,这个方式是否可以支持,还是有更好的方案?
提示词:请对比这两个存储方案在****日均用户的情况下,大概的成本差异和性能差异。
提示词:如果未来我想扩展**能力和特性,请问这样的存储方案是否便于扩展。
提示词,我想基于这个数据做额外的业务分析,这个存储格式是否支持我快速实现***的业务分析。
以上,是你从盲目的指挥AI干活,到开始可以粗浅但正确的理解架构,安全问题,数据结构问题,性能问题,可持续性问题。如果你习惯这样的AI 沟通方式,习惯了问清楚再动手,我相信即便是零基础的开发者,也能有很快的成长和提高。
当然,这样操作会比较费token,还是那句话,氪金才能更强!
以上,基本上都是真实的AI沟通场景,当然做了一定的言语美化,实际上我对AI的语气没那么客气,甚至经常很严厉,但毕竟不能教坏小朋友,咱们还要做个正能量的AI编程学习博主,对吧。
很多人会说,你需要非常专业的提示词,才能让AI做出高质量的代码,其实用我的方法,层进式提问,步步理解,步步确认,不需要自己非常专业也能让AI做出高质量的代码。

👇 我的知识星球,三天内自行退出免费100%退款承诺。

Image

Image