4

一般来说,我更喜欢详细说明 .NET 类和实例名称,但有时(引用 Mike Woodhouse 的话):

过于冗长往往会掩盖语法,而语法很重要。

我觉得我真正误入了过度冗长制度的第一个地方是在 Silverlight 和 WPF 应用程序中实现模型-视图-视图模型 (MVVM) 模式。

例如,我从一个 EnumerableRange 模型对象开始:

public class EnumerableRange<T> : IEnumerable<T>
{ 
    public T Start{ get; set; }
    public T Stop{ get; set; }
    public long Count{ get; set; }
    ...
}

然后,我想创建一个控件,允许我显示此类以供用户输入。因此,我创建了一对与视图相关的类:

  1. 一个 EnumerableRangeControlView 用户控件(在 XAML 中),以及
  2. POCO EnumerableRangeControlViewModel

现在,我分别在父 View 和 ViewModel 中使用这对。使用 MVVM,视图实例不需要名称,但我的 ViewModel 实例现在命名为:

IndependentVariableEnumerableRangeControlViewModel

事情开始失控了!你会怎么办?

4

1 回答 1

3

我提出以下建议:

  1. 从 View/ViewModel 类和实例名称中完全删除单词“Control”。“View”和“ViewModel”清楚地说明了类目的。

  2. (可选)始终采用约定以“VM”后修复 ViewModel 实例。

在上面的示例中,实例名称

IndependentVariableEnumerableRangeControlViewModel 

变得更具可读性

IndependentVariableEnumberableRangeVM
于 2009-04-20T17:42:38.243 回答