减少程序中的判断_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > 减少程序中的判断

减少程序中的判断

 2013/7/10 22:15:00  Insus.NET  博客园  我要评论(0)
  • 摘要:如果判断过多,也许令程序变得复杂,或许日后还有条件添加时,维护起来可想而知。Insus.NET有看到论坛一个网友帖出问题的代码:它的问题是Session的判断,判断Session是否为空,正确方法应该是:Session["xxx"]!=null现在,我们在这里不讨论问题与原因,讨论的是怎样设计下拉菜单与减少条件的判断。从两段代码来看,网友是在前一页放在下拉菜单,让用户选择,并在文本框中输入一些值,来转向第二页再判断对选择的条件进行查询。不管第一代码代码,还是第二段代码,If很多,也就是说
  • 标签:程序

如果判断过多,也许令程序变得复杂,或许日后还有条件添加时,维护起来可想而知。Insus.NET有看到论坛一个网友帖出问题的代码:



它的问题是Session的判断,判断Session 是否为空,正确方法应该是:

Session["xxx"] != null


现在,我们在这里不讨论问题与原因,讨论的是怎样设计下拉菜单与减少条件的判断。从两段代码来看,网友是在前一页放在下拉菜单,让用户选择,并在文本框中输入一些值,来转向第二页再判断对选择的条件进行查询。

不管第一代码代码,还是第二段代码,If很多,也就是说,条件判断很多。日后有可以还要添加。只要有条件修改,网友就得两个地方同时修改,改了第一代码,第二段代码也必须同时修改。

从第二代码来看,网友是想用户搜索一个表中某一些字段。  些字段名在第一段代码下拉式菜单中,改用了一个通俗的名称来给用户看见与好理解。网友想到了,是不错了,但没有设计好,带来了程序的复杂度。怎样说法?

下拉式菜单DropDownList中两个属性,一个Value,一个Text, Text是内容是显示给用户看到的,而Value是给程序员使用的。因此在设计DropDownList的数据源时,应该是字段名对应通俗名。[author]  <---> 作者 ; [bookName]  <---> 书名 等等。

这样子,用户在第一页的DropDownList看到的选择,还是作者,书名...等。在程序处理时,选择是,就是真正的字段名。这样做有什么好处吧,可以从面的重构程序中看得出来。

第一段代码,可以重构为下面的样子:



第二代码,就可以重构为:



重构之后,也许你不会有机分再修改这两段代码了。只是对DropDownList的数据源增减而已。

发表评论
用户名: 匿名