层之间的通信是否总是使用接口完成,还是可以直接访问对象?
例如,业务逻辑和业务对象层/项目之间。
答案 0 :(得分:1)
使用界面有很多好处。你最好阅读一本关于面向对象技术原理的好书。或者只是搜索为什么使用接口。但简短的回答是使用接口。
答案 1 :(得分:1)
直接访问对象会在对象之间创建非常紧密的耦合 - “你是什么意思,你将Customer.FirstName重构为Customer.Name.GivenName?现在我必须重写我的代码,哦,不!”
针对接口进行编程为您提供了更强大的功能,可以在以后更改实现,也许可以交换一个全新的(甚至是动态的,在运行时)。它可能看起来很麻烦,但是对于比Hello World更大的东西,紧耦合会回来咬你的屁股(或者在你之后维护代码的人之后维护代码)。