Xamarin设计模式iClass的目的是什么?

时间:2018-01-11 21:37:56

标签: c# objective-c xamarin

我正在重写Native iOS中的Xamarin项目(Objective-C)

我注意到每个类都有相应的iClass接口。

这种设计模式的目的是什么?这是Xamarin开发的标准还是仅仅是一种风格?我知道接口的用途,它们就像Objective-C中的协议一样,但是我没有看到为你只用过一次的每个类写一个协议的目的吗?

如果我只是将类和iClass重写为Objective-C中的单个类,会导致错误吗?我还注意到他们如何在参数中传递这些iClass而不是仅仅符合它?

示例代码

public interface ICar {


}



public class Car: ICar {

}

提前致谢!!

1 个答案:

答案 0 :(得分:0)

这可以是实现控制反转的基本方式。这允许抽象类型之间的依赖关系,以便程序的所有部分都是可单元测试的。

另一方面,它违反了其他SOLID原则之一,即接口隔离原则(理想情况下,这些原则应该是抽象基类,而不是接口)。

如果将所有接口合并到类中,您将失去代码库的单元可测试性。