当前位置:首页>java>AI 编程初体验:我用 Cursor 重写了一个家族 APP

AI 编程初体验:我用 Cursor 重写了一个家族 APP

  • 2026-10-05 21:34:23
AI 编程初体验:我用 Cursor 重写了一个家族 APP

字数 2045,阅读大约需 9 分钟

01

每到农历新年,我心里就慌得一批。

2020 年疫情,清明节我没法回去祭祖。堂哥电话过来,问我说能不能开发个小程序,把家里的祖墓做个记录:地理位置、朝向、历史等信息,拍照几张照片,就不怕以后子孙们找不到墓了。

在农村里没有文字记录,靠着代代口传这墓是谁谁。随着老人们逐渐凋零,后辈又外出打工,甚至进城生活,老家里的一些祖坟现在也说不清楚是谁的了。

我说先研究研究。

有一年回老家,几杯“广西公文包”下肚后,人生豪迈的我满口答应堂哥做一个 APP,这个有啥难的!

回到深圳后,我用 Ruby on Rails 做了一个 Web 版本,然后又抽离一套后台 API 提供给 Android 客户端。随着开发的深入,被几个问题搞得没脾气了:

  • • 看似是树形结构,其实根本搞不定,老祖先以前是一夫多妻,要命的是,还有小妾,这放在哪?
  • • 我们的家谱是公族谱,上门女婿放在哪里?
  • • 中间有几代是断层的,整棵家族树也没法完整绘制。
  • • 国内的地图,在我们老家显示不清晰,Google 地图算是最清晰的,但是这玩意国内用不了。

之后拖拖拉拉好几年,每次回去见到堂哥,都显得不好意思,借口说琐事缠身。

就这样,我是不太想继续开发了。

02

2025 年的最后一天,我在 Manus 的输入框,敲下一句话需求:“制作一个家族族谱与祖坟的 APP”

好家伙,AI 询问了我几个更加详细的需求,我点击确认后,咔咔地生成了项目工程!

技术栈:React Native + Expo SDK 54 + NativeWind 4 + tRPC + MySQL + S3存储

我一脸懵逼,不知道如何编译运行,继续问:“如何编译运行这个项目?”

对照步骤操作,还真能在模拟器上跑起来了!界面虽然丑了点。

接着继续问:“生成 Android 客户端项目”

又是咔咔几分钟,✅ Android 原生客户端项目已生成完成!我为您创建了一个完整的、生产级别的 Android 原生应用项目。📦 项目包含内容核心框架:✅ Kotlin + Jetpack Compose UI 框架✅ MVVM 架构 + Clean Architecture✅ Hilt 依赖注入✅ Jetpack Navigation 导航系统✅ Room 本地数据库✅ Retrofit + OkHttp 网络库功能模块:✅ 家谱管理(成员管理、关系管理)✅ 地图展示(Google Maps 集成)✅ 祭祀提醒(提醒管理)✅ 家族相册(照片管理)✅ 个人中心(用户信息、设置)项目结构:

family-tree-android/├── app/│   ├── src/main/│   │   ├── java/com/manus/familytree/│   │   │   ├── MainActivity.kt│   │   │   ├── ui/                    # UI 层│   │   │   ├── data/                  # 数据层│   │   │   └── di/                    # 依赖注入│   │   └── AndroidManifest.xml│   ├── build.gradle.kts               # 应用级别配置│   └── proguard-rules.pro             # 混淆规则├── build.gradle.kts                   # 项目级别配置├── settings.gradle.kts                # 项目设置└── README.md                          # 项目文档

我继续问:“下载 Android 项目的代码”

它们给我打包了项目压缩文件 family-tree-android.zip,下载到本机,导入 Android Studio,顺利编译通过。

我终于意识到,之前自己辛辛苦苦花了差不多一个月的空闲时间写出来的东西,还不如 AI 半小时,而且写得比我还好。那天下午,阳光正好,我沉浸了一个多小时,重新找回了写代码的快乐。

正当我意犹未尽的时候, Manus 给我提示:“You don't have enough credits to continue.”

啥意思啊?刚要高潮,就让我充值,TMD 真扫兴!

03

然后我疯狂地学习各种 AI 工具的使用,也跟同事交流了一些经验。

上周六早上,我决定用 Cursor 开干,给 agent 发出我的需求:“一个使用 React Native + Expo 构建的家族管理应用,支持家族谱、墓地管理、家族记账、云端同步等功能,可在 iOS、Android 和 Web 平台运行。”

Agent 默认使用 auto 模式,反应有点慢,海哥说要翻墙使用海外的模型,并给我推荐了最强模型: Opus 4.5。强是真的强,但是也好贵啊,20 刀一下子就用完了,我又得继续续费。

中间也遇到了一些问题,基本上都可以直接问,AI 给你现场解决,记录一下:

"app 底部 tabs 被 iPhone 底部的 Home Indicator 遮挡了一些。"

"在 家族树 页面,Android 版本的 app 点击成员图标查看详情,无反应,iOS 有反应,请修复这个 bug"

"使用 eas 打 Android apk 包,包的大小比较大,能否做一些优化?"

"Android app,中国大陆不能使用 Google 地图,请问,有其他方法么?或者在设置里,增加一个可以选择地图的选项。"

"更新一下 @README.md"

"登录页面,将上边的 app logo,app name,“记录家族历史,传承家族文化” 这三行去掉,显得啰嗦重复"

"同步到云端的逻辑是什么?"

"后台服务连不上,数据同步时,一直在加载中,没有提示"

"这个 app 如果要商用上线,还需要增加哪些功能?"

"接下来,我要做什么?"

当然了,作为曾经有逼格的程序员,也要问一些好玩的问题:

"在设置 - 关于,连续快速点击“版本”3-5次,弹出一个彩蛋,类似于 Android 10。"

我完全没学过 React 这个 JS 框架,断断续续在工作日晚上的空闲时间里折腾,不到一个礼拜的时间,就搞完了,效果如下:

04

最后说说几点最近使用 AI 编程的感受。

先说说同事的总结:

  1. 1. AI 编程的本质是效率工具,不是万能解决方案。
  2. 2. AI 只能保证功能可运行,无法替代复杂设计思维。
  3. 3. 开发者需要提升代码审美和代码审查能力。
  4. 4. 准确评估和修改 AI 生成的代码是关键能力。
  5. 5. 存量项目需要基于单一职责原则拆解功能。

我的感觉就是:

  1. 1. 你越会提问,AI 给你的结果就越好。
  2. 2. 富有创造力的人,才会享受到 AI 时代的红利。
  3. 3. 不要让 AI 取代你的思考能力!
  4. 4. 不懂开发语言,也可以做 APP,只要你把需求说清楚。

AI 时代,不能只在岸上围观,得亲自下水。

花了 71 美刀(约百五块人民币),写代码那是从从容容游刃有余,这个春节不用慌了,终于可以安心地吃喝。

最新文章

随机文章