我的工作WPF应用程序,和我结构使用。模式。最初,我有一个想法,这个例子应该重复使用,但现在我不太肯定了.

  • 我应该能够重复使用我的这个例子如果我需要类似的功能,对它的应用?
  • Silverlight不支持所有的事情WPF不会-我应该能够重复使用用于安全更新,请参见?
  • 如果我想做一个Linux GUI对我的应用程序。然后我需要的模型建立在单是这个东西我应该努力?
  • 等等..

如此;应该写模型类的一个特定的查看记住,或认为可重复使用性?

有帮助吗?

解决方案

来回答你的问题,认为有关的单一责任的原则:

"一类应该有一个和唯一 一、理由改变"。

我想说,在合理范围内,通常不要重复使用一个模型为多意见。主要原因我认为对于这一点,是因为这会给你的视图模型多的一个原因改变。换句话说,它就需要改变,如果一个或另一种观点变化,在我看来,这是两个原因改变。它在哪里停下来?我想保持它的简单在这种情况下,将一视图模型的图。

另一个要考虑的。与WPF数据模板。它更容易做到,如果每个模型能满足一个和唯一一个图。

其他提示

只是在一般情况下,适用的YAGNI principl-你可能不会需要它。除非你可以看到这些东西,因为可能发生的事情,我会保留的简单的方法来获得软件工作的要求,目前拥有的。

在我的心, 主要的目标。是消除码,不能轻易地通过测试的单元测试.由于视图模型的可单元的测试,但视不,这是通过制作视为愚蠢的,因为可能。理想情况下,可以做了摘述观点是完全的声明和只有数据结合在一视图模型。因此"没有代码后面的"口头禅。

重新用性视图模型在不同的UI技术不是一个真正的目标。.如果你尝试你可能会被诱惑到移动代码的特定的用户界面的技术图,再次保留的视图模型的可重复使用。这将违背的主要目标的可测试性。

如果你真的找到自己需要支持不同UI技术,那么你仍然可以因子的共同逻辑的视图模型进入一个共用的"展示"层。我不会这样做,直到确定,这是必要的。

这是一个古老的问题,因此我毫不犹豫地加入另一个答案。但所有答复发表迄今为止已经错过了点。 答案从MSDN 是非常清楚的:该模型是非常具体的旨在共享通过的许多意见在各种开放源码软件,作为表明在这个图:

enter image description here

这样做,否则会导致不可避免的冗余的代码。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top