More Effective C#中文版:改善C#程序的50个具体办法(奋斗的小鸟)_PDF 电子书

More Effective C#中文版:改善C#程序的50个具体办法

 

下载地址:http://pan.baidu.com/share/link?shareid=1498988824&uk=721744522

 

内容简介

  《More Effective C#中文版:改善C#程序的50个具体办法》延续了Effective系列图书的风格,针对C# 2.0和C# 3.0中添加的新特性给出了实用的建议。书中的50个条目自成一体且又丝丝相扣,这些条目按照泛型、多线程开发、C#设计模式、C# 3.0语言增强、LINQ以及杂项等主题分为6类,将特定的代码和深入的分析有机地结合了起来,能够帮助你以最佳的方式从C# 1.x切换至C# 3.0。当你通读全书之后,会发现不只得到了一条条独立的建议,还学到了如何以优雅的方式用C#进行程序设计。
  《More Effective C#中文版:改善C#程序的50个具体办法》适合具有C#编程经验的.NET开发人员阅读。
 

作者简介

  瓦格纳(Bill Wagner),拥有超过25年的软件开发经验。世界知名的.NET专家。微软C#MVP。并荣获微软Regional Director称号。他是著名软件咨询公司SRT Solutions的创始人。曾经领导了众多成功的Windows平台产品的开发。他是微软开发社区的活跃人物,长期担任MSDN Magazine、ASRNETPro、Visual Studio Magazine等技术杂志的专栏作者。他还是畅销书《Effective C#中文版》(人民邮电出版社,2007)的作者。他的博客是http://srtsolutions.com/blogs/billwagner。可以通过bill.wagner@srtsolutions.com与他联系。
  译者简介:
  陈黎夫,毕业于上海交通大学计算机科学专业。有多年业界经验,曾在微软、EMC等公司任职,现任某创业技术公司CTO。专注于微软技术与LAMP开发平台。并连续3年荣获微软MVP称号。有多本计算机领域内著作/译作出版。内容涵盖CSS、A.JAX、ASP.NET、C#、LINQ和.NET平台架构等多个方面。可以通过 dflyingchen@gmail.com与他联系。

 

目录

第1章 使用泛型 1
条目1:使用1.x框架API的泛型版本 4
条目2:恰到好处地定义约束 14
条目3:运行时检查泛型参数的类型并提供特定的算法 19
条目4:使用泛型强制编译期类型推断 26
条目5:确保泛型类型支持可销毁对象 32
条目6:使用委托定义类型参数上的方法约束 36
条目7:不要为基类或接口创建泛型的特殊实现 42
条目8:尽可能使用泛型方法,除非需要将类型参数用于实例的字段中 46
条目9:使用泛型元组代替out和ref参数 50
条目10:在实现泛型接口的同时也实现传统接口 56

第2章 C#中的多线程 63
条目11:使用线程池而不是创建线程 67
条目12:使用BackgroundWorker实现线程间通信 74
条目13:让lock()作为同步的第一选择 78
条目14:尽可能地减小锁对象的作用范围 86
条目15:避免在锁定区域内调用外部代码 90
条目16:理解Windows窗体和WPF中的跨线程调用 93

第3章 C#设计实践 105
条目17:为序列创建可组合的API 105
条目18:将遍历和操作、谓词以及函数分开 112
条目19:根据需要生成序列中的元素 117
条目20:使用函数参数降低耦合 120
条目21:让重载方法组尽可能清晰、最小化且完整 127
条目22:定义方法后再重载操作符 134
条目23:理解事件是如何增加对象间运行时耦合的 137
条目24:仅声明非虚的事件 139
条目25:使用异常来报告方法的调用失败 146
条目26:确保属性的行为与数据类似 150
条目27:区分继承和组合 156

第4章 C# 3.0语言增强 163
条目28:使用扩展方法增强现有接口 163
条目29:使用扩展方法增强现有类型 167
条目30:推荐使用隐式类型局部变量 169
条目31:使用匿名类型限制类型的作用域 176
条目32:为外部组件创建可组合的API 180
条目33:避免修改绑定变量 185
条目34:为匿名类型定义局部函数 191
条目35:不要在不同命名空间中声明同名的扩展方法 196

