《Effective Java 中文版》太经典了

Java 程序员们开年就有重磅好消息,《Effective Java 中文版(原书第 3 版)》上市啦,老赵花了一周时间终于读完了!

该书的第1版出版于 2001 年,当时就在业界流传开来,受到广泛赞誉。时至今日,已热销近20年,本书第 3 版已是 Java 程序员的必读神书,被誉为“Java 四大名著之一”,甚至连 Java 之父高司令(James Gosling) 都说:“如果说我需要一本 Java 编程的书,那就是它了。”

在豆瓣平台上,原书第 3 版获得了高达 9.7 的评分,读者们纷纷表达了对这本书的敬意。有读者留言说“Java 程序员分两种,读过《Effective Java》的和没读过的,严格来说,没读过的不算是Java程序员。”

02b4c823cb3eea38d2db541c98c762c8.png

0f9c807cd6134601d5989d760924ceb9.png

feff536e3adccd632f96d3d31f0e84c6.png

为了帮助更多国内程序员学习这部神作,在经过精心翻译校对之后,《Effective Java 中文版(原书第 3 版)》保持了原著的高水准,将带领 Java 程序员展开经典之旅。

73ebe3437df88b4b44a7dac1d5d1adbb.png

首发价 5折,限200人

市面上学习 Java 的书汗牛充栋,Java 技术也在不断发展变化,为什么这本神作却能畅销20多年?

01

Jolt 大奖神作

《Effective Java》在 2001 年就一举夺得当年度的 Jolt 大奖,这项“软件业界的奥斯卡奖”就是对这本书的价值,以及对作者 Joshua Bloch 超强技术功力的最好肯定。

本书结构独具匠心,一个关键知识点就是一条单独条目,在有些条目内也会交叉引用其他条目的知识,从而缀点成线,形成知识的网络。从第 1 版的 57 个条目扩展到第 2 版的 78 个条目,直至第 3 版达到了 90 条。

这些条目是作者总结出来的特定规则,并精心编写了代码示例,是为了帮助程序员改进程序和设计。所以对于有一些 Java 编程经验,却又不知如何提升代码水准的读者来说,这本书是 Java 编程的最佳实践指导

相比之前的版本,这一版增加了 Lambda 表达式、流、Optional 类、接口默认方法、try-with-resources、@SafeVarargs 注解、模块等 Java 7 及后续版本所引入的新特性。本书所涉及的特性都可以应用在目前国内主流 Java 环境中。

本书作者 Joshua Bloch 大神,2001 年度 Jolt 大奖得主,美国卡内基-梅隆大学(Carnegie Mellon University,CMU)教授,曾担任Google公司首席 Java 架构师、Sun 公司杰出工程师和 Transarc 公司高级系统设计师。

b12d6b797b8fbb13427dd526c527f4db.png

Bloch 大神主导了 Java 平台多项特性的设计和实现,包括 JDK 5.0 语言增强版,以及通用容器 Java Collections Framework(JCF)。可以说,在 Java 语言的标准实现中,处处闪耀着 Bloch 大神的智慧。

得益于先后在 Sun 和 Google的工作经历,Bloch 大神既熟知 Java 的内部实现,又能从用户的角度来思考 Java 编程实践,无形中他成为跨越编程工具和实际应用的一座桥梁,《Effective Java》的横空出世也就是水到渠成之事。

644e73b9abc8004fa7231ecd09d732e1.png

本书译者也是一名优秀的技术人,臧秀涛具有多年研发经验,曾先后在完美世界等公司从事软件开发工作。2014年开始从事技术内容方面的工作,曾在InfoQ担任会议内容总监,后在涛思数据负责开源项目TDengine的社区运营。他翻译出版过《Java性能权威指南》和《On Java 中文版》等技术图书。相信他能为中文读者们表达出《Effective Java》神作的精髓

这部神作到底有何天机?我们来领略一番吧。

02

学会这90条规则,成为真正的Java程序员

本书的 90 个条目分布在 11 个主题中,包括创建和销毁对象、类和接口、Lambda 表达式和流等。这些条目讲透了高效使用 Java 编程语言及其基础类库 java.lang、java.util 和 java.io,以及诸如 java.util.concurrent 和 java.util.function 等子包。

读者不用按顺序阅读,可以根据自己的问题查找主题,再对某个条目细读。当然,如果读者闲暇时间充裕,对这 90 条规则都能学习实践,那么Java 编程功力一定暴涨。

