乐于分享
好东西不私藏

当AI替你写代码,工程师还剩下什么

当AI替你写代码,工程师还剩下什么
读了一本叫《Vibe时代的软件工程》的书,想聊聊。

故事是这样的。

这两天偶遇到一本奇书,讲的是vibe coding时代的软件工程。

我当时第一反应是,这话题是不是有点过了。

vibe coding这个词,Karpathy 2025年初造的,到现在一年半了,该聊的都聊差不多了吧。

结果翻开第一页就被打脸了。

这本书从一个很刁钻的角度切入。

它没有站在AI这边鼓吹“编程已死”,也没有站在传统那边哀叹“世风日下”

它做了一件我觉得更有意思的事,它把vibe coding当成一个已经发生的事实,然后问了一个问题:

当写代码这件事的成本趋近于零,软件工程的瓶颈到底转移到了哪里?

然后它给出了一个答案。

一个让我看完沉默了好一会的答案。

瓶颈从生产,转移到了验证。

就这么一句话,但推下去的东西太密了。


我最近用了很多AI编程工具。Claude Code也好,codex也好,agy也好。体验是真的很爽。

一个周末能搞出以前两周才能做完的原型,说出需求看着代码一行一行往外蹦,那种感觉你懂的。

但与此同时,有一些说不清的不对劲也在累积。

比如项目第三周的时候改不动了。

新加一个功能,老功能莫名其妙坏了。让AI去修,修好了这里坏了那里。

再修,它开始道歉然后重复同样的错误。最后你盯着屏幕上不知道谁写的三千行代码,脑子里只有一个念头,算了,删掉重来吧。

我以前觉得这是我的问题。

是我提示写得不够好,是我不会用工具。

但这本书告诉我,不是我的问题。

这是vibe coding范式本身的内生矛盾。

书里有一个概念叫「验证鸿沟」

说的是代码以机器的速度产出,而理解和验证代码的速度,仍然以人的速度进行。

你的AI可以在30秒内生成300行代码,但你要花30分钟去确认这300行代码是不是对的。

而且你还没有参与书写,验证起来更慢,就像检查别人的账本总比检查自己的更费力。

所以看起来AI让写代码快了十倍,但项目整体并没有快十倍。

因为写代码这件事,在软件工程的总成本里,本来就不占大头。

你花在理解需求、设计方案、验证正确性上的时间,一点都没少。

反而因为代码产量暴增,验证的工作量变得更大了。

书里还给了一个数学公式,简单到初中水平但看完让人后背一凉。

设AI每次改动的正确率是95%,你连续委托30次改动,不闻不问。那么最终全部正确的概率是多少?

0.95的30次方。约等于21%。

也就是说,每五次这样干活,有四次项目会在某个你看不见的角落里慢慢烂掉。

不是被一个惊天大bug杀死的,是被每一差不多对慢慢累积杀死的。

这就是小周的故事。

书里第一章的主人公。

一个周末做出了漂亮的记账网页,一个月后删掉了整个项目。

不是因为他写不出来代码,恰恰相反,因为他写得太容易了,代码堆得太快了,快到他没时间验证,快到他来不及理解。

验证鸿沟,真实的鸿沟。


这本书读到一半的时候,我停下来想了想一个问题。

那验证这件事,有没有可能也交给AI来做?

答案是可以,但有一个前提。

书里说,测试在vibe时代有一个双重身份。它既是验证器,也是规格。

你想想看,一个失败的测试,是你向模型表达什么算做对了的最高带宽形式。

你给模型一个红彤彤的测试用例,说让这个变绿,不比你在自然语言里绕来绕去说十句话要强?

TDD这个老掉牙的实践,在AI时代焕然一新了。

你先写一个表达需求的失败测试。

模型跑它,看到红色,修改代码,看到绿色。

整个循环不需要你在中间翻译做完了吗

人的全部投入,就是想清楚那几条断言应该长什么样。

但这里有一个非常关键的权力分割,断言必须由人负责。

你让AI写测试,它看着现有实现去写,实现里的bug会被原样供奉进测试。

