您不想错过的十大Java书籍

我们通过阅读书籍并进行实验来学习。 因此,必须选择最佳的可用选项。 在本文中,我想与一些书分享我的经验,以及它们如何帮助您发展为Java开发人员。

让我们从头开始,对于任何Java学生来说,前三本书都是一个很好的起点。 Java编程语言可以帮助您熟悉Java, Head First可以帮助您将Java概念牢记在心,从而永远不会忘记它们。 我在该类别中选择了《 Java思维第三书》,但是Java的完整替代品是Herbert Schildt 的《完全参考》和David Flanagan的 Java 。 这些书更多是参考,而不是必读。

1. Java编程语言,作者: Ken Arnold,James Gosling,David Holmes

Java编程语言直接来自Java的创建者,对于新手和高级程序员而言都是必不可少的资源。 世界各地的开发人员已经使用以前的版本来快速获得对Java编程语言,其设计目标以及如何在实际开发中最有效地使用它的深刻理解。 作者系统地将Java类的主要包java.lang。*,java.util和java.io中的大多数类融合在一起,并提供了具有启发性的示例,详细解释了这些类为何如此工作。 添加了几个新的章节和主要章节,并且每一章都进行了更新,以反映当今构建健壮,高效和可维护的Java软件的最佳实践。

以上是从书本索引页摘录的内容 。

2. 凯特·塞拉(Kathy Sierra),伯特·贝茨(Bert Bates)

它独特的方法不仅向您展示了您需要了解的Java语法,而且使您像Java程序员一样思考。 掌握面向对象的编程需要某种思维方式,而不仅仅是某种编写代码的方式。 认知科学,神经生物学和教育心理学方面的最新研究表明,更深层次的学习比页面上的文字花费更多。 积极地将单词和图片结合起来,不仅有助于理解主题,而且有助于记住主题。 根据一些研究,一种引人入胜,娱乐性强,图像丰富的会话式方法实际上可以更好地教该主题。 Head First Java复仇地将这些理论付诸实践。

上面的几行是从Google图书中复制的,请在此处内容。

3.用Java进行思考 Bruce Eckel

Eckel介绍了Java使用对象时的所有对象基础,然后仔细浏览了所有Java编程的基础概念,包括程序流程,初始化和清除,实现隐藏,重用类和多态性。 他使用广泛的示例来介绍异常处理,Java I / O,运行时类型标识以及传递和返回对象。 Eckel还概述了Java2 Enterprise Edition平台(J2EE)的关键技术。

上面的几行是从Google图书中复制的,请在此处内容。

我不是SCJP考试的忠实拥护者,但是Java SCJP认证程序员指南不仅仅是认证指南。 它使您可以深入了解Java,技巧和窍门。 SCJP Sun Java 5程序员认证学习指南由Kathy Sierra撰写,如果您对SCJP感到不满,那么Bert Bates可以上书。 读这些书胜于花时间阅读问题解答,比起完成职业考试,这些书对您有更大的帮助。

4. Java SCJP认证程序员指南:全面的入门作者, Khalid Azim Mughal,Rolf Rasmussen

这本书将帮助您准备并通过Java平台SE 6(CX-310-065)的Sun认证程序员。 它是为有兴趣掌握Java编程语言的任何经验丰富的程序员(具有或不具有Java的先前知识)编写的。 它包含语言功能的深入说明。 根据考试要求,通过代码方案说明了它们的用法。 大量与考试相关的复习题,用于测试您对每个主要主题的理解,并带有带注释的答案。每一章结尾处的编程练习和解决方案。丰富的代码示例,阐明了概念,其中的代码已在多个平台上进行了编译和全面测试。运行示例的结果出于说明目的广泛使用UML(统一建模语言)

上面的几行是从Google图书中复制的,请在此处内容。

好的 ,因此您已经了解Java并在Java中工作了两年,以迈出下一步。 这个世界上的一切都有好有坏。 如果不使用Java语言,应该会使您的生活陷入困境。 当您编写代码时,它是为将来编写的。 编写良好的Java代码是一门需要比基本Java知识更多的技能的艺术。 在这里,我想介绍下四本书,可以使您成为行业的佼佼者。

