在我们的项目架构中,我们使用经典的MVC模式,包括经典服务层(打开事务并调用DAO层).
对于每个服务,我们都有一个实现和他的接口.但说实话,我很确定对于一个服务和他的界面,我们永远不会有多个实现.好吧也许更清楚的是在界面中声明公共方法有助于知道服务的作用,但是接口用于多个实现,如果我们知道我们不会有多个实现,我们应该保持他们?
解决方法
从
documentation:
Implementing an interface allows a class to become more formal about
the behavior it promises to provide. Interfaces form a contract
between the class and the outside world,and this contract is enforced
at build time by the compiler.
如果您知道只有一个实现,那么实现本身将定义合同,因此您可以删除接口.
但是编写接口可以帮助您更好地定义合同,并且您可能需要在给定点为服务编写模拟,在这种情况下,您将从接口的使用中受益.