《Effective C#中文版 改善C#程序的50种方法》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:(美)瓦格纳(Wagner,B.)著;李建忠译
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2007
  • ISBN:7115158886
  • 页数:304 页
图书介绍:

第1章 C#语言元素 1

条款1:使用属性代替可访问的数据成员 1

条款2:运行时常量(readonly)优于编译时常量(const) 12

条款3:操作符is或as优于强制转型 17

条款4:使用Conditional特性代替#if条件编译 25

条款5:总是提供ToString()方法 31

条款6:明辨值类型和引用类型的使用场合 38

条款7:将值类型尽可能实现为具有常量性和原子性的类型 44

条款8:确保0为值类型的有效状态 51

条款9:理解几个相等判断之间的关系 56

条款10:解GetHashCode()方法的缺陷 63

条款11:优先采用foreach循环语句 70

第2章 NET资源管理 77

条款12:变量初始化器优于赋值语句 82

条款13:使用静态构造器初始化静态类成员 84

条款14:利用构造器链 87

条款15:利用using和try/finally语句来清理资源 93

条款16:尽量减少内存垃圾 100

条款17:尽量减少装箱与拆箱 103

条款18:实现标准Dispose模式 109

第3章 使用C#表达设计 117

条款19:定义并实现接口优于继承类型 118

条款20:明辨接口实现和虚方法重写 125

条款21:使用委托表达回调 129

条款22:使用事件定义外发接口 131

条款23:避免返回内部类对象的引用 137

条款24:声明式编程优于命令式编程 142

条款25:尽可能将类型实现为可序列化的类型 148

条款26:使用IComparable和IComparer接口实现排序关系 156

条款27:避免ICloneable接口 163

条款28:避免强制转换操作符 167

条款29:只有当新版基类导致问题时才考虑使用new修饰符 172

第4章 创建二进制组件 177

条款30:尽可能实现CLS兼容的程序集 181

条款31:尽可能实现短小简洁的函数 186

条款32:尽可能实现小尺寸、高内聚的程序集 190

条款33:限制类型的可见性 194

条款34:创建大粒度的Web API 198

第5章 使用框架 205

条款35:重写优于事件处理器 205

条款36:合理使用NET运行时诊断 208

条款37:使用标准配置机制 213

条款38:定制和支持数据绑定 217

条款39:使用NET验证 224

条款40:根据需要选用恰当的集合 229

条款41:DataSet优于自定义结构 237

条款42:利用特性简化反射 246

条款43:避免过度使用反射 253

条款44:为应用程序创建特定的异常类 258

第6章 杂项讨论 265

条款45:优先选择强异常安全保证 265

条款46:最小化互操作 270

条款47:优先选择安全代码 277

条款48:掌握相关工具与资源 281

条款49:为C#2.0做准备 284

条款50:了解ECMA标准 293

索引 295