实用程序员不是一本真正的Java书籍,而是任何程序员的自助书籍。 这是一本涵盖软件开发各个方面的好书,能够将您转变为务实的程序员。

5.实用的程序员,从《旅人》到《大师》,作者: 安德鲁·亨特,大卫·托马斯

The Pragmatic Programmer由一系列独立的部分撰写,并充满有趣的轶事,体贴的例子和有趣的类比,阐明了软件开发许多不同方面的最佳实践和主要陷阱。 无论您是新编码员,经验丰富的程序员,还是负责软件项目的经理,都每天使用这些课程,您会很快发现个人生产力,准确性和工作满意度得到改善。 您将学习技能,养成习惯和态度,这是您职业上长期成功的基础。 您将成为一个实用的程序员。

上面的几行是从Google图书中复制的,请在此处内容。

因此 ,我们编写了代码。 现在该添加一些样式了。 Java样式的元素是Java样式部分(包括各个方面)的最早文档之一。

6. Java风格的元素作者: Scott Ambler,Alan Vermeulen

许多书籍解释了Java的语法和基本用法。 但是,本基本指南不仅说明了语法的功能,还说明了应该做什么。 在用正确和错误用法的并行示例说明这些规则时,作者提供了用于编写易于理解,维护和增强的可靠Java代码的标准,约定和准则的集合。 读过本书的Java开发人员和程序员将编写更好的Java代码,并提高工作效率。

上面的几行是从Google图书中复制的,请在此处内容。

现在 ,我们知道了如何编写样式代码。 但是上课最好吗? 是否使用最佳做法? 有效的Java是关于最佳实践的最好的书之一,也是许多Java开发人员最喜欢的书。

7.有效的Java作者: Joshua Bloch

Joshua汇集了七十八个不可或缺的程序员经验法则:针对您每天遇到的编程挑战提供可行的最佳实践解决方案。 Bloch探索了新的设计模式和语言惯用语,向您展示了如何充分利用从泛型到枚举,注释到自动装箱的所有功能。 本书的每一章都包含一些“项目”,以简短的独立文章的形式提供,这些文章提供了具体的建议,对Java平台的精妙之处的深入了解以及出色的代码示例。 对每个项目的全面描述和说明阐明了该做什么,不做什么以及为什么。

以上几行是从Google图书中复制的,请点击此处

然后 ,您知道了好消息,现在该是坏消息的时候了。 苦涩的Java是第一本提出Java反模式的书之一。 关于反模式和代码气味的文章和书籍多种多样,并且是一个有很多学习空间的领域。 关于此主题还有很多其他书籍,我将这本书作为起点。

8.苦涩的Java作者Bruce Tate

本指南面向中级Java程序员,分析师和架构师,它是对常见服务器端Java编程陷阱(称为反模式)及其原因和解决方案的全面分析。 本书以非常成功的软件大会演讲为基础,其前提是软件程序员不喜欢从成功的技术和设计模式中学习,而可以从不良的程序,设计和战争故事中学习,这是一个痛苦的例子。 这些通过否定性设计和反模式以图形方式说明良好编程习惯的教育技术还具有一个附加好处:它们很有趣。

以上几行是从Google图书中复制的,请点击此处

许多人说,如果您想成长为一名开发人员,则需要了解设计模式。 因此,我想提一提我已读过的最佳设计模式书。 它既不是参考书,也不包含模式目录,但该书解释了与模式同样重要的面向对象设计原则。 如果您正在寻找参考书,请使用《 设计模式:可重用的面向对象软件的元素》一书。

9. Head First设计模式作者: 埃里克·弗里曼,伊丽莎白·弗里曼,凯西·塞拉,贝特·贝茨

您知道您不想重新发明轮子(或更糟的是,轮胎漏气),因此您可以参考设计模式-那些面临相同问题的人所汲取的经验教训。 使用设计模式,您可以利用其他人的最佳实践和经验。 利用神经生物学,认知科学和学习理论方面的最新研究成果,Head First Design Patterns可以以一种持久的方式将模式加载到您的大脑中。 以一种使您可以立即使用它们的方式。 通过这种方式,您可以更好地解决软件设计问题,并且可以更好地与团队中的其他人一起讲模式的语言。

以上几行是从Google图书中复制的,请点击此处

