# 不会写代码,我用 AI 做了一款背单词 APP,还把它上架了 5 个应用市场
今年 4 月,我用 AI 做了一个习惯打卡小程序。
一天开发,零手写代码,最后真的通过审核上线了。
那次经历让我产生了一个更大胆的念头:
小程序能做,那一款真正的 APP 呢?
不是演示几分钟的 Demo,也不是只装在自己手机里的半成品。
我要它有 1.7 万多个单词,有完整的学习和复习系统;能登录、能备份、能支付;有自己的服务器、官网、隐私政策和软件著作权;最后还要通过应用市场审核,让任何人都能搜到。
问题是,我不是程序员,也不会手写代码。
6 月 27 日,我还是打开了 Claude Code ,对 AI 说:
我想把这个背单词原型,做成一款可以正式交给用户的产品。
接下来发生的事,比我第一次做小程序复杂得多。
先说结果
这款 APP 叫 “造个句子”。
目前 Android 版已经在 OPPO、荣耀、华为、vivo上线。打开应用市场搜索 “造个句子”,就可以下载安装。iOS 版还在准备中。

它内置 1.7 万多个精选词条,支持 SM-2 间隔重复、五级记忆评分、造句练习、AI 检查、自定义词库、学习统计、连续打卡和云备份。
写下这篇文章时,项目已经经历了 60 多个版本,核心客户端约 2.8 万行 Dart 代码,还有 31 个测试文件。
而我做得最多的事,依然不是写代码。
是把自己想要什么说清楚,检查 AI 交出的结果,然后在手机上一次次点给它看。

为什么还要做一款背单词 APP?
背单词软件已经够多了。
如果只是换个界面,再做一套“单词—释义—下一个”,这件事没有意义。
我真正想解决的是三个自己也反复遇到的问题:
第一,背过的词很快又忘了。
第二,很多词看见时认识,真正表达时却用不出来。
第三,重复记忆太枯燥,很难长期坚持。
所以我没有先让 AI 画页面,而是先跟它讨论:一个单词到底怎样才算真的掌握?
最后,我们把学习流程拆成了三个环节。
1. 什么时候复习,交给算法
每学完一个词,用户可以选择“不认识、有点难、认识、简单、已知”。
APP 会根据每次反馈,为每个单词单独计算下一次复习时间。越陌生的词越快回来,真正熟悉的词逐渐拉长间隔。
这套逻辑基于经典的 SM-2 间隔重复算法。
用户不用每天研究计划,打开 APP,当天该学什么、该复习什么,已经排好了。
2. 不只认识,还要真的用一次
“abandon,放弃。”
在卡片上重复十遍,不等于你会在句子里用它。
所以 APP 取名叫“造个句子”。每学一个词,都可以马上用它写一句英文。本地规则先检查拼写和词形,用户主动使用 AI 功能时,还可以进一步检查语法和表达。
我越来越相信:一个词真正属于你,不是你能认出它,而是你能把它用出来。

3. 让每一次坚持都有反馈
金币、经验、等级、连续学习、每日任务、热力图……这些功能不是为了把学习伪装成游戏,而是为了让枯燥的重复及时得到回应。
人很难仅靠一个遥远目标坚持,但会愿意完成眼前这一小格进度。
产品方向确定以后,我才让 AI 开始写代码。
这是整个项目里最重要的一步:
如果连用户的问题都没想清楚,AI 写得越快,只会越快制造出一堆没人需要的功能。
一个功能一句话,但一次只做一个
做上一个小程序时,我已经发现了一个笨但有效的方法:一次只让 AI 交一份作业。
这次也一样。
我不会说“帮我做一个完整的背单词 APP”,然后等它一次生成所有东西。
我会把任务拆开:
先设计单词与学习进度的数据结构 再实现闪卡翻面和五级评分 再接入 SM-2 复习调度 再做造句、统计、金币和等级 最后才处理登录、支付、备份和发布
每完成一个阶段,我就在真机上完整走一遍,再决定要不要继续。
我常用的提示词大概是这样:
本轮只实现“五级评分和复习调度”。开始前先检查现有数据结构,说明准备修改哪些文件;实现后运行相关测试;最后列出还需要我在真机验证的操作。不要顺手修改无关功能。
这段话看起来不酷,却比“帮我做得高级一点”有用得多。
AI 编程最关键的能力,不是背多少技术名词,而是能不能把一件模糊的事,拆成一件件可以验收的小事。
真正难的,根本不是把页面写出来
最开始,我以为功能做完,产品就完成了八成。
后来才发现,代码只是其中一环。
如果用户换手机,学习记录怎么恢复?
支付成功了,但客户端没收到结果怎么办?
服务器怎样确认支付回调是真的?
用户要求注销账号时,头像、备份和权益怎样处理?
这些问题没有哪个能靠“按钮能点”来证明已经解决。
我陆续给 APP 接入了微信和手机号登录、支付宝支付、云备份、账号注销和跨设备权益恢复。原本简单的本地工具,也因此有了服务端、数据库、鉴权、回调和安全边界。
中间还有一个很具体的坑。
安装包接近 60MB,而我最初使用的静态部署服务有 25MB 限制。页面能发布,APK 却根本放不上去。
最后只能把安装包迁移到对象存储,让官网动态读取版本信息;服务端后来也从原来的方案迁移到国内云服务器。

