2

我正在查看 KIGG 的代码,并注意到有很多接口。我对 MVC 相当陌生,并且有点了解接口是什么。

Interface在MVC中是如何工作的,为什么要使用它?

4

2 回答 2

5

与您为其他应用程序实现接口的原因相同......将实现从使用中抽象出来。

它允许 ASP.NET MVC 框架使用您的代码,即使 Microsoft 开发人员在编写框架之前没有您的实现。

此外,就像 tvanfosson 提到的那样……接口的使用也极大地增强了 ASP.NET MVC 团队正确对其框架进行单元测试的能力。

于 2010-02-19T17:10:03.257 回答
2

我认为您可能会在 MVC 应用程序中看到更多接口的主要原因是对可测试性的新重视。这是 MVC 的重大变化之一,可测试性在框架的设计中被赋予了更多的权重。接口在设计单元测试时更容易使用,因为它们允许您开发模拟实现以供测试使用。随着时间的推移,我预计 .NET 的大部分(如 Web.Abstractions)将转向更可测试的(抽象基类/接口)形式。

于 2010-02-19T17:13:17.293 回答