如果您是使用Java编码和设计应用程序的高手 ,那么该破除JVM的时候了。 我读过《 Java语言规范》是做到这一点的最好书。 我没有耐心或技巧来读书,但是如果您想跨界学习,这是一个有趣的选择。

10. Java语言规范

本书提供了Java编程语言的完整,准确和详细的介绍。 它全面介绍了自上一版以来添加的所有新功能,包括泛型,注释,断言,自动装箱,枚举,每个循环,变量,方法和静态导入子句。

以上是从书本索引页摘录的内容 。

在这些网络年中,在线资源可能比书籍更容易访问,但我认为这些书籍将帮助您适应更好的Java程序员。

参考: 您不想错过的十大Java书籍。 来自JCG合作伙伴 Manu PK的《面向对象的生活》博客

相关文章 :

  • Java开发人员最有用的书
  • Java EE过去,现在和云7
  • 任何软件开发公司应存在的服务,实践和工具,第2部分
  • 那些邪恶的框架及其复杂性
  • 真正的模块化Web应用程序:为什么没有开发标准?
  • 编程反模式
  • Java教程和Android教程列表

翻译自: https://www.javacodegeeks.com/2011/10/top-10-java-books-you-dont-want-to-miss.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/374405.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

pythonos模块_Python3 入门教程——os模块使用(文件/目录操作)

前言 os模块是Python标准库中一个用于访问操作系统的功能模块。 使用os模块中提供的接口,可以轻松实现跨平台访问。 在os模块中提供了一系列访问操作系统功能的接口,如,新建目录、删除目录、变更目录、重命名目录.... 新建单级目录 基本语法&…

当数据量很少的时候,tableview会显示多余的cell--iOS开发系列---项目中成长的知识二...

