Qi4j通过组合实现DDD,而Jdon框架提供Event事件来实现DDD, Qi4j主要通过Mixin将实现类切入接口,实现DCI比较好。Jdon框架提供开发一个异步 并发 高吞吐量的系统,性能上要比Qi4j重视多。
[该贴被tecentID3618B于2013-04-18 16:19修改过]
2013-04-18 16:17 "@tecentID3618B
"的内容
"的内容
jdon中就不能采用相同的思想实现DDD吗 ...
Mixin有类似黑客技术,强力破解,不算优雅;事件是语义词,业务和技术通用,如美国发生爆炸事件等等。
Mixin已经过期了,下一个Big Thing是事件模型:http://www.jdon.com/44943
2013-04-19 09:00 "@tecentID3618B
"的内容
"的内容
这是在聚合根中用Qi4J或AOP哪个实现Mixin更优雅的问题了,是吗? ...
Qi4j也是使用AOP模式,Java的Mixin实现比不上Ruby优雅,但是Ruby的异步高并发事件模型比不上Scala/ERLang.
在Java领域,Qi4j和Jdon框架是100步与50步的区别而已。
但是Jdon框架将Ruby的Mixin和Scala的异步高并发合并在一起,虽然不太优雅,但作为框架封装起来,使用起来方便,不用更改语言,相当于windowsXP升级到Windows 8。
JdonFramework = Spring(Ioc/DI) + Ruby(Mixin/AOP) + Scala(Asynchronous/highConcurrent)
[该贴被banq于2013-04-19 10:01修改过]
[该贴被tecentID3618B于2013-04-19 10:20修改过]
2013-04-19 10:20 "@tecentID3618B
"的内容
"的内容
个人喜欢Qi4j注解实现mixin的方式,有没有可能与jdon框架结合呢 ...
从理论上讲,两者当然可以结合,Jdon的Mixin也是使用元注解,你可以试验看看,应该没有问题。Jdon和Guava等框架一起用也可以,也可以和Spring一起使用。
2014-06-07 21:53 "@wldst"的内容
为什么Qi4j没有流行起来 ...
我是这样猜测的:Qi4j主要是组合式编程,将一些接口等组合到数据对象中,而函数编程正好相反,是将数据对象加入到函数中。
第二点,新的语言Scala和Swift都提供了类似Mixin功能,如swift的protocol与extension。语言级别支持就非常简单,而使用额外框架,显得比较重量。