WEB开发网
开发学院WEB开发ASP.NET 如何正确地使用#region指令 阅读

如何正确地使用#region指令

 2010-10-09 08:16:17 来源:WEB开发网   
核心提示:这篇文章我将不会去介绍如何使用#region指令,因为每个C#开发人员都应该见过和使用过#region指令的,如何正确地使用#region指令,这篇文章将讨论如何在代码中正确的使用它,使用#region就是将一些有关联的代码组织在一起,为什么我们不把它提取为一个函数呢,这样一来,然后折叠起来,这样你就在

这篇文章我将不会去介绍如何使用#region指令。因为每个C#开发人员都应该见过和使用过#region指令的。这篇文章将讨论如何在代码中正确的使用它。使用#region就是将一些有关联的代码组织在一起,然后折叠起来。这样你就在一个函数中看不到很长的令人头痛的代码段。例如:

public void DoSomething()
{
 bool shouldIDoSomething;
 #region Decide if I should do something
 if(needToDoSomething && haventDoneSomethingThisDay)
  shouldIDoSomething = true;
 else
 {
  // do some other logic to decide and set shouldIDoSomething to some value
 }
 #endregion
 if(shouldIDoSomething)
 {
  done++;
 }
}

当然这段代码很简单。在实际项目中,你可能看到上百行甚至更多的代码在一个#region中。如果把它折叠起来。看起来就会很整洁。是吧?

public void DoSomething()
{
 bool shouldIDoSomething;
 [Decide if I should do something]
 if(shouldIDoSomething)
 {
  done++;
 }
}

只是把一些代码和一些变量组合起来放在#region中。如果你在仔细想想,其实我们相当与创建了一个新的函数,只是将这些方法内置到当前函数中。一个函数只做单一的一件事情,这是Clean Code这本书的一个原则。为什么我们不把它提取为一个函数呢,这样一来,一个函数就只做一件事情了。

public void DoSomething()
{
 if(ShouldIDoSomething())
 {
  done++;
 }
}
private bool ShouldIDoSomething()
{
 if(needToDoSomething && haventDoneSomethingThisDay)
  shouldIDoSomething = true;
 else
 {
  // do some other logic to decide and set shouldIDoSomething to some value
 }
}

1 2  下一页

Tags:如何 正确 使用

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接