这类问题,AI 确实能帮我快速读文档、分析日志、修改代码。
但它不会替我做最后的判断。
尤其涉及账号、支付和用户数据时,我必须知道它改了什么,必须自己验证异常情况,也必须为结果负责。
比写代码更磨人的,是“让别人能下载”
APP 在我手机上运行,不等于它已经上线。
为了进入应用市场,我还需要处理一长串开发以外的事情:
公司主体和开发者认证 软件著作权 ICP 备案与 APP 备案 隐私政策和用户协议 第三方 SDK 与权限说明 应用图标、商店截图和介绍文案 测试账号、审核说明与一次次修改
不同应用市场的要求还不完全一样。
有的平台在意截图尺寸,有的平台会逐项核对权限,有的平台要求补充软著或备案材料。一个字段写得不一致,都可能被打回。
AI 可以帮我整理清单、生成初稿、对照材料,但平台审核不会因为“这是 AI 做的”就降低标准。
当我终于在 OPPO、荣耀、华为、vivo、小米应用市场里搜到“造个句子”时,我盯着屏幕看了很久。
不是因为它已经多成功。
它才刚刚开始,也还没有值得炫耀的下载数字。
真正让我觉得不可思议的是:一个不会手写代码的人,真的把脑子里的想法,做成了陌生人可以搜索、下载和使用的产品。
AI 到底替我做了什么?
它写了绝大多数代码。
也帮我做产品拆解、数据库设计、页面实现、测试、服务器部署、故障排查、协议初稿和上架材料。
以前遇到一个完全陌生的环节,我可能要搜索很久,才能知道第一步从哪里开始。现在 AI 会先帮我画出一张地图,再陪我一段段走过去。
但它没有替我完成这些事:
决定产品究竟解决什么问题 判断一个功能对用户有没有价值 保证 1.7 万多个词条全部可靠 代替真实用户体验操作是否顺手 为支付、隐私和数据安全承担责任 在需求模糊时自动猜中我的想法
所以做完整个项目后,我反而不再相信“说一句话,AI 自动做出一个 APP”这种故事。
真实情况是:
AI 把一个人的执行力放大了,但方向、取舍、验收和责任,仍然在人。
以前,开发常常意味着“我会不会写代码”。
现在,它越来越像“我能不能把问题想明白,并把结果验收清楚”。
这可能才是 AI 编程真正改变的东西。
如果你也在背单词
“造个句子”目前已经上线 Android 各大应用市场。
如果你正在准备四六级、考研、雅思、托福,或者只是想系统扩大词汇量,可以打开 OPPO、荣耀、华为、vivo、小米应用市场,搜索:
造个句子
基础学习不需要登录,下载后就可以直接开始。iOS 版还在准备中。
它当然还不完美,但这正是我愿意现在把它交给真实用户的原因。
因为只有到了用户手里,一个项目才会从“我做出来了”,进入“它到底有没有价值”的阶段。
如果你体验后发现问题,或者希望它增加什么功能,欢迎在评论区告诉我。
最后也想问一句:
你的备忘录里,有没有一个因为“我不会做”而放了很久的想法?
也许现在,真正拦住我们的已经不是技术,而是还没有认真迈出第一步。
夜雨聆风