领域驱动模型设计 讨论.

hlevel 发布于 2015/10/09 18:03
阅读 1K+
收藏 2

    公司今年业务比较少,之前好早有个业务能力强的大牛。帮公司规划一个公司云架构组织.其中一项就有开发一个云能力平台. 其中有一个"云erp" 未来功能点包括(能让所有租户 入住我们平台,销售不限类型的商品,管理包括(人员,产品,销售,订单,财务)) 等。今年就要开始开发这个了。我们才4个人写代码.

   于是开发中心老大想实现规划的功能并且把代码优雅设计一下. 老大不太懂代码,但是懂业务,看了蛮多设计书籍.提出几点要求.

1. 我们开发的框架得换掉,之前用的是springmvc、hibernate,这个框架采用的是贫血模型设计,不太符面向对象思想。换个让他业务人员也能理解的设计方式,如是呼 充血模型 就比较符合面向对象了

2.采用领域驱动模型设计业务,建立起可持续业务开发,需求变更可以不用大改造。不知道他是看了本书。还是听他朋友说的这些设计方式.

3. 以前设计重点都放在 关系型数据库上,现在设计都得改成设计重点放在领域上。数据库仅仅做保存使用,简单来说,数据放到txt 都可以。甚至 不持久化,都不用数据库.

于是乎,选用了一个 Axon Framework 一个国外的框架。他是领域驱动模型来设计的。我们4个人研究了一周。 的确体现了领域驱动事件为主设计方式。但是框架几个弱项如下:

1.网上资料太少。貌似还没得人用这样的开发方式。

2.官方demo ,还是用了 关系型数据库实体建模。

3.事物没研究到怎么处理。

4.异常不是在同一个线程,根本无法抛出到servlet 请求的线程里。

暂且这么多把,还得用这研究得成果开发"云erp"。先写到这。倒下苦水。。

加载中
1
秋水逍遥
秋水逍遥
我觉得你们的老大很有想法。DDD要成功,最关键的是抽象的能力,驾驭变化的能力,知识、技术、类库和框架都是次要的。
1
秋水逍遥
秋水逍遥
能够在纷繁中发现简单,混沌中发现秩序,是领域建模的最需要的能力,也是DDD成功的关键。
0
L
Lmeteor
很难在osc上看到有人说领域了。。。。
0
noday
noday
国内有个叫什么道的
0
noday
noday
http://www.jdon.com/
0
young7
young7
实践ddd需要强大的功力
0
HideHai
HideHai

1.充血和贫血,我个人倾向于贫血模型,不要包含业务逻辑最为主要,但基础的基于模型数据的处理可以有.

2.即便是DDD,需求变更如何做到不改动也是需要实践的,业务在发展,模型还是会调整。

3.数据库和模型都是设计重点,模型落地也要通过DB不是,不过数据库的索引、冗余需要注重设计,业务逻辑不要做到DB层.


针对国外的组件,特别是文档比较少无法掌控的,在选型阶段又没有DEMO支持,还是要慎用,后续遇到的缺陷、性能等状况会抓狂。

3.

hlevel
hlevel
回复 @HideHai : 目前在开源上也就找到考拉的是 ddd的,其他没找到有.推荐几个?
HideHai
HideHai
补充一下,目前设计的多数系统都是基于DDD.
0
首席搬砖工程师
首席搬砖工程师
搞不好会成为挖坑的
0
__loong
__loong

我记得 考拉是 ddd框架吧?

以前很关注ddd 后来发现 中国使用的太少。


返回顶部
顶部