1.一定要用大括号括住流程控制元素,如for,while,if,switch内嵌的代码,即便只包含一行代码。
2.如果语句中有else if,一定要有一个else跟着最后一个else if。
3.只要使用switch在所有case后面一定要有default。
4.当对字符串进行复杂操作的时候考虑用StringBuilder,StringBuilder可以在实例化的时候制定字符串需要多少空间,这样不需要重复分配内存。
5.用static readonly来修饰一个常量而不用const,好处就是牺牲一点点性能的情况下让CLR进行运行时的类型检查。
6.在最靠近第一次使用某个变量的地方声明并初始化这个变量而不是在整个模块的最开头。
7.当一个object实例不再使用应该赋值为null,这样可以提醒GC(垃圾回收器)回收这个类。
8.如果函数中有object继承IDisposable接口,那么必须保证IDisposable.Dispose()方法在函数退出前一定被调用。
9.以下几种情况需要继承IDisposable接口:
(1)Object的成员包含非托管资源。
(2)Object的成员包含很耗内存的托管资源
(3)Object中的成员变量继承IDisposable接口
10.注意throw和throw e的区别
11.如果没有必要不要写catch模块