Funky Gao

Results 31 comments of Funky Gao

你给的例子,我没有看懂,没有get到你的意思,能再具体点吗 BTW:扩展点,是可以通过Reducer进行叠加执行的,并不是只能一个默认实现

一个扩展点的实现,必定对应一个确定的业务场景,因此extension.code不能重复。 你的例子,A聚合和B聚合分别实现IModelAttachmentExt就好了,为什么要code=isv呢?

明白你的意思了。isv前台的IModelAttachmentExt只能有一个扩展点:不是这样的 isv可以实现多个IModelAttachmentExt,每个分配不同的code,然后实现多个Pattern,在Pattern里实现路由逻辑就可以在isv里实现多场景了

例如,isv里要区分“大件”和“中小件”这2个细分场景,那么它可以定义2个Pattern: Pattern1: ``` if !order.isISV() { // 首先来的这个订单要属于isv的 return false } // 再判断是否是中小件 return order.isSmallPiece() ``` Pattern2: ``` if !order.isISV() { // 首先来的这个订单要属于isv的 return false } // 再判断是否是大件 return order.isLargePiece()...

@aking222 具体的使用,Partner通常是业务前台方,Pattern是中台方(中台内部也有多场景情况:业务多态) 一个业务如果业务前台方参与开发,那么一个domain model下,一定只属于某1个Partner的,不可能交叉; 但Pattern下,可能交叉也可能冲突,因此它有了优先级的概念

@caryfang Partner是为了企业内部前台业务特点的抽象,一个业务一定只属于一个业务方,这是业务特点,而Partner就是为这个业务特点的技术抽象。如果交叉,就使用Pattern 一个domain model是中台的业务抽象模型,它跟Partner/Pattern无关

add specification & notification pattern support #19

### 故障追溯、恢复等功能

https://gitter.im/cp-ddd-framework/community?at=5fa27afa8a236947ba84dabc integration with BPM