改善您的C#程序系列(4)-ToString()
在.Net世界里,用得最多的方法之一就是System.Object.ToStrying()了。你应该为你所有的客户写一个“通情达理”的类(译注:这里是指这个类应该对用户友好)。要么,你就迫使所用类的用户,去使用类的属性并添加一些合理的易读的说明。这个以字符串形式存在,关于你设计的类的说明,可以很容易的向你的用户显示一些关于对象的信息到:Windows Form里,Web Form里,控制台输出。这些字符说明可以用于调试。你写的任何一种类型,都应该合理的重写这个方法。当你设计更多的复杂的类型时,你应该实现应变能力更强的IFormatt...
改善您的C#程序系列(3)-is与as
选择is或者as操作符而不是做强制类型转换 C#是一个强数据类型语言。好的编程实践意味着当可以避免从一种数据类型强制转化为另种数据类型时,我们应该尽我们的所能来避免它。但在某些时候,运行时类型检测是不可避免的。在C#里,大多数时候你要为调用函数的参数使用System.Object类型,因为Framwork已经为我们定义了函数的原型。你很可能要试图把那些类型进行向下转化为其它类型的接口或者类。你有两个选择:用as运算符,或者,采用旧式的C风格,强制转换。(不管是哪一种,)你还必须对变量进行保护:你可以试着用is...
改善您的C#程序系列(2)-readonly与const
为你的常量选择readonly而不是const 对于常量,C#里有两个不同的版本:运行时常量和编译时常量。 因为他们有不同的表现行为,所以当你使用不当时,将会损伤程序性能或者出现错误。 两害相权取其轻,当我们不得不选择一个的时候,我们宁可选择一个运行慢一点但正确的那一个,而不是运行快一点但有错误的那个。基于这个理由,你应该选择运行时常量而不是编译时常量(译注:这里隐藏的说明了编译时常量效率更高,但可能会有错误)。 编译时常量更快更直接,但在可维护性上远不及运行时常量。保留编译时常量是为了满足...
专题:改善您的C#程序
改善您的C#程序系列 改善您的C#程序系列(1)-属性与数据成员 | 数据库之家 改善您的C#程序系列(2)-readonly与const | 数据库之家 改善您的C#程序系列(3)-is与as | 数据库之家 改善您的C#程序系列(4)-ToString() 改善您的C#程序系列(5)-值类型与引用类型 改善您的C#程序系列(6)-垃圾回收 改善您的C#程序系列(7)-初始化器 改善您的C#程序系列(8)-静态构造函数 改善您的C#程序系列(9)-构造函数 改善您的C#程序系列(10)-资源清理 改善您的C#程序系列(11)-垃圾回收器 改善您的C#程序系列(12)-装箱和拆箱 改善您的C#...
改善您的C#程序系列(1)-属性与数据成员
尽可能的使用属性(property),而不是数据成员(field)。 出于以下几点原因,请在设计类时,尽可能的使用属性,而不是成员。 1、.Net对属性的支持远远大于对成员的支持,你可以对属性进行数据绑定,设计时说明等很多数据成员不被支持的内容。看看.net里的属性面板,你会明白的。 2、数据安全性检测; 属性本质上是两个函数,只是因为C#的特殊语法,但我们可以像访问成员一样的访问它。因此我们可以在属性设计上添加更多更灵活的内容,对属性进行管理。其中对属性数据的检测是其中之一。 在对数据检测时,如果...