最近用 AI 生成了一套基于微信服务号的访客管理系统,但是一周改了近 100 个 bug,我感觉很多地方浪费了太多时间,这里先记录一下问题
需要设计规范
最初使用腾讯的 Miora (类似 Figma)生成了交互原型,或者说是设计稿。但其实,这套虽然看起来挺好看。但是其实缺乏了设计规范,例如:
- 字体大小规范
- 导航栏的多余设计。与微信内导航冲突
- 太多断头路。缺乏消息模版通知落地页的继续操作入口
而且还很耗费 token,还不如不用 Miora, 直接让 AI 生成 HTML。至少几年前的 AI 都知道需要先生成设计规范 markdown,方便调整。
而且,我感觉,还是需要类似 bootstrap 或者 tailwind css 这样的框架来规范,虽然丑了一点,但是至少不会犯低级问题。我理解不了文字用 12px 是给人类看的吗。。。
Lint 工具规避低级代码问题
生成的代码里,使用了一个未定义的 js 页面变量,导致部分状态下显示正常,部分状态下白屏。定位了半天发现是使用一个未定义的 vue 变量。
为了规避这类问题,我让 AI 自己加上了 Lint 检查工具,并且加到了全局提示器中 .codebuddy/codebuddy.md, 要求每次修改了代码文件之后,必须运行 Lint 工具。
虽然规避了这种低级问题,但是这远远不够。我看好多流行的 skill,要求 TDD 的开发模式,就是必须先写单元测试,然后才去实现。距离这步还太远。但,这是非常合理的。
安全漏洞
开发完成后,上线前,领导要求出具一份安全检测报告。我猜测应该包含两部分:
- 系统漏洞扫描。例如 Linux 系统级漏洞,及 Nginx Web Server 之类的漏洞扫描。
- 业务逻辑代码的漏洞扫描。
我让 AI 分析了一下,一堆低级的逻辑漏洞。比如,微信服务号静默授权登录流程,这些基础流程,还不如我的祖传代码靠谱。然后还找到了一堆 Ruoyi 框架的漏洞,这些非主流框架真是一言难尽。又浪费了半天时间来搞定漏洞。
最后
先整理到这里吧,我感觉还是需要积累自己的开发规范和实现框架,避免把这些基础问题犯一遍,非常浪费时间。
关于作者 🌱
我是来自山东烟台的一名开发者,有感兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊,或者关注我的个人公众号“大象工具”, 查看更多联系方式