首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为ViewModels使用接口?

为ViewModels使用接口?
EN

Stack Overflow用户
提问于 2018-09-26 14:22:49
回答 2查看 3.8K关注 0票数 6

根据官方文档和google (向日葵和todo- app )提供的示例应用程序,我目前正在将架构组件集成到我的应用程序中。我意识到,这些程序中没有一个使用ViewModels接口(向日葵应用程序甚至不使用存储库接口)。

我的问题是:省略ViewModels的接口(包括优点和缺点)是否合理?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-09-26 19:18:45

省略ViewModels的接口是否合理?

下面的内容不仅适用于ViewModels,而且是相当通用的。

优势

  • 减码

缺点

  • 将无法使用大多数著名的设计模式;
  • 将无法正确的单元测试类(没有嘲弄);
  • 无法正确使用依赖注入框架;
  • 使用另一个具体实现时的代码重构。
票数 6
EN

Stack Overflow用户

发布于 2021-10-05 23:20:59

答案取决于ViewModel的复杂性。如果您永远不会创建一个接口的多个实现(包括模拟),那么就不需要创建接口,因此可以减少代码和总体维护负担。

尽管如此,我们要考虑的重要问题是:

  • 即使没有接口,您的视图模型也可以进行单元测试吗?(答案应该是“是的,否则您还有其他问题”)。
  • 你还能使用依赖注入框架吗(答案是肯定的,至少对于一些DI框架,比如Prism)
  • 您是否只打算创建ViewModel的一个实现?

我认为,一个设计良好的ViewModel的标志,应该有一个相对简单的实现,并易于单元测试,而不必诉诸于嘲弄。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52519986

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档