之前整理过一篇关于分层架构的文章:分层架构:一个经典却得不到优的难题
分层架构最经典也最容易上手,但做好也是最难的,实际开发过程中,要么某一层过大过厚,要么层与层之间互相调用。
你的系统代码都是采用什么架构?有什么比较好的实践?欢迎讨论~
1
yule111222 2022-04-19 08:58:16 +08:00
DDD 棱形对称架构
分层 或者 每个层里面不同类型的对象需要很强的约束,只承担自己应该承担的职责绝不多做半点事,这需要团队有很强力的 code review 机制才能做到 |
2
K1W1 2022-04-19 08:59:55 +08:00 via Android
"层与层相互调用"说明依赖没设置好,要自下而上,单向依赖呀
|
3
wanguorui123 2022-04-19 09:13:48 +08:00
主要是实体、业务层、数据层的抽象不够彻底,导致最终业务写成一坨又一坨,无法复用各个层之间的关系,彻底分层需要很强的心智和自律
|
4
3dwelcome 2022-04-19 10:05:15 +08:00 1
第一,代码会随着时间的推移,变得越来越乱。这和架构选择没有必然关系,和新需求的不断加入,有直接关系。我称之为代码熵增。
第二,减少熵增最佳实践,就是定期重构。 |
5
golangLover 2022-04-19 12:30:48 +08:00 via Android
@wanguorui123 隔壁的网友会告诉你能跑就行了。那以后肯定就是踩雷。种因得果而已
|
6
gfreezy 2022-04-19 13:30:21 +08:00
静态检查确保单项依赖
|
7
lessMonologue 2022-04-19 15:05:03 +08:00
目前对这个问题是有心无力的感觉。希望从各位道友的回答里管中窥豹
|
8
timethinker 2022-04-19 15:10:10 +08:00 1
你有没有想过,有时候可能并不是单纯的技术原因所导致的,而是一次又一次变形的需求?层层加码,而又没有时间回过头来梳理和重构,必定会导致这些问题。
|
9
xuanbg 2022-04-19 15:44:43 +08:00
能垂直切的都切成微服务了。。。切小后就没必要分层了。
|
10
RainCats 2022-04-20 11:37:52 +08:00
跟技术关系不大,因为都是业务驱动
|
11
xhldtc 2022-08-29 13:47:16 +08:00
怎么回事,为什么 132 天前回复的帖子置顶了?
|
12
nothingistrue 2022-08-29 13:50:28 +08:00
卧槽,挖坟
|
14
micean 2022-08-29 14:46:14 +08:00
对于单一团队来说,业务代码写成一坨就是最佳实践……
|
15
jones2000 2022-08-29 17:49:13 +08:00
框架是死的, 业务需求是活的。 活人这么能被框架限死呢,根据实际情况调整框架,不要照本宣科。
|