土木老师,5天时间,用AI搓了一个App——一个非科班出身的独立开发首战
如果有个工具,学生掏出手机就能查平法标注、算锚固长度,再也不用抱着 200 页的 22G101 图集翻半天,那该多好。Python 我用了 3 年,但也仅限于写写数据处理脚本。前端、后端、部署、API……这些词我听过无数次,却从来没觉得它们跟“我自己能做”有什么关系。直到 2026 年,AI 编程工具突然爆发。身边不断有人念叨“AI 现在真能写代码了”,我半信半疑地打开了 Claude Code。然后,我给自己定了一个目标:用 5 周时间,从零到上线,做一个真正能用的产品。
这个 App 到底是干嘛的?
先交代清楚产品本身,不然后面的故事就成了空中楼阁。我在土木工程专业教平法识图,22G101 图集是绕不开的必学内容。但学生们普遍有三大痛点:第一,锚固长度查表太慢。C30 混凝土、HRB400 钢筋、直径 25、抗震一级——四个参数一组合,就得翻到图集第 58 页,找到对应的 lab 值,再乘以一堆修正系数。一步算错,全盘重来。第二,平法标注看不懂。KL7(5A) 300×700 Φ10@100/200(2) 2Φ25——这串符号对初学者来说简直像天书。每个字母和数字都有讲究,但没人会随身带个符号对照表。第三,图集翻查太痛苦。22G101 将近 200 页,学生根本不知道自己要找的那条规则藏在哪个角落。我的想法很简单:把这三件事塞进一个 App 里,手机能直接打开,连下载都不用。️图1:App 首页截图️ 图2:三功能架构图
Day 0:这一次,好像不太一样
以前我也动过“自己做个工具”的念头。但往往是打开 IDE,写几行代码,遇到一个报错,搜半小时;好不容易解决了,又冒出下一个报错。循环几轮,热情耗尽,项目只能搁置。这不是普通的聊天,而是 Claude Code 里一套结构化的引导流程。它先问我创业定位、目标用户、核心价值,我回答,它追问,来回了大概四五轮。最后,它输出了一套完整的方向建议:技术建议:FastAPI + Vue3 + PWA(离线可用、手机优先)路线图:MVP 三步走(锚固计算 → 标注解析 → 图集速查)有意思的是,它没有上来就说“我给你写个 App”,而是先帮我理清了“到底该做个什么样的 App”。️ 图3:Brainstorm 对话记录当时我盯着屏幕的反应是:Fast 什么?Vue 又是谁?PWA 连在一起是啥意思?但这些都不重要。重要的是,我第一次觉得这件事“有谱”了。
Day 1-2:最枯燥,但也最踏实的两天
如果你以为写代码是最累的,那就错了。数据准备才是最磨人的。写代码只用了不到 3 天,但数据我整整整理了 2 天。这活儿 AI 帮不了多少——22G101 图集的内容,只有土木工程师才看得懂、理得清。混凝土强度等级:C25~C60,8 个,每个对应一个 ft 值钢筋类型:HPB300/HRB400/HRB500,3 种,每种有屈服强度和 α 系数锚固长度查表值:lab/d,24 条,来自图集第 58 页图集条文:把近 200 页图集中最核心的部分整理成 HTML️ 图4:数据文件列表说个细节。我打开 lab_table.json,一条一条核对 lab 值和图集上的数字。24 条数据,我足足对了四遍。AI 可以写一万行代码不出错,但数据这东西,对就是对,错就是错。算错了锚固长度,学生照着用,是要出工程问题的。共 74 条数据,9 张表。不大,但每一条都是我从图集里手工提取、反复核对的。
Day 3-4:最魔幻的两天
▎“写一个 POST 接口,输入混凝土等级、钢筋类型、直径、抗震等级,输出锚固长度 lab、la、laE。查表优先,如果表里没有就按公式计算兜底。”AI 直接生成了一段代码——完整的 FastAPI 路由、参数校验、计算引擎、异常处理。我大概能看懂(毕竟用了 3 年 Python),但让我自己写?不可能在一周内搞定。▎“做一个手机页面,五个下拉框,一个计算按钮,结果显示在卡片里。Material Design 风格。”AI 输出了一个完整的 Vue 组件。包括 loading 状态、错误提示、响应式布局——甚至连不同屏幕尺寸的适配都做好了。最震撼的时刻?pytest 71 个测试全部通过,满屏的绿色。️ 图5:测试过程测试也是 AI 写的。我说“给这个计算引擎写测试用例,覆盖所有边界情况”,它就写了。21 个测试用例覆盖了正常输入、极端值、非法参数——比我自己写的全面得多。但最让我觉得对我帮助最大的,不是 AI 能写代码,而是它能解释自己写的代码。遇到看不懂的地方,回一句“这句什么意思?”——它就能给我讲明白。这相当于在我身边配了一个 24 小时不休息的高级程序员,手把手教。
Day 5:最难的部分——上线
如果你以为“写代码”是最难的,那就错了。部署才是。AI 推荐了 Railway——一个 PaaS 平台,连 Dockerfile 都不用自己写。AI 生成了 Dockerfile(多阶段构建,前端打包 + 后端运行)AI 生成了 railway.toml(健康检查、端口配置)我注册了 Railway 账号,连接 GitHub 仓库数据库路径不对。Windows 开发环境下的路径格式在 Linux 服务器上不兼容。一个典型的“本地能跑,上线就挂”的坑。但这次处理方式不一样——我把报错信息复制粘贴给 AI,它看了一眼,改了路径处理逻辑。️ 图6:Railway 部署成功然后我做了最紧张的一件事:输入 C30、HRB400、直径 25、一级抗震,点击“计算”。屏幕显示:lab=35d, la=35d, laE=40.25d。翻开 22G101 图集第 58 页,一个一个数字对过去。️ 图8:锚固长度计算结果
几点掏心窝子的感受
如果只看页面,确实不算好看,功能也不算丰富。
但这次我的目标本来就不是追求完美。我想验证的是:
一个没有软件工程背景的人,能不能依靠 AI,独立走完从零到上线的全流程。
需求整理、技术选型、制定计划、AI 辅助编码、测试、修 bug、部署上线——每个环节都走了,没跳步。Brainstorm 给我的计划是 8 周,而我实际只用了 5 天,而且还是业余时间挤出来的。
程序逻辑可以说给 AI 听,但你要知道自己想要什么逻辑。数据、专业知识、需求定义——这些 AI 帮不了。如果我不是土木工程老师,我不知道 22G101 图集的结构,不知道锚固长度该怎么算,不知道学生最容易卡在哪里。AI 再强,也不知道。能精确描述你要什么,比会写几行代码更重要。Prompt 不是魔法,但结构化的、有上下文的、经过思考的需求描述,就是魔法。这也是 /brainstorm 工作流的价值——它强迫我在写代码之前先想清楚:目标用户是谁?核心痛点是什么?什么该做、什么不该做?回头看,最有价值的不只是 AI 写的代码,而是这套工作流本身:Claude Code 生成代码、解释代码、修 bug第四,会 Python 不等于会做产品——AI 补上了中间这一大段。3 年 Python 让我能读懂 AI 生成的代码、能处理数据、能本地调试。但前端、部署、测试工程化——这些我完全靠 AI 跨过去的。没有 AI,中段这几个环节我一个人走不通。AI 只是把这些积累“表达”了出来。它不是替代我,它是让我能做的事上了一个大台阶。
写在最后
https://energetic-tenderness-production-9a9c.up.railway.app/如果你刚好是土木行业的老师、学生、从业者——欢迎试试,告诉我哪里不好用。如果你也和曾经的我一样,有一个想法但被“不会编程”卡住了——▎Day 1-2:第一次 Brainstorm——AI 是怎么帮我做产品规划的作为土木人,你觉得这个 App 最实用的是哪个功能?还缺什么?如果你也有个“憋了两年”的想法,你会尝试用 AI 把它做出来吗?