您的位置:首页 > 其它

OA 项目组编码规范

2011-01-12 10:33 381 查看

1. 集合的使用

如果集合在上下文中的长度是可变的,那么用List<T>

如果集合在上下文中的长度是不可变的,那么用IEnumerable<T>

2. 对foreach的简化

代码

List<ReservationType> resList = new List<ReservationType>();
foreach(var res in reses)
{
if(res.Status == (int)ReservationTypeEnum.Normal && res.Time >= DateTime.Today)
{
resList.Add(res);
}
}

应该重构为以下代码

var normalReses = reses.SafeFindAll(n=>n.Status == (int)ReservationTypeEnum.Normal && n.Time >= DateTime.Today);

2. 参数命名

对于class的public方法,如果在执行过程中,该参数是可选的,那么参数名称前面加上option,例如:

public void DoSomething(long clientID, long optionDependentID){}

3.冗余代码

没有必要的变量

1 List<SaleItem> saleItemList = new List<SaleItem>();
2 saleItemList.AddRange(otherCollection.SaleItems);
3
4 IEnumerable<SaleItem> newSaleItems = GenerateNewSaleItems(saleItemList, numberOfPersons);

saleItemsList在这里为没有必要的变量。可以将代码简化为

1 IEnumerable<SaleItem> newSaleItems = GenerateNewSaleItems(new List<SaleItem>(otherCollection.SaleItems), numberOfPersons);

或者修改GenerateNewSaleItems的函数声明

1 private List<SaleItem> GenerateNewSaleItems(List<SaleItem> saleItemList, int numberOfPersons)

改为

1 private IEnumerable<SaleItem> GenerateNewSaleItems(IEnumerable<SaleItem> saleItemList, int numberOfPersons)

...持续更新中
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: