• 读书笔记:《 Effective C#中文版:改善C#程序的50种方法》(李建忠译)


    第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
  • 相关阅读:
    spark sql 性能调优
    google c++ 规范
    idea
    Ubuntu16.04-hadoop3 安装与配置
    NewRelic 性能监测工具
    关于 g++ link
    vue 实现 多个 数字滚动增加动效
    mac 电脑安装express、npm…… 报 ‘Missing write access to /usr/local/lib/node_modules’错误解决办法
    vue + mock.js 简单使用
    vue去掉地址栏# 方法
  • 原文地址:https://www.cnblogs.com/Jax/p/745082.html
Copyright © 2020-2023  润新知