Effective C#:改善C#代码的50个有效方法(原书第3版)
作者:Bill Wagner
出版社:机械工业出版社
ISBN:9787111597193
VIP会员免费
(仅需0.8元/天)
¥ 40.0
温馨提示: 价值40000元的1000本电子书,VIP会员随意看哦!
电子书推荐
-
Effective Java 中文版(原书第3版).[美]Joshua Bloch(带详细书签).pdf 评分:
本书一共包含90个条目,每个条目讨论Java程序设计中的一条规则。这些规则反映了最有经验的优秀程序员在实践中常用的一些有益的做法。全书以一种比较松散的方式将这些条目组织成11章,每一章都涉及软件设计的一个主要方面。因此,本书并不一定需要按部就班地从头读到尾,因为每个条目都有一定程度的独立性。这些条目相互之间经常交叉引用,因此可以很容易地在书中找到自己需要的内容。 本书的目标是帮助读者更加有效地使用Java编程语言及其基本类库:java.lang、java.util和java.io,以及子包,如java.util.concurrent和java.util.function。本书时不时地也会讨论其他的类库。 第1章 引言 1 第2章 创建和销毁对象 4 第1条:用静态工厂方法代替构造器 4 第2条:遇到多个构造器参数时要考虑使用构建器 8 第3条:用私有构造器或者枚举类型强化Singleton属性 13 第4条:通过私有构造器强化不可实例化的能力 15 第5条:优先考虑依赖注入来引用资源 16 第6条:避免创建不必要的对象 18 第7条:消除过期的对象引用 20 第8条:避免使用终结方法和清除方法 23 第9条:try-with-resources优先于try-finally 27 第3章 对于所有对象都通用的方法 30 第10条:覆盖equals时请遵守通用约定 30 第11条:覆盖equals时总要覆盖hashCode 40 第12条:始终要覆盖toString 44 第13条:谨慎地覆盖clone 46 第14条:考虑实现Comparable接口 53 第4章 类和接口 59 第15条:使类和成员的可访问性最小化 59 第16条:要在公有类而非公有域中使用访问方法 62 第17条:使可变性最小化 64 第18条:复合优先于继承 70 第19条:要么设计继承并提供文档说明,要么禁止继承 75 第20条:接口优于抽象类 79 第21条:为后代设计接口 83 第22条:接口只用于定义类型 85 第23条:类层次优于标签类 86 第24条:静态成员类优于非静态成员类 88 第25条:限制源文件为单个顶级类 91 第5章 泛型 93 第26条:请不要使用原生态类型 93 第27条:消除非受检的警告 97 第28条:列表优于数组 99 第29条:优先考虑泛型 102 第30条:优先考虑泛型方法 106 第31条:利用有限制通配符来提升API的灵活性 109 第32条:谨慎并用泛型和可变参数 114 第33条:优先考虑类型安全的异构容器 118 第6章 枚举和注解 123 第34条:用enum代替int常量 123 第35条:用实例域代替序数 131 第36条:用EnumSet代替位域 132 第37条:用EnumMap代替序数索引 134 第38条:用接口模拟可扩展的枚举 138 第39条:注解优先于命名模式 140 第40条:坚持使用Override注解 147 第41条:用标记接口定义类型 149 第7章 Lambda和Stream 151 第42条:Lambda优先于匿名类 151 第43条:方法引用优先于Lambda 154 第44条:坚持使用标准的函数接口 156 第45条:谨慎使用Stream 159 第46条:优先选择Stream中无副作用的函数 164 第47条:Stream要优先用Collection作为返回类型 168 第48条:谨慎使用Stream并行 172 第8章 方法 176 第49条:检查参数的有效性 176 第50条:必要时进行保护性拷贝 179 第51条:谨慎设计方法签名 182 第52条:慎用重载 184 第53条:慎用可变参数 189 第54条:返回零长度的数组或者集合,而不是null 190 第55条:谨慎返回optinal 192 第56条:为所有导出的API元素编写文档注释 196 第9章 通用编程 202 第57条:将局部变量的作用域最小化 202 第58条:for-each循环优先于传统的for循环 204 第59条:了解和使用类库 207 第60条:如果需要精确的答案,请避免使用float和double 209 第61条:基本类型优先于装箱基本类型 211 第62条:如果其他类型更适合,则尽量避免使用字符串 213 第63条:了解字符串连接的性能 215 第64条:通过接口引用对象 216 第65条:接口优先于反射机制 218 第66条:谨慎地使用本地方法 220 第67条:谨慎地进行优化 221 第68条:遵守普遍接受的命名惯例 223 第10章 异常 227 第69条:只针对异常的情况才使用异常 227 第70条:对可恢复的情况使用受检异常,对编程错误使用运行时异常 229 第71条:避免不必要地使用受检异常 231 第72条:优先使用标准的异常 232 第73条:抛出与抽象对应的异常 234 第74条:每个方法抛出的所有异常都要建立文档 235 第75条:在细节消息中包含失败-捕获信息 237 第76条:努力使失败保持原子性 238 第77条:不要忽略异常 239 第11章 并发 241 第78条:同步访问共享的可变数据 241 第79条:避免过度同步 245 第80条:executor、task和stream优先于线程 250 第81条:并发工具优先于wait和notify 251 第82条:线程安全性的文档化 256 第83条:慎用延迟初始化 258 第84条:不要依赖于线程调度器 261 第12章 序列化 263 第85条:其他方法优先于Java序列化 263 第86条:谨慎地实现Serializable接口 266 第87条:考虑使用自定义的序列化形式 269 第88条:保护性地编写readObject方法 274 第89条:对于实例控制,枚举类型优先于readResolve 279 第90条:考虑用序列化代理代替序列化实例 282 附录 与第2版中条目的对应关系 286 参考文献 289
上传时间:2019-02 大小:188.67MB
- 570KB
Effective Java第三版1
2022-08-08《Effective Java》第三版中文版目录 第一章 介绍 1 第二章 创建和销毁对象 4 1 考虑用静态工厂方法替换构造器 4 2 当遇到多个构造器参
- 17.0MB
effective c# (第三版)
2018-06-19Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this book, and the publisher was aware of a trademark claim, the designations have been printed with initial capital letters or in all capitals. The author and publisher have taken care in the preparation of this book, but make no expressed or implied warranty of any kind and assume no responsibility for errors or omissions. No liability is assumed for incidental or consequential damages in connection with or arising out of the use of the information or programs contained herein.
- 164.8MB
effecctivejava 第三版中文
2019-03-22effecctivejava 第三版中文
- 4.2MB
effective-java-3rd-chinese
2021-05-24effective-java-3rd-chinese 前51条:文章翻译来源地址: about this repository 本来以为只是个直接搬运的活,实际上不是。主要工作如下: 改进排版,原有博文排版不太优秀,根据markdown 排版指北重新排版。 内容修改,原作者在翻译过程中有笔误(可能打字太快了),这里进行修改。 等待内容搬运完成,使用cmd markdown生成 pdf 离线文件 markdown 文件以及英文版原版链接也都放在了 github 上面,希望小伙伴也可以中英文对照,给出一些意见。 友情链接
- 11KB
java逻辑思维笔试题-effective-java-3rd-edition:有效的Java第3版注释
2021-06-20java逻辑思维笔试题Effective Java - 第三版笔记 章节索引 02 - 创建和销毁对象 03 - 所有对象通用的方法 04 - 类和接口 05 - 泛型 06 - 枚举和注释 07 - Lambda 和流 08 - 方法 09 - 通用编程 10 - 例外 11 - 并发 12 - 序列化 第 2 章 - 创建和销毁对象 第 1 项 - 考虑静态工厂方法而不是构造函数 传统与灵活的对象实例化方式 静态工厂方法示例: public static Boolean valueOf( boolean b) { return b ? Boolean . TRUE : Boolean . FALSE ; } 的优点和缺点: (PRO) 静态工厂有名字,不像构造函数 (PRO) 静态工厂不需要在每次调用时创建新对象 这样的类称为实例控制 启用单例(第 2 项)和不可实例化(第 3 项)保证 允许不可变值类保证不存在两个实例 形成模式的基础 枚举类型提供了这种保证 (PRO) 静态方法可以返回其返回类型的任何子类型的对象,与构造函数不同 这会导致 API 紧凑 适合基于接口的框架(条目
- 495KB
Google首席工程师Joshua Bloch谈如何设计优秀的API
2019-04-23Google首席工程师Joshua Bloch谈如何设计优秀的API。
- 29.49MB
重构与模式.[美]Joshua Kerievsky(带详细书签).pdf
2018-12-24书中讲述了27种重构方式。 本书适于面向对象软件开发人员阅读,也可作为高校计算机专业、软件工程专业师生的参考读物。 第1章 本书的写作缘由 1 1.1 过度设计 1 1.2 模式万灵丹 2 1.3 设计不足 2 1.4 测试驱动...
- 36KB
Joshua Bloch访谈录.doc
2019-10-16这次Java 2006研讨会请来两位来自Google总部的Java大师Josh Bloch与Neal Gafter 来台湾参加,我和我找来帮我壮胆(从新加坡过来的,英文很好)的同事都获益良多。在联络感情、练英文、以及陪他们在台北吃喝玩乐四天之...
- 3.21MB
java并发最佳书籍Java.Concurrency.in.Practice
2010-10-22最近在学习java并发相关,发现这边书还挺不错的,这本书是多人合著的,作者中不乏牛人,有 Joshua Bloch ( Effective Java 作者)和 Doug Lea 等等(中文中惯用的表示牛人多的说法)。
- 2.75MB
gratisexam.com-Cisco.PracticeTest.200-120.v2016-04-03.by.Joshua.269q.pdf
2021-06-20gratisexam.com-Cisco.PracticeTest.200-120.v2016-04-03.by.Joshua.269q.pdf
- 19KB
java源码测试-effective-java:读EffectiveJava(中文版第3版)阅读源码测试案列
2021-05-25java源码测试 effective-java 读Effective Java(中文版第3版)阅读源码测试案列
- 1.8MB
[免费高清PDF版]Effective_C#_中文版改善C#程序的50种方法.rar
2018-04-04[免费高清PDF版]Effective_C#_中文版改善C#程序的50种方法.rar [免费高清PDF版]Effective_C#_中文版改善C#程序的50种方法.rar
- 1.39MB
Effective_C#中文版_改善C#程序的50种方法.pdf
2012-02-19Effective_C#中文版_改善C#程序的50种方法.pdf
- 16.54MB
Effective+C中文版第三版+高清PDF
2018-09-21Effective+C中文版第三版+高清PDF
- 4.68MB
Effective C#.pdf
2010-06-07Effective C#.pdf第二版,有需要的朋友可以下载,很清晰,大家可免点下载。
- 131KB
7程序设计超级经典书籍.pdf
2022-06-20I:基础知识(原书第7版)---Java 四大名著-----Cay Horstmann JAVA 2核心技术 卷 II:高级特性(原书第7版)----Java 四大名著-----Cay Horstmann Effective Java 中文版------Java 四大名著--------Joshua Bloch ...
- 9KB
effective-java:我正在关注Joshua Bloch撰写的有效Java一书
2021-03-28effective-java:我正在关注Joshua Bloch撰写的有效Java一书
- 1.19MB
1_Effective_Java_2nd_Edition_proglib_java_Joshua_
2021-09-29Joshua Bloch "Effective Java"
- 36.36MB
JAVA并发编程实践.pdf
2012-11-21Joshua Bloch是Google的首席Java架构师,《Effective Java》的作者、《3ava PLizzlers》的合著者,他不像他的兄弟(his brother,Bloctl与Neal主持的Java编程专栏里虚构的人物)那样编程,从来都不。Doug Lea是...
- 36.6MB
JAVA解惑_布洛赫.扫描版.(无保护,可修改)
2019-02-24《Java解惑》是由Joshua Bloch(美)、Neal Gafter(美)编著,陈昊鹏翻译的计算机语言类丛书,该书由人民邮电出版社2006年发行出版。该书特写了95个有关Java或其类库的陷阱和缺陷的谜题,其中大多数谜题都采用了短程序...
- 22.94MB
More Effective C#中文版.pdf
2017-04-22More Effective C#中文版.pdf 个人收集电子书,仅用学习使用,不可用于商业用途,如有版权问题,请联系删除!
- 3.20MB
effective-java.pdf
2020-04-30effective-java 自己用网上的翻译的html版本,生成的pdf版,仅供参考,仅供参考,仅供参考,仅供参考
- 25KB
Effective Java.zip
2021-06-19【Effective Java】阅读笔记markdown 文件
- 1.6MB
Effective C# 中文版改善C#程序 E书
2007-11-19Effective C# 中文版改善C#程序的50种方法
- 1.50MB
More Effective C#(2nd) 无水印pdf
2017-10-02More Effective C#(2nd) 英文无水印pdf 第2版 pdf所有页面使用FoxitReader和PDF-XChangeViewer测试都可以打开 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除
- 20KB
2009年的JavaOne大会上,Joshua Bloch和Neal Gafter又为我们带来的7道谜题
2009-08-142009年的JavaOne大会上,Joshua Bloch和Neal Gafter又为我们带来的7道谜题,挺有意思的,大家不妨看看。
- 1.14MB
java并行编程(Java Concurrency in Practice) 英文版chm
2011-05-26<<java并行编程>>英文版chm格式,英文名称<Java Concurrency in Practice>,一直想买这本书,但总是缺货,找到了电子版,分享给大家。 Java Concurrency in Practice By Brian Goetz, Tim Peierls, Joshua Bloch,...
- 24.87MB
[重构与模式].(美国)Joshua.Kerievsky.清晰版(PDF和DJVU两个版本)
2010-10-29该压缩包中包含两个清晰版本: [重构与模式].(美国)Joshua.Kerievsky.清晰版.PDF [重构与模式].(美国)Joshua.Kerievsky.清晰版.djvu PDF版本是DJVU转换而来的,所以清晰度稍差!
- 19.53MB
[重构与模式].(美国)Joshua.Kerievsky.清晰版 pdf (1)
2010-12-06[重构与模式].(美国)Joshua.Kerievsky.清晰版 pdf (1) 全部pdf,共 2 卷
- 239KB
java-puzzlers-sampler_java_Joshua_
2021-10-02Joshua Bloch and Neal Gafter "A Java Puzzlers Sampler"