针对上一版本增加的新特性,书中列出了这些主要特性会在哪些条目中讲解,读者可以参考下表。

28c184f2cfc48f9eb1ded41810357072.png

我们来纵览一下这 11 个主题与一些关键知识。

1. 创建和销毁对象:用静态工厂方法代替构造器;优先考虑通过依赖注入来连接资源;与 try-finally 相比,首选 try-with-resources。

2. 对所有对象都通用的方法:在重写 equals 方法时要遵守通用约定;总是重写 toString 方法。

3. 类和接口:组合优先于继承;与抽象类相比,优先选择接口;为传诸后世而设计接口。

4. 泛型:列表优先于数组;首选泛型方法;使用有限制的通配符增加 API 的灵活性。

5. 枚举和注解:使用 enum 代替 int 常量;使用接口模拟可扩展的枚举。

6. Lambda 表达式和流:与匿名类相比,优先选择 Lambda表达式;首选标准的函数式接口。

7. 方法:检查参数的有效性;仔细设计方法签名;为所有导出的 API 元素编写文档注释。

8. 通用编程:与传统的 for 循环相比,首选 for-each 循环;首选基本类型,而不是其封装类;通过接口来引用对象。

9. 异常:异常机制应该仅用于异常的情况;优先使用标准异常;抛出适合当前抽象的异常。

10. 并发:同步对共享可变数据的访问;与线程相比,首选执行器、任务和流;将线程安全性写在文档中。

11. 序列化:在实现 Serializable 接口时要特别谨慎;考虑使用序列化代理代替序列化实例。

程序员在进行代码设计遇到举棋不定的难题时,就可以直接翻开这本书,找到与问题相关的主题,定能豁然开朗,找到最佳实践方案。

03

结语

《Effective Java 中文版(原书第 3 版)》真的是很值得 Java 程序员 N 刷的经典,本书每个条目都讲述了 Bloch 大神对 Java 的独到见解,阐明了如何编写高效、优雅的程序,并且提供了清晰、易懂的示例代码

对于书中的代码,有个突出的特点,就是包含了很多用来说明设计模式(Design Pattern)和习惯用法(Idiom)的代码示例。对这些示例,书中还提供了与这一领域的神作《设计模式:可复用面向对象软件的基础》一书的交叉引用

a0fa03a4197ac0d9eb39e543c14601dd.png

精彩书摘

这就是说,对于非 Java 语言的程序员,本书同样极具参考价值。所以通用性也是本书能够经久不衰的原因,代码设计的诸多原则都是共通的,看懂这一本书,在其他语言上都可以复用这些最佳编程实践。

4be3245eeff1d031eec2fcf5cd5c2d85.png

本书配套资源丰富,包含实战项目源码、视频教程、资源文件等,新版赠送了Java学习效率手册(电子版)。读者在阅读过程中结合使用这些资源,可以将知识融汇贯通,在工作中应用起来更加得心应手。

2da3cb9e2302df797e58741fd18385ac.jpeg

dabb778761f7116442837b62cca70372.jpeg

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Effective Java》(中文版)是由Joshua Bloch所著的一本Java编程指南书籍。它以简明扼要的方式介绍了一系列Java编程的最佳实践和原则。这本书以52个独立的章节组成,每个章节都涵盖了一个特定的主题。 《Effective Java》的中文版Java开发者提供了一系列宝贵的经验和建议,帮助他们编写出更高效、更清晰和更可靠的Java代码。它提供了一些建议,涵盖了从基本语言特性的使用,到对象创建、设计模式、异常处理、并发等各个方面。 这本书的主要目标是帮助Java开发者避免常见的陷阱和错误,并提供实用的技巧和建议来优化他们的代码。它注重编写高质量代码的原则,包括尽量使用接口而不是类、避免过度优化、合理使用异常等。 《Effective Java》强调了代码的可读性和可维护性,提倡使用清晰的命名和注释,避免过度使用注释,提倡使用最新的Java特性和库。 这本书通过丰富的示例代码来说明各种最佳实践和原则,使读者更容易理解和应用这些实践。此外,书中还包含了对常见问题和困扰的解决方法的分析和讨论。 总之,《Effective Java》(中文版)是一本Java开发者值得阅读的经典著作。它提供了丰富的实用经验和建议,能够帮助开发者写出更高效、更可靠的Java代码,同时提升他们的编码技巧和设计能力。无论是初学者还是有经验的开发者,都能从中受益匪浅。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值