本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正
书[0名0]: | More Effective C#:改善C#代码的50个有效方[0法0](原书[0第0]2版)|8057798 |
图书定价: | 79元 |
图书作者: | [美] 比尔·瓦格纳(Bill Wagner) |
出版社: | [1机1]械工业出版社 |
出版日期: | 2019-03-13 00:00:00 |
ISBN号: | 9787111620716 |
开本: | 16开 |
页数: | 269 |
版次: | 1-1 |
内容简介 |
在本书中,世界著[0名0]的.NET专家Bill Wagner介绍了用于写出健壮且容易完成的C# 7.0代码的50条中阶至高阶技巧,反映了C#语言及其开发社区的发展,可帮助读者解决每日编程工作中可能遇到的问题。 |
目录 |
译者序 前言 [0第0]1章 处理各种类型的数据 / 1 [0第0]1条:使用属性而不是可直接访问的数据成员 / 1 [0第0]2条:尽量采用隐式属性来表示可变的数据 / 7 [0第0]3条:尽量把值类型设计成不可变的类型 / 11 [0第0]4条:注意值类型与引用类型之间的区别 / 16 [0第0]5条:确保 0 可以[0当0]成值类型的有效状态使用 / 21 [0第0]6条:确保属性能够像数据那样运用 / 25 [0第0]7条:用元组来限制类型的作用范围 / 30 [0第0]8条:在匿[0名0]类型中定义局部函数 / 35 [0第0]9条:理解相等的不同概念及它们之间的关系 / 40 [0第0]10条:留意GetHashCode()方[0法0]的使用陷阱 / 49 [0第0]2章 API设计 / 57 [0第0]11条:不要在API中[扌是]供转换运算符 / 57 [0第0]12条:尽量用可选参数来取代方[0法0]重载 / 61 [0第0]13条:尽量缩减类型的可见范围 / 65 [0第0]14条:[0优0]先考虑定义并实现接口,而不是继承 / 69 [0第0]15条:理解接口方[0法0]与虚方[0法0]之间的区别 / 77 [0第0]16条:用Event模式来实现通[0知0]功能 / 82 [0第0]17条:不要把类的内部对象通过引用返回给外界 / 87 [0第0]18条:[0优0]先考虑重写相关的方[0法0],而不是创建事[亻牛]处理程序 / 91 [0第0]19条:不要重载基类中定义的方[0法0] / 94 [0第0]20条:了解事[亻牛][1机1]制为何[0会0][扌是]升对象在运行期的耦合程度 / 98 [0第0]21条:不要把事[亻牛]声明成virtual / 100 [0第0]22条:尽量把重载方[0法0]创建得清晰、简洁而完备 / 106 [0第0]23条:让 partial类的构造函数、mutator方[0法0]和事[亻牛]处理程序调用适[0当0]的partial方[0法0] / 112 [0第0]24条:尽量不要实现ICloneable接口,以便留出更多的设计空间 / 117 [0第0]25条:数组类型的参数应该用params加以修饰 / 122 [0第0]26条:在迭代器与异步方[0法0]中定义局部函数,以便尽早地报错 / 126 [0第0]3章 基于任务的异步编程 / 131 [0第0]27条:使用异步方[0法0]执行异步工作 / 131 [0第0]28条:不要编写返回值类型为void的异步方[0法0] / 136 [0第0]29条:不要把同步方[0法0]与异步方[0法0]组合起来使用 / 141 [0第0]30条:使用异步方[0法0]以避免线程分配和上下文切换 / 146 [0第0]31条:避免不必要的上下文编组 / 147 [0第0]32条:通过Task对象来安排异步工作 / 151 [0第0]33条:考虑实现任务取消协议 / 157 [0第0]34条:缓存泛型异步方[0法0]的返回值 / 164 [0第0]4章 并行处理 / 167 [0第0]35条:了解PLINQ是怎样实现并行算[0法0]的 / 167 [0第0]36条:编写并行算[0法0]时要考虑异常状况 / 179 [0第0]37条:[0优0]先使用线程池而不是创建[亲斤]的线程 / 185 [0第0]38条:考虑使用BackgroundWorker在线程之间通信 / 190 [0第0]39条:[0学0][0会0]在XAML环境下执行跨线程调用 / 194 [0第0]40条:[0首0]先考虑用lock()实现同步 / 202 [0第0]41条:尽量缩减锁定范围 / 209 [0第0]42条:不要在加了锁的区域内调用未[0知0]的方[0法0] / 212 [0第0]5章 动态编程 / 217 [0第0]43条:了解动态编程的[0优0]点及缺点 / 217 [0第0]44条:通过动态编程技术更[女子]地运用泛型参数的运行期类型 / 226 [0第0]45条:使用DynamicObject和IDynamicMetaObjectProvider实现数据驱动的动态类型 / 229 [0第0]46条:[0学0][0会0]正确使用Expression API / 240 [0第0]47条:尽量减少公有API中的动态对象 / 246 [0第0]6章 加入全球C#社区 / 253 [0第0]48条:[z1u1i]流行的写[0法0]不一定[z1u1i]合适 / 253 [0第0]49条:与[0大0]家一起制定规范并编写代码 / 255 [0第0]50条:考虑用分析器自动检查代码质量 / 256 中英文词汇对照表 / 258 |
编辑推荐 |
[纟巠]典[0畅0]销书《Effective C#》的进阶篇,世界[0知0][0名0]专家Bill Wagner倾力撰写,针对C# 7.0全[mian]更[亲斤] 紧贴C#语言的设计理念,既从正[mian]阐释如何编写高效代码,又从反[mian]入手指出容易出错之处,涵盖C#语言的各个方[mian] More Effective C# 50 Specific Ways to Improve Your C# Second Edition More Effective C# 改善C#代码的50个有效方[0法0](原书[0第0]2版) [ 美 ] 比尔 · 瓦格纳(Bill Wagner) 著 爱飞翔 译 |