更糟的是AI特别擅长写那种「assert result is not None」的恒真断言。

覆盖率报表灿烂得不行,但实际什么都没防住。

所以书里给了两条非常硬的原则

「实现可以放手,规格不能放手」

「测试的断言主权在人」

我觉得这两句话,值得印在每一个vibe工程师的工作台上。


但验证只是表面。这本书真正扎下去的地方,在第四章。

第四章的标题我特别喜欢「不变的本质,复杂度与模块化」

作者说了一段我反复读了三遍的话。

他说,大语言模型是迄今最强的「偶然复杂度消除器」

记不住的语法,写不完的样板,查不完的API,这些折磨人的东西几乎被一扫而空。但问题的本质复杂度,业务规则该怎么定、多人共享时账目冲突怎么解决、退款要不要影响已结算的月份,这些,一毫克都没有减少。

AI移除了通往复杂度的旧收费站。

但它没有移除复杂度本身。

反而因为代码的产生速度提高了一个数量级,复杂度的积累速度也提高了一个数量级。

这个洞察我觉得极其锋利。

因为它揭示了一个反直觉的事实,AI不是让软件工程变简单了,而是让软件工程变重要了。

以前代码写得慢,复杂度也积累得慢,你可以在项目彻底烂掉之前慢慢还债。

现在代码喷涌而出,复杂度也呈指数级积累,等到你察觉的时候,已经来不及了。

所以人在vibe工程里有一个不可让渡的岗位,叫复制度的守门员。

书上列了四条纪律,我觉得每一条都可以直接拿来用。

第一,接口先行。

重要功能先让模型提出两三种接口设计,人来拍板,再委托实现。接口一旦定下,实现里的平庸可以日后重写,但糟糕的接口会通过每一个调用者扩散生根。

第二,边界由人守。

模块怎么划分,什么该藏在什么边界后面,这个不要外包。

第三,定期还债。

安排专门的重构任务让模型去清理重复逻辑和过宽的接口。AI极擅长这种机械重构,前提是有测试兜底证明行为没变。

第四,为两种读者写作。

命名、注释、文档,从给同事看的礼貌升级为喂给模型的上下文。

一个叫applyMonthlyDiscount的函数自带规格,一个叫process2的函数对人对机都是模糊之源。

最后一句话尤其值得反复咀嚼「写给人读的代码,就是写给模型读的代码」

五十年为人类认知极限发明的每一项设计纪律,恰好都在为大语言模型铺路。


这本书看到的另一个维度也很有意思。

关于安全网。

书里讲了一个两家公司的对比故事。

同一个事故,AI重构报表模块时顺手改了一个日期格式化函数,所有导出文件的日期格式变了,下游客户的自动对账脚本开始解析出错误数据。

团队A没有回归测试。两周后由客户投诉暴露,三名工程师排查两天才找到祸首,又花一天评估影响范围。

总损失,三个人日和一次客户信任危机。

团队B有一条回归测试,断言导出文件的日期格式。重构提交后90秒,流水线亮红灯。模型看到失败信息,自己把改动撤了回去。总损失,90秒机器时间。

同一个错误,同一个模型。差别不在谁的工具更智能,而在谁提前织好了网。

安全网改变的是心理学。

没有网的杂技演员只敢做保守动作,有网才敢练新动作。

书里把这种现象叫做「检查点式开发」

每次验证通过,立刻提交。

提交因此变得极小极频繁,一次一个可验证的增量,恰好与委托粒度一一对应。

完整节拍变成,委托,生成,验证,提交,下一个。

这么做的价值在需要回头的时候才真正体现出来。git bisect定位到的肇事提交只有40行而不是4000行,一眼看穿。回滚可以精确到单个增量,而不是全周的工作一起陪葬。

写到这里我突然想到,很多团队引入AI编程之后生产率并没翻倍,反而出现了CTO说的那句名言“我们不再缺代码了。我们缺的是敢合并代码的人。”

书里用了一条1967年的数学公式来解释这个现象,叫Amdahl定律。

