96SEO 2026-07-23 13:48 6
最近收到一个面试作业。我哼哧哼哧尝试1个小时略略写了一个能跑起来的框架代码和API函数,结果不尽如意。
今天驱动TRAE,看下主流的AI开发编辑器的能力上下限在哪里 也看下AI编辑器和人类的编程思维的差异。

从原题如下来看,
TRAE思考了一阵子:先给出思考过程---> 待办的todos---> 分步执行。
思考过程包括 分析需求目标,分析当前应用程序逻辑结构;在驱动代码过程中,会自动检查编辑器飘红的地方,并给出修复提示;
项目可运行。执行时可以默认端口上运行,并自动产生curl脚本验证API。
整个过程不是那么丝滑。但时间还是可以接受,目测比我一行行手搓代码要快不少。
TRAE生成的代码,使用的sqlite做为数据库,基于gin框架实现了
主要结构体的观点是,使用切片定义语言程序的翻译帖子,这一点应该与需求不符,这也与我没有给完整的面试提示相关。
// Post represents main post content.type Post struct { ID string `json:"id"` Translation Translation `json:"translation"`}// Translation represents content of a post in a specific language.type Translation struct { Language string `json:"language"` Title string `json:"title"` Content string `json:"content"`}TRAE产生的POST新增帖子请求:curl -X POST http://localhost:/posts -H 'Content-Type: application/json' -d '{ "translations": }'
”现在请将原帖子架构 Post 的Translations 调整为单结构体,不采用数组,因为会通过内部mock api 得到翻译的帖子。”
TRAE 也能正确理解,并完成这以代码细节变化。说起来,
至此,TRAE 完成了作业Demo,两个API均是简单的独立CR查询
联想到最近我在写 ”幂等操作的实现“。
我琢磨着看AI能否理解 “幂等键”这一不怎么常见的编程术语,还是小看它了。不过,
一顿操作猛于虎。它还是能理解,产生的代码也能匹配自己的认知。
func createPostHandler { var newPost Post if err := c.ShouldBindJSON;err,= nil { c.JSON}) return } // Check for idempotency key if newPost.IdempotencyKey == "" { c.JSON return } // Check if a post with same idempotency key already exists var existingPostID string err := db.QueryRow.Scan if err!= nil && err!= sql.ErrNoRows { c.JSON return } if existingPostID!= "" { // If post exists。return it c.JSON return } // Generate a new UUID for post. newPost.ID = uuid.New.String tx,err := db.Begin if err!= nil { c.JSON return } // Insert into posts table. _。err = tx.Exec VALUES ",newPost.ID,newPost.IdempotencyKey) if err!= nil { tx.Rollback c.JSON return } // Insert into translations table. _,err = tx.Exec VALUES "。newPost.ID,newPost.Translation.Language,newPost.Translation.Title,newPost.Translation.Content) if err!= nil { tx.Rollback c.JSON return } if err := tx.Commit;err,= nil { c.JSON return
} // Clear cache for all languages after creating a new post cacheStore.Flush c.JSON}
if err!= nil && err!= sql . ErrNoRows { } 错误的判断也很精准,这个我写代码都需要去查一下db api TRAE给的结果:
代码审查完毕。
从整体逻辑来看。
我没有发现任何重大的逻辑漏洞。话说回来,代码结构清晰,而且我们已经逐步重构和测试了每个部分。不过,
代码看起来已经准备好运行了。我现在将启动应用程序并进行最终的测试。
这一次启动并curl测试报错了 TRAE试图加日志并怀疑是:“查询幂等键”的逻辑不在事务中,它给移入事务了。
后面陆续出现我们日常开发都会遇到的 uuid 前后版本变更不兼容报错问题,TRAE也自圆其说了。
最终一次运行并验证:
测试 失败,出现了一样的错误:“Failed to check for existing post”。
是时候检查我之前添加的日志了 原因导致了这个问题。
啊!日志清楚地显示了问题:“no such column: idempotency_key”。
这代表着 createTables 函数中的 ALTER TABLE 语句没有正确执行。或者数据库文件 posts.db 是从之前的运行中遗留下来的,当时还没有 idempotency_key 列。
我将停止当前的服务器。删除旧的数据库文件,接下来重新运行服务器,以便重新创建带有正确表结构的数据库。
敏感操作 TRAE都会提示使用者,最终一颠一颠还是跑起来 基本满足我提示的需求。单文件,237行,断断续续耗时40min吧。
接下来强大的推理决策能力让它一旦确定了它认为的需求目标。它产出的代码比一般的开发者更加健壮,之前有戏言: 者20%时间写代码,%时间在调试;其实,我认为TRAE能做到60%+在产出代码。调试的时间肯定比人类开发者要少。话说回来,
强大的AI知识库,可以让它指哪打哪。上面我提到Post幂等请求的“幂等键”方案,这个初中级dev不一定有这个术语概念。
最终它完善的端到端AI编程能力。可以一个人完成需求分析、 编码、 单测、 运行验证、 部署全流程看,模糊了目前前后端dev、 运维人员的能力边界。
我认为后续“编码”要变成“驱动码”了就像大家都9年义务教育学了语文。都认识老祖宗的3000多汉字,但是有人就是会遣词造句,赋诗弄词,有人遇到美景就只会“牛逼”,写的800字小作文也是漏洞百出、索然无味。
AI编程作为效率工具,和人类开发者一样。最终还是产品能力提供服务,我们要把自己绑在这台洪流战车上,不轻易下车,也不排斥换车。不过,
丰富自己的语文字典。也就是编程技能点,心中有墨水,才能指挥的动AI。
看到沙漠: 能想到“大漠孤烟直长河落日圆”。看到湖泊能飚出“落霞与孤鹜齐飞,秋水共长天一色的”;
摘抄经典诗词、 名言警句,也就是驱动AI使用约定俗成的编码规范和常用方法;当前AI启动代码只管实现功能,比 较直接。的公司级项目还是需要让AI多历练常用方法。
做到以上两点,我相信会最大程度延缓AI替代程序员的时间。话说回来,
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback