Effective C#的50条建议

    //1  C#语言元素
    //1  使用属性代替可访问的数据成员
    //2  运行时常量(readonly)优于编译时常量const
    //3  操作符is/as 优于强制类型转换
    //4  使用Conditional特性代替#if条件编译
    //5  总是提供ToString()方法
    //6  明辨值类型和引用类型的使用场合
    //7  将值类型尽可能实现为具有常量性和原子性的类型
    //8  确保0为值类型的有效状态
    //9  理解几个相等判断之间的关系
    //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标准

你可能感兴趣的:(编程,.net,框架,api,C#,dataset)