类文件中的接口

时间:2009-01-07 14:52:53

标签: c# interface

我的接口和接口的具体实现是否应该分成两个单独的文件?

7 个答案:

答案 0 :(得分:10)

如果您希望其他类实现该接口,那么它可能是一个好主意,如果只是为了清洁。任何查看界面的人都不应该每次都看看你的实现。

答案 1 :(得分:3)

如果只有一个实现:为什么接口?

如果有多个实施方案:您将其他实施方案放在哪里?

答案 2 :(得分:1)

如果不同的文件你的意思是你的程序集中不同的xxx.cs文件,那么通常由于我自己的做法我会说是 - 但这取决于你使用的房屋标准。如果你只是为自己编程,那么我会说这是一个很好的编码实践,它保持一切干净,易于阅读。任何给定文件中的代码块越小,就越容易遵循(在合理范围内),显然你可以开始进入部分类,如果你没有统治它就会开始变得荒谬。

作为一项规则,我将项目保存在一个逻辑文件夹结构中,项目的某些部分可能会分配到文件夹DAL或BM中,并且在那里我可能有一些逻辑命名的文件夹,每个文件夹包含许多文件:一个接口,一个实现和特定于那些的任何帮助程序类。

但是,如果您在开发团队中工作,那么应该采用您的团队/内部最佳实践。

答案 3 :(得分:0)

单独的文件...... FTW!您甚至可能希望根据代码的可扩展性创建单独的项目/程序集。至少它应该在一个单独的命名空间中。

接口的重点是使用接口的代码不关心实现。因此它们应该尽可能松散地关联,如果不是,它们就不会是它们在同一个文件中。

但正如@balabaster所说,这取决于你的团队的实践(虽然他们并不总是“最佳实践”)。

答案 4 :(得分:0)

是的,对于他们称为partial class的课程, 看看link text

答案 5 :(得分:0)

一般的经验法则,是的。接口意味着它可以由其他类实现,当它们显然位于单独的文件中时,它更清晰,更容易管理。

更重要的是,根据应用程序的分离和隔离级别,您甚至可以将接口放在自己的项目中。然后使用项目将引用接口项目,而不是每个承载该接口实现的程序集。

答案 6 :(得分:0)

是的,即使有一个反对论据,例如只有一个实现,或者他/她预见到很长一段时间内只有一个实现,或者他/她是唯一的用户/开发者等。如果有多个实现,多个用户等,然后很明显,您希望将它们保存在单独的文件中。那么为什么只在一个实现的情况下对待它呢?