当数据量很少的时候,tableview会显示很多的cell,而且是空白的,这样很不美观 所以使用下面的方法可以去掉多余的底部的cell 原理是:设置footerView为frame 是 CGRectZero ,造成一种假象! UIView *v [[UIView alloc] initWithFrame:CGRectZero]; [self.myTable setTableFooterVi…

逗牙搞笑网www.idouya.xin

有一天,小明问妈妈“妈妈,妈妈,爸爸是什么啊?”妈妈刚刚和爸爸吵架,生气的回答“孩子,记住所有的男的都是色狼!”小明有去问爸爸“爸爸,爸爸,妈妈是什么啊?”…

STM32F1笔记(六)独立看门狗IWDG

STM32F1内置了两个看门狗,独立看门狗IWDG和窗口看门狗WWDG,可以用来检测和解决由软件错误引起的故障。 IWDG最适合应用于那些需要看门狗作为一个在主程序之外,能够完全独立工作,并且对时间精度要求较低的场合。WWDG最适合那些要求…

在JSF 2中对定制验证器进行参数化

在JSF 2中编写自定义验证器并不复杂。 您实现Validator接口,添加FacesValidator批注,并在faces-config.xml中插入Validator声明, 仅此而已 。 一块蛋糕。 但是,让我们考虑以下情形: 您需要自定义日期验证器&#xff0c…

python绘制散点图的函数_python matplotlib更新函数的散点图

有几种方法可以对matplotlib图进行动画处理.在下文中,我们将使用散点图查看两个最小示例. (a)使用交互式模式plt.ion() 要进行动画制作,我们需要一个事件循环.获取事件循环的一种方法是使用plt.ion()(“交互式打开”).然后需要首先绘制图形,然后可以循环更新绘图.在循环内部,我…

偷学来的资料

--矛盾 fis3的pngcrush不支持你的node版本v4.4.0 换成4.2.4就可以了. --工具 淘宝 NPM 镜像:http://npm.taobao.org/ FIS2 to FIS3:https://github.com/fex-team/fis3/blob/master/doc/docs/fis2-to-fis3.md fis3demo:https://github.com/fex-team/fis3-demo --前端blog/网站 廖…

Java EE6事件:JMS的轻量级替代品

我今天要讨论的功能是Java EE 6中的事件机制。一般的想法是触发一个事件,并让事件监听器来接收它。 我创建了这个完全没有用的示例,但是它的简单性帮助我专注于重要的内容。 我将从后备操作中触发LogEvent,该事件将记录到java.util.Logger中。…

STM32F1笔记(七)WWDG窗口看门狗

窗口看门狗与独立看门狗最大的不同是中断,窗口看门狗拥有一个提前唤醒中断。也就是在快要产生复位的前一段时间(T[6:0]0x40)来提醒需要进行喂狗,否则将复位。因此当窗口看门狗的计数器值减到0x40的时候,产生中断&#…

求助!求助!网站页面图片太多,加载时间太长该怎么办?

以下是百度统计的诊断,小弟万般无奈,html上的缓存以及图片处理技巧欠缺,希望各位大大帮帮忙支个招! 以下元素可在不损失原信息量的前提下进行压缩: http://www.5atl.com/Style/main.css (大小: …

groovy怎样从sql语句中截取表名_Mysql和SQL

基本概念1.数据库DataBase简称:DB2.什么数据库?——用于存储和管理数据的仓库。存储过程是一个预编译的SQL语句,优点是允许模块化的设计,就是说只需创建一次,以后在该程序中就可以调用多次。3.数据库的特点&#xff1a…

使用java.util.prefs.Preferences代替java.util.Properties

典型的应用程序安装程序需要向用户询问几个选项,其中一些是配置问题,例如,应用程序应在其上运行的端口,应如何运行等。应用程序必须记住这些选项,并在每个选项中使用它们。跑。 解决此问题的标准方法是将这些选项写入属…

STM32F1笔记(八)时钟

STM32有五种时钟源 1、HSI。高速内部时钟,RC振荡器,频率为8MHz。 2、HSE。高速外部时钟,可接石英/陶瓷谐振器,或者借外部时钟源,频率范围为4MHz~16MHz。 3、PLL。锁相环倍频输出,其时钟输入源可选择为HS…

java常用工具类(一)

一、String工具类 package com.mkyong.common; import java.util.ArrayList; import java.util.List; /** * * String工具类. <br> * * author 宋立君 * date 2014年06月24日 */ public class StringUtil { private static final int INDEX_NO…

Oracle定时器调用存储过程

关于Oracle定时器调用存储过程的一点总结&#xff0c;如果有不足的地方&#xff0c;希望大家多多指导&#xff0c;也是第一次在博客上写东西&#xff0c;以前也只是自己总结之后放在硬盘了&#xff0c;后来同事告诉自己&#xff0c;其实写博客可以获得很多&#xff0c;不管是知…

python可以下载百度文库_不用下载券也能下载百度文库资料,Python帮你轻松搞定...

大家可能平时都有在百度文库下载文档的经历&#xff0c;费尽心思好不容易在文库找了一份可以用的资料&#xff0c;一看需要用下载券下载&#xff0c;搞的人很烦。 有的人为了节省时间&#xff0c;就任性办理了个文库VIP&#xff0c;再也不用纠结怎么下文档了。如果你是一个百度…

将对象映射到多个XML模式–天气示例

我已经在EclipseLink JAXB&#xff08;MOXy&#xff09;的XmlPath和外部绑定文件扩展中撰写了以前的文章。 在本文中&#xff0c;我将通过将单个对象模型映射到两个不同的XML模式来演示这些扩展的功能。 为了使示例更加“真实”&#xff0c;XML数据将来自提供天气信息的两种不同…

STM32F1笔记(九)通用定时器

STM32F1的定时器分为TIME1/8等高级定时器&#xff0c;TIME2~5等通用定时器&#xff0c;TIME6/7基本定时器。三者的区别主要参考《STM32中文参考手册》里特性的每种定时器主要特性的异同。 先看中文手册中通用定时器的简介&#xff1a; 通用定时器的寄存器有一个比较有趣的地方…

佳能MP258的5200错误和P08代码解决方法及清零方法

参考文章转载于:https://www.cnblogs.com/arcer/p/5659624.html

tomcat通过conf-Catalina-localhost目录发布项目详解

转自&#xff1a;http://www.cnblogs.com/iyangyuan/p/3316444.html&#xff0c;感谢 杨元。 Tomcat发布项目的方式大致有三种&#xff0c;但小菜认为通过在tomcat的conf/Catalina/localhost目录下添加配置文件&#xff0c;来发布项目&#xff0c;是最佳选择。 因为这样对tomca…