《More Effective C#中文版改善C#程序的50个具体办法》扫描版
基本信息
打开支付宝首页搜“673273051”领红包,领到大红包的小伙伴赶紧使用哦!
相关书籍
- 《Complete C# Masterclass》[]
- 《Learn Unity 3D by coding a complete game start to finish C#》[]
- 《C# winform 版本的简单人事管理系统开发过程实录》第一版[]
- 《C#程序设计及应用教程》电子书[]
- 《Head First C#(第二版中文版)》 )电子书[]
- 《VISUAL C#.NET 2008 程序设计案例集锦》电子书[]
- 《C#网络编程高级篇之网页游戏辅助程序设计》电子书[]
- 《框架设计(第2版):CLR Via C#》电子书[]
- 《C#深入详解》电子书[]
- 《Visual C#.NET案例开发集锦(第二版)》电子书[]
内容介绍
目录:
第1章 使用泛型
条目1:使用1.x框架api的泛型版本
条目2:恰到好处地定义约束
条目3:运行时检查泛型参数的类型并提供特定的算法
条目4:使用泛型强制编译期类型推断
条目5:确保泛型类型支持可销毁对象
条目6:使用委托定义类型参数上的方法约束
条目7:不要为基类或接口创建泛型的特殊实现
条目8:尽可能使用泛型方法,除非需要将类型参数用于实例的字段中
条目9:使用泛型元组代替out和ref参数
条目10:在实现泛型接口的同时也实现传统接口
第2章 c#中的多线程
条目11:使用线程池而不是创建线程
条目12:使用backgroundworker实现线程间通信
条目13:让lock()作为同步的第一选择
条目14:尽可能地减小锁对象的作用范围
条目15:避免在锁定区域内调用外部代码
条目16:理解windows窗体和wpf中的跨线程调用
第3章 c#设计实践
条目17:为序列创建可组合的api
. 条目18:将遍历和操作、谓词以及函数分开
条目19:根据需要生成序列中的元素
条目20:使用函数参数降低耦合
条目21:让重载方法组尽可能清晰、最小化且完整
条目22:定义方法后再重载操作符
条目23:理解事件是如何增加对象间运行时耦合的
条目24:仅声明非虚的事件
条目25:使用异常来报告方法的调用失败
条目26:确保属性的行为与数据类似
条目27:区分继承和组合
第4章 c# 3.0语言增强
条目28:使用扩展方法增强现有接口
条目29:使用扩展方法增强现有类型
条目30:推荐使用隐式类型局部变量
条目31:使用匿名类型限制类型的作用域
条目32:为外部组件创建可组合的api
条目33:避免修改绑定变量
条目34:为匿名类型定义局部函数
条目35:不要在不同命名空间中声明同名的扩展方法
第5章 使用linq
条目36:理解查询表达式与方法调用之间的映射
条目37:推荐使用延迟求值查询
条目38:推荐使用lambda表达式而不是方法
条目39:避免在函数或操作中抛出异常
条目40:区分早期执行和延迟执行
条目41:避免在闭包中捕获昂贵的外部资源
条目42:区分ienumerable和iqueryable数据源
条目43:使用single()和first()来明确给出对查询结果的期待
条目44:推荐保存expression[]而不是func[]
第6章 杂项
条目45:最小化可空类型的可见范围
条目46:为部分类的构造函数、修改方法以及事件处理程序提供部分方法
条目47:仅在需要parms数组时才使用数组作为参数
条目48:避免在构造函数中调用虚方法
条目49:考虑为大型对象使用弱引用
条目50:使用隐式属性表示可变但不可序列化的数据
索引