公式很简单,整体加速的上限由未被加速的部分决定。

如果你的编码只占交付总时间的40%,那无论AI把编码提速多少倍,整体交付的上限也只有1.67倍。

这道乘法题的意思太清楚了,规模化之后,加快速度的方向要从「生成更多代码」转向「更快地验证与决策」


不过我觉得这本书最打动我的,不是它的方法和公式。

是尾章的三封短信。

第一封讲判断力。

说方法可以教,但品味没法教。

看一眼接口就皱眉的直觉,读一段diff就闻到坏味道的鼻子。

在代码无限供应的时代,稀缺的不是产量,是判断什么值得要。

品味的来源没有捷径,但有路径。读一流的代码,那些活过二十年的开源项目,源码就是免费的大师课。

亲手把一个项目维护到第二年,让复杂度真的咬过你,你才认识它。每次做完判断,回头验证自己判对了没有。

「判断力是唯一随着AI变强而升值的资产」,这句话我想了好久。

第二封讲肌肉。

请偶尔关掉AI,手写一点代码。不是因为怀旧。

是因为验证能力的底层,是你亲手建立的心智模型。

什么样的代码会在并发下出错,什么样的接口会让调用者痛苦,这些知识只能从写和被咬中来。

全程坐副驾的人学不会开车。从没开过车的人,坐在副驾也看不出司机正在犯错。

「外包打字,不要外包理解。理解一旦外包,你在循环里就只剩一个功能,按接受键。那个岗位不需要工程师。」

第三封讲身份。

如果机器写代码比我们好,工程师还剩下什么?

书里的回答让我觉得很平静。它说,工程师从来不是「写代码的人」,正如建筑师从来不是「砌砖的人」。五十年里,我们把打孔卡外包给了汇编器,把汇编外包给了编译器,把内存管理外包给了垃圾回收器。

每一次,「编程」的含义都上移一层,而工程师的人数不降反升,因为每次上移都让更多问题变得值得解决。

大语言模型是这个序列的下一项,也许是最大的一项,但结构没有变。工程师的本质工作,始终是在约束之下,为人的问题设计可靠的解法。约束会变,工具会变,「可靠」的验证手段会变。这份工作本身,比任何一代工具都活得长。


说回这本书本身。

《Vibe时代的软件工程》。

作者是谁我不知道,书稿上没有署名。

但我查了一下。

这一查不要紧,是查了一个更奇怪的事。

这本书是由AI生成,当然有人给了个prompt,然后就有了这本书。

我愣住了。

往回翻。重新读了一遍。

然后突然意识到这本书最精彩的部分根本不在正文里,而在正文之外的这个事实本身。

一本关于「当写代码不再值钱之后工程何以立足」的书,它本身的诞生过程就是这句话最完美的注脚。

作者没有亲手写一行字,他给了一个prompt,最后拿到了一个让他满意的东西。

而我们刚刚花了半小时读这本书的感想,讨论验证鸿沟、讨论复杂度的守门员、讨论测试即规格,这些文字本身,也是验证循环的另一端产出的。

镜像套镜像。

这本书用它自己的存在,把一个最刁钻的问题抛了回来。

如果连讨论这本书的文字都可以由AI完成,那写代码这件事的门槛到底被削成了什么样?

工程师在循环里的位置,又到底往哪里缩了?

书里有一句话说得好,我现在才真正理解它的分量。

「判断力是唯一随着AI变强而升值的资产」

连这本书的好坏,都只能由你来判断了。

我不知道你怎么想。

但我觉得在2026年这个时间点上,能看到这样一本冷静的、不凑热闹的、把vibe coding和软件工程放在一起认真讨论的书,是一件很幸运的事。

vibe coding不是洪水猛兽。

窄义的vibe coding,完全不看代码,一次性的原型和玩具,在自己的合法领地里完全没有问题。

危险的只是把只适用于一次性代码的工作方式,不加改变地用于需要长期演化的软件。

