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

软件分层

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

分层规则

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

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

模块结构

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

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

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

感觉有点过度设计了。

4年前 评论

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