140、使用默认的访问修饰符
public class SampleClass
{
private string name;
private void Func() { }
}
public class SampleClass2
{
string name;
void Func() { }
}
书上推崇的是第二种,能少写就少写,但是我觉得还是写上的好
141、不知道该不该用大括号的时候,就用
如果if下面就一条语句,不知道用不用的时候,那就写上去
142、总是提供有意义的命名
对
143、方法抽象级别应在同一层次
public class SampleClass
{
public void Init()
{
//本地初始化
RemoteInit();
}
private void RemoteInit()
{
//远程初始化
}
}
public class SampleClass
{
public void Init()
{
LocalInit();
RemoteInit();
}
private void LocalInit()
{
//本地初始化
}
private void RemoteInit()
{
//远程初始化
}
}
144、一个方法只做一件事情
单一职责原则
145、避免过长的方法和过长的类
方法如果在VS里面需要滚屏才能阅读完,那么就需要想办法重构了
一个类的代码也尽量不要超过300行
146、只对外公布必要操作
对
147、重构多个相关属性为一个类
如果一个类中多个属性为相关属性,最好重构成一个新的类
148、不重复代码
重复的就生成新的方法
149、使用表驱动法避免过长的if和switch分支
很棒的思路,根据枚举的值,配合字符串或者list的索引来获取对应的内容
150、使用匿名方法、Lambda表达式代替方法
如果只使用一次的方法,建议使用
151、使用事件访问器替代公开的事件成员变量
就像使用属性代替公开的成员变量一样,能提供更多操作
152、最少,甚至是不要注释
如果遵循了代码整洁之道,那么代码就算不加注释也一样清晰明确,而且更新代码后忘了更新注释是很难受的
153、若抛出异常、则必须要注释
注释能告诉我们方法会抛出哪些异常,因为如何命名也不会告诉调用者会出现什么异常