用途:该技能用于在代码库中实现和维护 MVC(Model-View-Controller)架构,提供分层规范、目录结构、数据流与测试策略。
主要能力:
- 核心原则:关注点分离——模型承载数据结构、业务逻辑与状态管理;视图承载 UI 组件与呈现逻辑;控制器负责请求处理、编排与数据流。
- 目录结构:src/ 下划分 models(types、entities、services、repositories)、views(components、pages、layouts、styles)、controllers(api、hooks、middleware)与 utils(helpers、constants)。
- 模型层:定义类型与实体,实现业务规则与校验,通过仓储模式处理数据持久化,使用依赖注入提升可测试性,保持模型纯净、不含 UI 逻辑。
- 视图层:渲染组件、处理用户交互、展示模型数据,仅管理本地组件状态;组件保持小而聚焦,props 不可变,避免业务逻辑,可用展示/容器模式。
- 控制器层:保持轻薄,将逻辑委托给服务;处理全部错误分支,在传给模型前校验输入,跨切面关注点用中间件;前端可用 hooks(如 useUsers)封装数据获取与状态。
- 数据流:用户操作 → 视图 → 控制器 → 模型 → 控制器 → 视图 → 更新 UI。
- 测试策略:模型用单元测试,视图用组件测试,控制器用集成测试。
- 反模式:避免在视图中写业务逻辑或直接访问数据,应移至服务或控制器/hooks。
- 迁移策略:识别现有代码分层,先抽取模型,再创建控制器包装数据获取,清理视图中的业务逻辑,最后为各层补测试。
使用方式:作为编码规范参考,在实现或重构项目时按上述分层组织代码;资料未提供具体安装命令或调用方式。
适用场景:需要清晰分层的前后端项目,尤其是 React 等前端应用与后端 API 服务。
限制:资料未说明支持的框架版本、平台或收费情况;示例代码为 TypeScript/React 风格,其他技术栈需自行适配。