乐于分享
好东西不私藏

SDD规范驱动开发:AI时代软件开发的'施工图'思维

SDD规范驱动开发:AI时代软件开发的'施工图'思维

想象一下这个场景:

你对着 AI 说"帮我做一个电商后台管理系统",AI 立刻生成了几千行代码。你兴奋地运行,发现用户登录模块少了个手机号验证,订单列表的搜索功能只支持精确匹配,库存扣减在高并发下会出现超卖问题。你开始逐行修改,改了一整天,最后发现整体架构根本不支持你后续想加的多租户功能。

这不是 AI 的问题,这是开发方式的问题。

2025年,AI 编程工具让代码生成速度大幅提升,但需求理解偏差、逻辑不严谨、联调成本高、文档过期等问题依然是研发效能的核心瓶颈。在这样的背景下,一种名为 **SDD(Specification-Driven Development,规范驱动开发)**的方法论正在快速崛起。

它不是又一个开发框架,而是AI 时代软件开发的底层思维方式转变

什么是 SDD?一句话说清楚

SDD(规范驱动开发)= 先写规范,再写代码。

具体来说,就是在动手编码之前,先用结构化、可执行的规范文档定义清楚"系统要做什么",然后让 AI 基于这份规范自动生成代码、测试和文档。规范是唯一可信源,代码只是规范的派生品。

用"盖房子"来类比更直观:

  • 传统开发:边想边砌砖,出错拆改,频繁返工。
  • SDD 开发:先绘制完整的施工图纸(spec.md 规范文档),明确户型、尺寸、水电布局,再按图纸施工。

为什么现在需要 SDD?

问题一:Vibe Coding 的"蜜月期"结束了

2024–2025年,"氛围编程"(Vibe Coding)火遍全网——开发者用自然语言简单描述需求,AI 直接生成代码。这种方式初期效率惊人,但在复杂企业级应用中暴露出严重问题:

  • 架构缺陷:AI 生成的代码可能在短期内能跑,但缺乏整体设计,技术债务指数级增长。
  • 安全漏洞:没有明确的安全规范约束,AI 可能忽略权限控制、输入校验等关键环节。
  • 合规风险:缺乏设计文档,审计时无法证明系统符合业务规则。
  • 维护噩梦:需求迭代后,AI 之前生成的代码与新需求冲突,重构成本极高。

问题二:30% 的开发时间浪费在返工上

根据 McKinsey 调研,需求误解导致的返工平均占开发时间的 30%。问题根源在于:需求从产品经理到开发者的传递过程中,信息不断衰减和变形。

问题三:文档永远比代码慢半拍

传统开发中,文档是代码的"跟屁虫"——代码迭代了,文档往往被遗忘更新。三个月后的新成员接手项目,看到的文档和实际代码完全是两回事。

SDD 的核心理念正是为了解决这三个问题。

SDD 的三大核心原则

原则一:规范是唯一事实来源(Single Source of Truth)

在 SDD 中,规范文档(spec)是唯一的"真理源头"。代码、测试、接口文档、数据库表结构,全部都是规范的派生物。

需求变了?只需要改规范,所有派生资产自动同步更新。

原则二:意图与实现分离

开发者用自然语言表达"要什么"(What),AI 负责"怎么做"(How)。人类专注于业务逻辑和架构设计,AI 专注于代码实现和细节处理。

这种分离带来三个好处:

  1. 降低认知负担:开发者不需要记住每个 API 的具体用法。
  2. 提升沟通效率:规范用业务语言编写,产品经理、测试、开发都能看懂。
  3. 增强可维护性:业务意图清晰记录在规范中,不会因为人员离职而丢失。

原则三:设计先行,生成一切

SDD 要求在设计阶段就考虑清楚所有关键问题:数据模型、接口契约、异常处理、性能要求、安全策略。只有规范经过充分验证后,才进入实现阶段。

基于规范,可以自动生成:

  • 前端代码(React/Vue 组件、页面逻辑)
  • 后端接口(RESTful API、gRPC 服务)
  • 数据库表结构和迁移脚本
  • 单元测试、集成测试用例
  • API 文档(OpenAPI/Swagger)
  • 技术架构图

SDD 的标准四阶段工作流

SDD 将研发流程标准化为四个核心环节,环环相扣:

第一阶段:Specify(编写规范)

用自然语言清晰描述"要做什么",明确需求、约束、验收标准。

一份可直接交付 AI 执行的规范,必须包含五大要素:

