Effective C# 中文版:改善C#程序的50种方法

第1章 C#语言元素

01 使用属性代替可访问的数据成员
02 运行时常量(readonly)优于编译时常量(const)
03 操作符is或as优于强制转型
04 使用Conditional特性代替#if条件编译
05 总是提供ToString()方法
06 明辨值类型和引用类型的使用场合
07 将值类型尽可能实现为具有常量性和原子性的类型
08 确保0为值类型的有效状态
09 理解几个相等判断之间的关系
10 理解GetHashCode()方法的缺陷
11 优先采用foreach循环语句

第2章 .NET资源管理

12 变量初始化器优于赋值语句
13 使用静态构造器初始化静态类成员
14 利用构造器链
15 利用using和try/finally语句来清理资源
16 尽量减少内存垃圾
17 尽量减少装箱与拆箱
18 实现标准Dispose模式

第3张 使用C#表达设计

19 定义并实现接口优于继承类型
20 明辨借口实现和虚方法重写
21 使用委托表达回调
22 使用事件定义外发接口
23 避免返回内部类对象的引用
24 声明式编程优于命令式编程
25 尽可能将类型实现为可序列化的类型
26 使用IComparable和IComparer接口实现排序关系
27 避免ICloneable接口
28 避免强制转换操作符
29 只有当新版基类导致问题时才考虑使用new修饰符

第4章 创建二进制组件

30 尽可能实现CLS兼容的程序集
31 尽可能实现短小简洁的函数
32 尽可能实现小尺寸、高内聚的程序集
33 限制类型的可见性
34 创建大粒度的Web API

第5章 使用框架

35 重写优于事件处理器
36 合理使用.NET运行时诊断
37 使用标准配置机制
38 定制和支持数据绑定
39 使用.NET验证
40 根据需要选用恰当的集合
41 DataSet优于自定义结构
42 利用特性简化反射
43 避免过度使用反射
44 为应用程序创建特定的异常类

第6章 杂项讨论

45 优先选择强异常安全保证
46 最小化互操作
47 优先选择安全代码
48 掌握相关工具与资源
49 为C#2.0做准备
50 了解ECMA标准 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值