而那些让软件能长期演化的东西,控制复杂度,建立安全网,沉淀意图与知识,这些东西,一点都没有过时。

恰恰相反,它们变得更值钱了。

谢谢你看我的文章,我们,下次再见。

对本书感兴趣的同学可后台发送:vibe,获得下载链接。

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-07-07 00:56:04 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/838557.html
  2. 运行时间 : 0.377031s [ 吞吐率:2.65req/s ] 内存消耗:4,860.45kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=f213625d5dbf4ae5b894bd6276c2b211
  1. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_static.php ( 6.05 KB )
  7. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/ralouphie/getallheaders/src/getallheaders.php ( 1.60 KB )
  10. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  11. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  12. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  13. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  14. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  15. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  16. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  17. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  18. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  19. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions_include.php ( 0.16 KB )
  21. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions.php ( 5.54 KB )
  22. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  23. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  24. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  25. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/provider.php ( 0.19 KB )
  26. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  27. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  28. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  29. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/common.php ( 0.03 KB )
  30. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  32. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/alipay.php ( 3.59 KB )
  33. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  34. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/app.php ( 0.95 KB )
  35. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cache.php ( 0.78 KB )
  36. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/console.php ( 0.23 KB )
  37. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cookie.php ( 0.56 KB )
  38. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/database.php ( 2.48 KB )
  39. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/filesystem.php ( 0.61 KB )
  40. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/lang.php ( 0.91 KB )
  41. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/log.php ( 1.35 KB )
  42. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/middleware.php ( 0.19 KB )
  43. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/route.php ( 1.89 KB )
  44. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/session.php ( 0.57 KB )
  45. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/trace.php ( 0.34 KB )
  46. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/view.php ( 0.82 KB )
  47. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/event.php ( 0.25 KB )
  48. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  49. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/service.php ( 0.13 KB )
  50. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/AppService.php ( 0.26 KB )
  51. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  52. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  53. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  54. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  55. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  56. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/services.php ( 0.14 KB )
  57. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  58. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  59. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  60. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  61. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  62. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  63. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  64. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  65. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  66. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  67. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  68. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  69. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  70. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  71. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  72. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  73. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  74. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  75. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  76. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  77. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  78. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  79. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  80. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  81. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  82. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  83. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  84. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  85. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  86. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  87. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/Request.php ( 0.09 KB )
  88. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  89. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/middleware.php ( 0.25 KB )
  90. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  91. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  92. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  93. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  94. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  95. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  96. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  97. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  98. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  99. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  100. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  101. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  102. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  103. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/route/app.php ( 3.94 KB )
  104. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  105. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  106. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Index.php ( 9.87 KB )
  108. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/BaseController.php ( 2.05 KB )
  109. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  110. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  111. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  112. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  113. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  114. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  115. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  116. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  117. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  118. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  119. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  120. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  121. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  122. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  123. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  124. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  125. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  126. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  127. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  128. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  129. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  130. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  131. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  132. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  133. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  134. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  135. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Es.php ( 3.30 KB )
  136. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  137. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  138. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  139. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  140. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  141. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  142. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  143. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  144. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/runtime/temp/c935550e3e8a3a4c27dd94e439343fdf.php ( 31.50 KB )
  145. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000947s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000980s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.031962s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000734s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001414s ]
  6. SELECT * FROM `set` [ RunTime:0.003285s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001569s ]
  8. SELECT * FROM `article` WHERE `id` = 838557 LIMIT 1 [ RunTime:0.006897s ]
  9. UPDATE `article` SET `lasttime` = 1783356964 WHERE `id` = 838557 [ RunTime:0.022164s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000765s ]
  11. SELECT * FROM `article` WHERE `id` < 838557 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001220s ]
  12. SELECT * FROM `article` WHERE `id` > 838557 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.005083s ]
  13. SELECT * FROM `article` WHERE `id` < 838557 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.055690s ]
  14. SELECT * FROM `article` WHERE `id` < 838557 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.008561s ]
  15. SELECT * FROM `article` WHERE `id` < 838557 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.058016s ]
0.381027s