总结一下基于 Lumen 框架的项目架构

软件分层

(上层)接入层 → Api层 → 聚合模块 → 基础模块(下层)

分层规则

  • 上层可调用下层,下层不可调用下层
  • 基础模块不可调用任何其它模块
  • 同层之间不可有相互调用

总结一下基于lumen框架的项目架构

模块结构

组件 名称 职责
ServiceProvider 服务提供者 作为模块入口,为程序提供依赖注入功能
Service 服务 为子模块,负责统一调度【仓库】、【工厂】、【实体】及【队列】并聚合结果。相当于乐队中的【指挥】角色。
Repository 仓库 数据访问层,负责从数据源获取数据并返回【实体】。数据源可包含但不限于:关系型数据库,缓存,文件,OSS等等
Factory 工厂 负责将原始数据转换成实体。原始数据包含:仓库从数据源取回的数据、外部传入的数据
Entity 实体 承载了本领域的所有业务逻辑。实体包含属性和行为。对一个领域进行抽象可能会形成多个实体,甚至嵌套的实体
Job 队列 管理入队和出队。定义了队列名称和队列连接。只含本领域相关的操作

总结一下基于lumen框架的项目架构

本作品采用《CC 协议》,转载必须注明作者和本文链接
Image
xugege
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 1
JeffreyBool

感觉有点过度设计了。

7年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!