<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title>随笔 - Tag - 帅说帅话</title><link>https://xiaoshuai1024.github.io/tags/%E9%9A%8F%E7%AC%94/</link><description>随笔 - Tag - 帅说帅话</description><generator>Hugo -- gohugo.io</generator><language>en</language><lastBuildDate>Mon, 17 Mar 2025 21:00:00 +0800</lastBuildDate><atom:link href="https://xiaoshuai1024.github.io/tags/%E9%9A%8F%E7%AC%94/" rel="self" type="application/rss+xml"/><item><title>AI编程之我见</title><link>https://xiaoshuai1024.github.io/posts/ai-programming/</link><pubDate>Mon, 17 Mar 2025 21:00:00 +0800</pubDate><author>Author</author><guid>https://xiaoshuai1024.github.io/posts/ai-programming/</guid><description>作为一名常年和代码打交道的全栈开发，最近这一年，最明显的感受就是：AI 已经彻底走进了编程的日常，不再是当初那个“听起来很厉害、用起来很鸡肋”的噱头了。今天就以我自己的使用经历，跟大家聊聊 AI 编程那些事儿，轻松唠唠，不聊复杂理论，只说真实体验。
先说说现状吧。现在 AI 编程工具真的是百花齐放，不用再像几年前那样，翻来覆去就那几款凑合用的工具。最常用的应该就是 Cursor 了，主打一个轻量、精准，专门针对代码场景优化，不像有些通用 AI 工具，写代码还要反复调试提示词；还有 GitHub Copilot，适合和 IDE 深度绑定，比如 VS Code 里装个插件，写代码的时候自动联想补全，有时候甚至能猜到你下一行要写什么；另外像 CodeGeeX、通义千问代码版，也各有侧重，有的擅长多语言适配，有的在国内网络环境下更流畅，总之选择很多，总能找到一款适合自己的。
我真正开始深度用 AI 编程，是源于我个人的全栈项目——luban。熟悉我的朋友知道，这个项目我一个人扛了大部分开发，涉及好几个子系统，前端要用 Vue3 + Nuxt3，后端要写 SpringBoot，偶尔还要用 Node.js 写个 BFF 层，甚至有时候要补点 golang 脚本处理数据，多种语言来回切换，有时候写着写着就卡壳，尤其是一些不常用的语法，还要翻文档、查博客，特别耽误时间。
最开始是抱着试试看的心态，下载了 Cursor，本来只是想用来补补语法、调试个小 bug，结果用了不到半天，就果断开通了 Cursor Pro。说实话，一开始没抱太大期望，毕竟之前也用过不少 AI 工具，要么答非所问，要么代码报错，但 Cursor 给我的感觉完全不一样——我只要把需求说清楚，比如“用 SpringBoot 写一个站点列表查询接口，带分页和条件筛选，关联用户表”，它就能直接生成可运行的代码，甚至连异常处理、参数校验都帮我写好了，省去了大量重复编码的时间。
聊到效果，用“惊人”来形容一点都不夸张。以前我写一个完整的后端接口，从定义实体类、Mapper、Service 到 Controller，再到调试通过，至少要半个小时，现在用 Cursor，10 分钟就能搞定，而且代码结构很规范，不用我再手动调整格式。尤其是写前端组件，有时候我只需要描述“写一个 Vue3 的表单组件，包含输入框、下拉框，带表单校验，提交按钮禁用逻辑”，它就能生成完整的代码，我只需要根据项目的样式规范，微调一下类名和样式，就能直接复用。
效率提升最明显的，还是多语言切换的时候。比如我刚写完 Java 代码，突然要写 Node.js 的 Egg.js 接口，语法细节很容易记混，这时候只要让 Cursor 帮我生成一个基础模板，再根据我的需求修改，就能快速上手，不用再去翻 Egg.js 的官方文档，节省了大量的时间成本。可以说，自从用了 AI 编程，我这个“单兵作战”的全栈项目，进度至少提速了 40%。
当然，AI 编程也不是完美的，它的问题也很突出，最常见的就是两个：一是容易出现“幻觉”，二是代码质量参差不齐。所谓的幻觉，就是 AI 会编造一些不存在的 API、方法，或者引用一些不存在的依赖，比如我让它写一个 Redis 缓存的工具类，它居然生成了一个不存在的 Redis 方法，我复制过去直接报错，一开始没注意，排查了半天才发现是 AI 编的；还有代码质量，有时候它生成的代码虽然能运行，但不够优雅，比如重复代码太多、没有做优化，甚至有潜在的性能问题。</description></item></channel></rss>