c# - 转换所有参数、返回类型、类定义以使用接口(interface)

标签 c# oop interface

我正在将所有参数、返回类型、类转换为所有使用接口(interface)的过程,即。 IUser 而不是 User。

除了维护此方法所需的额外代码外,他们对这种方法有任何负面影响吗?

最佳答案

这种方法并不少见,尤其是当您进行大量模拟时;但是,它存在以下问题:

  • 数据绑定(bind)支持(尤其是在向表中添加行时)
  • xml 序列化(包括 comms WCF、asmx 等),或一般基于契约的序列化

您需要弄清楚模拟等的优点是否超过这些问题。在大多数情况下,您可能会使用 IUser,但(例如)在通信层,使用原始 DTO 可能比使用接口(interface)更简单。

请注意,我将上述内容应用于类(class)。如果您涉及结构,请记住,在大多数情况下,这也会涉及装箱。

关于c# - 转换所有参数、返回类型、类定义以使用接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1961932/

相关文章:

oop - Lua - 尝试调用方法 'new' (零值)

C# 如何使用接口(interface)

c# - 如何允许用户作为页面登录,然后使用 C# Facebook SDK 作为该页面发布?

c# - System.Diagnostics.Stopwatch 不准确吗?

c# - 如何在 WPF 中将值从窗口传递到用户控件

c# - 返回接口(interface)类型列表

java - 我没有降低界面的可见性,但出现了 "Cannot reduce visibility"编译错误

继承类上的 C# 单例模式

r - 引用类的有效性方法

c# - SOLID 原则 : interfaces vs. 抽象类