标签: cop

抽象类和Mixin有什么区别?

我刚刚发现了一篇关于Java框架的文章,显然它允许它支持Mixins和一种叫做面向复合编程的东西(据我所知甚至可能是同样的东西......)我也听说过/使用过AOP,而且我不确定它与此有何不同......

abstract-class cop mixins apache-zest

15
推荐指数
1
解决办法
3092
查看次数

任何使用Qi4J的人

我之前在阅读InfoQ关于面向复合编程的文章:

http://www.infoq.com/articles/Composite-Programming-Qi4j

我有兴趣了解是否有人正在使用(或已经使用过)Qi4j框架?

与使用传统的依赖注入框架(如Spring)将类连接在一起相比,它是如何比较的.从维护的角度来看,生成的对象图(基于mixins而不是类)更容易处理吗?

java dependency-injection cop apache-zest

11
推荐指数
1
解决办法
3281
查看次数

面向复合编程(COP),.NET 4.0,MEF和Oslo存储库

过去的一年里,在.NET社区(ala Qi4j)中围绕COP似乎引起了一些兴趣.一些人已经推出了自己的COP框架(参见下面的链接),看起来.NET 4.0的Dynamic Dispatch和MEF可能在任何.NET COP框架中都有潜在的作用.

一方面,很多这样的事情似乎可以追溯到System/38天的想法(是的,我是一个老家伙),尽管另一方面它似乎也非常适合Oslo(建模和存储库)).任何人都可以评论微软是否在COP上做任何工作?

最近的一些.NET COP框架工作:

Hendry Luk - 滚动你自己的COP

Yves GoEleven.com - 警察 - 概念证明

AndersNorås - 诡计还是特质?使用C#进行面向组合编程

MagnusMårtensson - Unity应用程序块上面向复合的编程高峰

architecture mef oslo cop

7
推荐指数
1
解决办法
3566
查看次数

使对象在代码中动态实现接口

我想让这个测试通过 - 任何人都知道如何做到这一点?

public class Something
{
    public string Name {get; set}
}

public interface IWithId
{
    public Guid Id {get; set}
}

public class IdExtender 
{
    public static Object Extend(object toExtend)
    {
        ...?
    }
}

public class Tests 
{
    [Test]
    public void Should_extend_any_object()
    {
        var thing = new Something { Name = "Hello World!"};
        var extended = IdExtender.Extend(thing);
        Assert.IsTrue(extended is IWithId);
        Assert.IsTrue(extended.Id is Guid);
        Assert.IsTrue(extened.Name == "Hello World!");
    }
}
Run Code Online (Sandbox Code Playgroud)

我猜这样的事情可以用城堡动态代理,林福等完成......但是怎么样?

c# castle-dynamicproxy cop

7
推荐指数
1
解决办法
6932
查看次数