| 方向 | 外向内依赖,内对外无感 |
|---|---|
| 边界 | 依赖倒置跨越(端口在里、实现在外) |
| 检验 | 核心模块的 import 里不出现框架类型 |
分层示例
分层示例
entity ← usecase ← adapter ← framework
// 用例层定义端口
interface UserRepo { Optional<User> findById(Id id); }
// 基础设施层实现(外圈)
class JpaUserRepo implements UserRepo { ... }分层架构约束依赖方向:外层可依赖内层,内层不感知外层(Clean Architecture 同心圆:实体 → 用例 → 接口适配器 → 框架与驱动);依赖穿过边界时由内层定义接口。
| 方向 | 外向内依赖,内对外无感 |
|---|---|
| 边界 | 依赖倒置跨越(端口在里、实现在外) |
| 检验 | 核心模块的 import 里不出现框架类型 |
entity ← usecase ← adapter ← framework
// 用例层定义端口
interface UserRepo { Optional<User> findById(Id id); }
// 基础设施层实现(外圈)
class JpaUserRepo implements UserRepo { ... }