要素 说明
目标与价值 解决什么业务问题,带来什么收益
上下文与约束 技术栈、性能要求、安全规范、依赖服务
功能需求 核心业务流程、字段规则、交互逻辑、异常分支
非功能需求 响应时间、并发能力、可扩展性、权限控制
测试标准 功能用例、边界用例、异常用例、上线验收规则

第二阶段:Plan(方案设计)

基于规范,设计技术架构、接口定义、数据模型、依赖关系,回答"怎么做"的问题。

第三阶段:Tasks(任务拆解)

将技术方案拆分为前端、后端、数据库、测试等可执行清单。每个任务都有明确的输入、输出和验收标准。

第四阶段:Implement(AI 实现)

AI 严格按照规范与任务清单,自动生成代码并完成验证。开发者只需要审查和微调。

SDD 的三大实施层级

根据团队成熟度和落地成本,SDD 分为三个渐进式实施层级(源自微软 Spec Kit 标准):

层级一:Spec-first(规格优先)

核心定义:先写规范,再用 AI 辅助开发。

落地表现:规范短期有效,用于单次需求研发。

生活类比:先写菜谱再做菜。做完这顿菜,菜谱就放在一边了。

适用场景:初创团队、个人开发者、快速原型验证。

层级二:Spec-anchored(规格锚定)

核心定义:规范长期维护,作为迭代依据。

落地表现:规范版本化管理,需求变更先改规范。

生活类比:菜谱永久留存,持续优化。下次做同样的菜,直接拿出优化后的菜谱。

适用场景:中小型团队、需要长期维护的项目、多人协作场景。

层级三:Spec-as-source(规格即源码)

核心定义:规范为唯一编辑物,代码全自动化生成。

落地表现:人类仅需维护 spec.md,一键生成全栈代码。

生活类比:仅更新菜谱,AI 全自动完成烹饪。

适用场景:大型企业、标准化程度高的业务系统、追求极致研发效率的团队。

主流工具生态

SDD 方法论催生了一批工具,帮助团队更高效地实践规范驱动开发:

Spec Kit(GitHub 官方)

GitHub 开源的 CLI 工具包,将 SDD 流程浓缩为五个核心步骤:

  1. Constitution(宪法):定义项目不可违背的原则,如代码质量标准、测试要求。
  2. Specify(规格):用自然语言描述功能,只说"做什么"不说"怎么做"。
  3. Plan(方案):基于规格生成技术方案,包括数据模型、API 设计。
  4. Tasks(任务):拆分为可执行任务,包含具体文件路径和验收标准。
  5. Implement(实现):AI 按规格生成代码,自动运行测试。

核心斜杠命令:

命令 作用
/speckit.constitution 定义项目宪法
/speckit.specify 编写功能规格
/speckit.plan 制定技术方案
/speckit.tasks 生成任务清单
/speckit.implement AI 实现代码
/speckit.review 审查代码是否符合规范

OpenSpec(社区开源)

