microwind/ai-skills/application-service
Claude Code and agent skill by microwind/ai-skills
Trust tier 3
- community
Source check pending
Checking that the SKILL.md file is still in the repository.
应用层的服务,负责用例编排、事务管理和协调领域对象,不包含业务逻辑。
Install
npx vskill@latest install microwind/ai-skills/application-serviceSKILL.md
应用服务 (Application Service)
概述
应用服务是应用层的协调者,负责把一个用例(Use Case)从入口到出口编排完整。它本身不包含业务规则——业务规则由聚合、领域服务负责;应用服务只负责调度、事务、安全、消息发布等"管道工作"。
职责:
- 接收外部请求(DTO / Command)
- 校验权限与输入完整性(非业务规则)
- 加载领域对象(通过仓储)
- 调用领域对象 / 领域服务执行业务逻辑(业务规则在领域层)
- 划定事务边界(一次用例 = 一个事务 = 一个聚合实例的写)
- 发布领域事件 / 集成事件
- 返回结果(DTO,不暴露领域对象)
经验法则:应用服务应当是薄层——一个方法通常不超过十几行;如果膨胀,说明业务逻辑泄漏到了应用层。
代码示例
应用服务 vs 领域服务
| 维度 | 应用服务 | 领域服务 | |
|---|---|---|---|
| 层次 | 应用层 | 领域层 | |
| 职责 | 编排用例流程 | 纯业务逻辑 | |
| 事务 | 管理事务边界 | 不管事务 | |
| 依赖 | Repository, EventPublisher | 只依赖领域对象 | |
| 业务逻辑 | 不包含 | 包含(跨实体的) |
最佳实践
- 应用服务是薄层 — 如果应用服务很厚,说明业务逻辑泄漏了
- 一个方法 = 一个用例 — placeOrder, cancelOrder, shipOrder
- 输入用 Command/DTO — 不传领域对象给外部
- 输出用 DTO — 不直接返回领域对象
常见误区
❌ 应用服务里写业务规则——if (order.getStatus() != PENDING) throw ... → 业务规则归领域对象,应用服务只调用 order.pay()
❌ 直接返回领域对象——把 Order 序列化为 HTTP 响应 → 在边界处转换为 DTO,避免把内部模型暴露给外部
❌ 应用服务调用另一个应用服务——同层耦合、事务边界混乱 → 一个用例 = 一个应用服务方法;要复用就抽到领域服务或下层
与其他DDD概念的关系
总结
核心:应用服务 = 用例编排器,不含业务逻辑。
模式:加载对象 → 调用领域方法 → 保存 → 发布事件 → 返回DTO。
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingdomain-driven-design/application-service/SKILL.md
Popularity
- Repository stars
- 51
- Repository forks
- 13
- 7-day trend score
- 20
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/microwind/ai-skills/application-service)