如果可能有其他东西可以使用它,或者等到实际需要它然后重构使用接口,你是否应该总是创建一个接口?
对界面进行编程通常看起来像是一个合理的建议,但那时就是YAGNI ......
我想也许这取决于具体情况.现在我有一个对象代表一个可以包含食谱或其他文件夹的文件夹.而不是直接使用Folder,我应该担心像IContainer这样的实现吗?在未来的情况下,我希望有一个参考其他子食谱的配方(比如一个苹果馅饼配方也是馅饼皮配方的容器)
它总是取决于具体情况.如果您知道将有另一个使用该接口的类,那么是,创建接口类以便以后节省时间.但是,如果你不确定(大多数时候你不是),那么等到你需要它.
现在,这并不意味着忽略接口的可能性 - 考虑对象的公共方法,以及稍后制作接口,但不要将您的代码库与您实际上不需要的任何东西混为一谈.