Jie*_*eng 2 c# mvvm mvvm-foundation
我正在使用MVVM Foundation的SampleModel项目.Wwh ICommand在_decrementCommand声明为时返回RelayCommand.我知道RelayCommand继承ICommand但不会更清楚只返回一个RelayCommand?
public ICommand DecrementCommand {
get { return _decrementCommand ?? (_decrementCommand = new RelayCommand(() => --this.Value)); }
}
RelayCommand _decrementCommand;
Run Code Online (Sandbox Code Playgroud)
这是使用您可以逃脱的最不具体类型的原则.具体或特定类型是一种责任,因为它们更容易暴露呼叫者不需要知道的事物,并且它们更可能需要被更改(使它们成为实现细节).
在这种情况下,如果始终返回ICommand,则可以在不破坏调用者的情况下更改基础命令类型.您还可以期望呼叫者不必了解您的功能所做的事情,而不是他们实际应该知道的事情,这意味着他们不太可能违反OO原则.
| 归档时间: |
|
| 查看次数: |
393 次 |
| 最近记录: |