什么时候鼓励针对接口编程,而不是直接针对具体类进行编程?
我遵循的一个指导原则是,每当代码需要跨越逻辑/物理边界时,都要创建抽象,尤其是当涉及到与基础设施相关的问题时。
另一个检查点是,由于可能的额外关注点代码(例如缓存、事务感知、调用due服务而不是进程内执行),或者如果这些依赖项直接引用基础设施集成点,依赖项可能会在未来发生变化。
如果代码依赖于不需要控制的东西来跨越逻辑/物理边界,我或多或少不会创建抽象来与这些东西交互。
我错过了什么吗?
发布于 2010-02-24 00:07:11
如果您不需要在Interface...then中找不到的类的任何特性,为什么不总是首选接口实现呢?
这将使您的代码在将来更容易修改,也更容易测试(模拟)。
https://stackoverflow.com/questions/2319611
复制相似问题