第5章 使用LINQ 201
条目36:理解查询表达式与方法调用之间的映射 201
条目37:推荐使用延迟求值查询 213
条目38:推荐使用lambda表达式而不是方法 218
条目39:避免在函数或操作中抛出异常 222
条目40:区分早期执行和延迟执行 225
条目41:避免在闭包中捕获昂贵的外部资源 229
条目42:区分IEnumerable和IQueryable数据源 242
条目43:使用Single()和First()来明确给出对查询结果的期待 247
条目44:推荐保存Expression<>而不是Func<> 249

第6章 杂项 255
条目45:最小化可空类型的可见范围 255
条目46:为部分类的构造函数、修改方法以及事件处理程序提供部分方法 261
条目47:仅在需要parms数组时才使用数组作为参数 266
条目48:避免在构造函数中调用虚方法 271
条目49:考虑为大型对象使用弱引用 274
条目50:使用隐式属性表示可变但不可序列化的数据 277

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 《更有效的C语言编程与设计的35个有效方法》是一本非常实用的书籍,它总结了35个提高C语言编程和设计能力的有效方法。这本书结合实际编程经验,从不同角度介绍了如何更高效地利用C语言进行软件开发。 该书首先从代码的可读性和可维护性方面提出了一些方法。比如,合理命名变量和函数、遵循一定的代码风格、使用注释等,这些方法可以使代码更易于理解和修改,提高工作效率。 其次,该书讲解了一些关于内存管理和指针的技巧。对于C语言的开发者来说,内存管理是一个非常重要的技能。书中通过介绍如何正确使用动态内存分配函数、如何避免内存泄漏等方面来帮助读者提高内存管理的能力。 此外,该书还提供了一些提高代码质量和性能的方法。如代码复用、性能优化等。对于C语言开发者来说,写出高质量、高效率的代码是非常重要的,这本书可以帮助读者掌握一些技巧和原则。 总的来说,这本书内容丰富,通俗易懂,适合C语言的初学者和有一定基础的开发者阅读。它可以帮助读者全面提高C语言编程和设计的能力,提升工作效率。无论是想从事C语言开发还是提升编程技能的人,都可以从中受益匪浅。 ### 回答2: 《more effective c: 35个改善编程与设计的有效方法(中文版) 》是一本非常实用的书籍,它提供了许多改善编程与设计的有效方法。以下是对该书的回答: 这本书共包含了35个方法,旨在帮助读者提高编程和设计的效率。它首先介绍了良好的编程风格和规范,包括命名规则、代码布局、注释等。这些方法可以使代码更易于阅读和维护,并提高代码的可重用性和可扩展性。 接下来,该书介绍了一些常见的编程错误和陷阱,并提供了相应的解决方案。例如,它说明了内存管理的重要性,并给出了避免内存泄漏和悬挂指针的方法。 此外,该书还介绍了一些高级的编程技术和设计模式,如多线程编程、异常处理和继承等。这些方法可以帮助读者编写更健壮和可靠的程序,并提高程序的性能和响应能力。 另外,该书还强调了测试和调试的重要性,并介绍了一些常用的测试工具和技术。它提供了一些测试和调试的实用方法,帮助读者发现和修复程序中的错误和缺陷。 总的来说,《more effective c: 35个改善编程与设计的有效方法(中文版) 》是一本非常实用的书籍,它提供了许多实用的方法和技巧,帮助读者提高编程和设计的效率。无论是初学者还是有经验的开发者,都可以从中受益,并提升自己的编程能力。 ### 回答3: 《more effective c :35个改善编程与设计的有效方法(中文版) .pdf》是一本关于优化编程和设计的有效方法的书籍。 这本书共包含了35个有效方法,可以帮助程序员和设计师改进他们的工作。在这本书中,作者提供了一些实用的技巧和经验,帮助读者提高他们的编程和设计技能。 这本书的价值在于它提供了实用的方法和步骤,读者可以按照这些方法和步骤进行实施,从而实现更有效的编程和设计。这本书涵盖了多个方面,包括代码的优化、错误的处理、算法的选择、设计模式的应用等等。 通过阅读这本书,读者可以了解到如何更好地组织和管理代码,以及如何选择合适的算法和数据结构来提高程序的效率。此外,这本书还介绍了一些设计模式和原则,读者可以学习如何使用它们来提高程序的灵活性和可维护性。 总之,这本书提供了一些实用的方法和技巧,帮助读者改进他们的编程和设计技能。对于那些希望在编程和设计领域取得更好成果的人来说,这本书是一个很好的参考资料。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值