service 与 model 大家都是用的
想请问下大家
1
rahuahua 246 天前
可以看看 kratos 框架
|
2
qloog 245 天前 1
我的分层是这样的:
handler -> service -> dao/repository -> model handler: 负责接收数据、校验数据、调用逻辑层(service), 返回数据 service:负责逻辑编排,不会操作数据库、api 之类的 dao/repo: 数据调用层,不管是 三方接口、db 、cache 、MongoDB 、ES 等都在这里 model: db 层,仅有数据表结构体和表名的定义 可以参考: https://github.com/go-microservice/moment-service |
3
greenhandlwh 244 天前
同想知道~ 写 go 以来一直是自由发挥,项目逻辑分层都不清晰。有什么好的开源项目学习吗?
|
4
awanganddong OP @qloog 你发的代码连接地址我看了。增加了 repo 层,我看看 kratos 框架。
|
5
awanganddong OP @rahuahua Kratos 一套轻量级 Go 微服务框架,包含大量微服务相关功能及工具。 我刚看了下项目结构,和我需要的不太相符。
|
6
MidGap 243 天前
怎么爽怎么写
|
7
afxcn 228 天前
我们是 route -> controller -> proxy -> contract -> repository
model 用来传递数据,除了 route ,其它层都会用到它。 |
8
windcode 157 天前
我遇到过和你一样的问题,如何更好的组织数据访问层和核心领域模型的代码。
相比 Java 构建的系统,代码组织方式、分层等最佳实践已经固化在 Sprint Boot 、Sofa Boot 等框架中,Golang 缺乏这种标准化的最佳实践。 这个时候我想到领域驱动设计( DDD ),结合 DDD 中的思想组织代码结构。 最终我在项目中抽象了这三层:仓储层 => 领域层 => 表现层,基本上可以解决中小型项目的代码组织问题。 |