轻量级 SDD 框架,核心概念简洁:

  • Specs(openspec/specs/:当前系统的真实状态。
  • Changes(openspec/changes/:对未来的提案。

工作流三步走:起草(创建变更提案)→ 实施(AI 按规范编码)→ 归档(合并到主 Specs)。

Kiro(Amazon)

引导用户经历需求、设计、任务创建三个阶段,工作流导向明显,适合需要明确阶段划分的项目管理。

SDD 的实际效果

GitHub 内部数据显示,采用 SDD 的项目取得了显著成效:

  • 新成员上手速度提升 60%:规范即文档,降低了知识传递成本。
  • 测试覆盖率从 65% 提升至 82%:SDD 强制测试先行,在编码前就定义测试标准。
  • 需求返工率下降 40%:结构化规范和多轮澄清将需求模糊性降至最低。
  • 跨团队协作效率提升:规范用业务语言编写,产品经理、设计师、开发者、测试都能基于同一份文档工作。

SDD 不是银弹:落地困境与轻量化方案

尽管 SDD 理念先进,但企业全量落地仍面临现实阻碍:

困境一:编写高质量规范的门槛高

需要极强的业务抽象、架构设计与表达能力。不是所有开发者都擅长写规范。

困境二:工具链仍在快速迭代

规范校验、自动化生成、CI/CD 集成工具尚未完全成熟。

困境三:历史代码集成难

存量系统、老代码架构复杂,难以一次性重构适配 SDD。

轻量化融合方案(企业主流选择)

不追求一步到位,保留 SDD 核心思想,降低落地成本:

  1. 简化版技术方案模板(轻量规范)
  2. 严格规则约束(字段、接口、样式、逻辑)
  3. Agent Coding 智能编码
  4. AI 自动汇总架构文档

核心启发:说清楚要什么,比怎么做更重要。好的规范文档胜过千行代码。

SDD 与 TDD、DDD 的关系

很多人会把 SDD 与 TDD(测试驱动开发)、DDD(领域驱动设计)混淆。三者的关系可以这样理解:

方法论 关注层面 核心问题 与 SDD 的关系
DDD 业务建模 "业务领域是什么?" SDD 的输入——DDD 帮助识别领域边界和业务规则
SDD 规范定义 "系统要做什么?" 承上启下——将业务需求转化为可执行的规范
TDD 代码质量 "代码是否正确?" SDD 的下游——规范中包含测试标准,TDD 验证实现

简单说:DDD 帮你理解业务,SDD 帮你定义规范,TDD 帮你验证代码。

三者可以结合使用:先用 DDD 识别领域模型,再用 SDD 编写规范,最后用 TDD 验证实现。

如何开始实践 SDD?

如果你打算在自己的项目中尝试 SDD,建议按以下步骤推进:

第一步:从一个小功能开始

不要试图一次性把整个项目切换到 SDD。选择一个中等复杂度的功能模块(比如用户权限管理、订单状态流转),完整实践四阶段工作流。

第二步:建立团队规范模板

定义你们团队的规范文档模板,包括必须包含的章节、格式要求、评审流程。可以参考 OpenSpec 或 Spec Kit 的模板。

第三步:引入 Constitution(项目宪法)

在项目伊始定义不可违背的全局规则:代码风格、安全策略、架构原则、测试覆盖率要求。这些规则对所有规范都生效。

第四步:与 CI/CD 集成

将规范验证作为持续集成的一部分。每次代码提交时,自动检查代码变更是否偏离设计意图。

第五步:逐步提升层级

从 Spec-first 开始,团队熟悉后过渡到 Spec-anchored,最终达到 Spec-as-source。

SDD 的未来:AI 与规范的共生

SDD 的出现不是偶然的,它是 AI 编程时代的必然产物。

在"手写代码"时代,开发者直接编码,规范只是辅助文档。在"AI 生成代码"时代,人类与 AI 的协作需要一个清晰的"契约"——这个契约就是规范。

未来的软件开发可能是这样的:

  • 产品经理用自然语言编写业务规范
  • 架构师审查规范中的技术可行性和架构一致性
  • AI基于规范自动生成代码、测试和文档
  • 开发者专注于审查、调试和创造性工作
  • 规范成为团队的核心资产,比代码更持久、更有价值

SDD 不是在取代开发者,而是在重新定义开发者的角色——从"写代码的人"变成"定义规范的人"。

总结

SDD(规范驱动开发)是 AI 时代软件工程的一次范式转变。

它的核心思想很简单:先想清楚,再动手做。

但在 AI 生成代码速度越来越快的今天,这个"想清楚"的过程反而变得更加重要。因为 AI 可以帮你快速生成一千种实现方案,但只有你知道哪一种是对的。规范,就是你对"对"的定义。

无论你是个人开发者还是团队负责人,无论你的项目大小,SDD 都值得一试。从写一份简单的 spec.md 开始,你会发现:说清楚要什么,比埋头写代码重要得多。

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-06-05 22:57:43 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/715628.html
  2. 运行时间 : 0.105358s [ 吞吐率:9.49req/s ] 内存消耗:4,676.88kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=bb72ec37beb38b95214e350e9f6b1f48
  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.000626s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000830s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000327s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000291s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000461s ]
  6. SELECT * FROM `set` [ RunTime:0.000210s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000569s ]
  8. SELECT * FROM `article` WHERE `id` = 715628 LIMIT 1 [ RunTime:0.000726s ]
  9. UPDATE `article` SET `lasttime` = 1780671463 WHERE `id` = 715628 [ RunTime:0.000821s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000501s ]
  11. SELECT * FROM `article` WHERE `id` < 715628 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000463s ]
  12. SELECT * FROM `article` WHERE `id` > 715628 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.001203s ]
  13. SELECT * FROM `article` WHERE `id` < 715628 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.001940s ]
  14. SELECT * FROM `article` WHERE `id` < 715628 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.000944s ]
  15. SELECT * FROM `article` WHERE `id` < 715628 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.000830s ]
0.109407s