And*_*hin 3 .net c# coding-style
怎么写得更好?
public void Foo(bool isStart) {
// Code [Common]
if (is Start) {
// Code [Start]
} else {
// Code [End]
}
// Code [Common]
}
Run Code Online (Sandbox Code Playgroud)
要么
public enum MyEnum {
Start, End
}
public void Foo(MyEnum param) {
// Code [Common]
switch (param) {
case MyEnum.Start:
// Code [Start]
break;
case MyEnum.End:
// Code [End]
break;
}
// Code [Common]
}
Run Code Online (Sandbox Code Playgroud)
更新:我正在寻找一个小解决方案."Common","Start"和"End"部分都很短,我不想Foo分成几种方法.
怎么样:
public class Foo
{
public void Start()
{
PreCommon();
// Code [Start]
PostCommon();
}
public void Stop()
{
PreCommon();
// Code [Stop]
PostCommon();
}
private void PreCommon()
{
// Code [Pre-Common]
}
private void PostCommon()
{
// Code [Post-Common]
}
...
}
Run Code Online (Sandbox Code Playgroud)
具有单一职责的方法更易于阅读,更易于理解且更易于维护.