高级java开发_我最喜欢的Java高级开发人员书籍

高级java开发

我上一篇博客文章 (我对高级Java开发人员的十个最喜欢的在线资源)的想法,是由Xiaoran Wang发表的“面向高级Java开发人员的十大网站”的启发。 Wang还写了一篇名为“面向Java高级开发人员的十大书籍”的文章。 就像关于高级Java开发人员的最佳网站上的帖子一样,很容易看出王为什么列出了他列出的十本书。 在这篇文章中,我查看了我的前十名列表,其中包括与他的列表相同的许多书,但我的列表中有几本有所不同。

有许多针对初级Java开发人员的好书(有些不好)。 但是,为中级和高级开发人员找到好的Java书籍似乎要困难得多。 有很多书籍可以针对非常狭窄的主题进行深入介绍,因此适合高级Java开发人员,但是似乎没有多少针对高级开发人员的“更通用”的Java书籍。

5. Java泛型和集合

图书 我认为许多Java开发人员都会说使用Java集合很容易,而泛型的使用范围可能会很容易,具体取决于您的工作。 但是, Java Generics and Collections ( O'Reilly , 2006年 )中有很多内容可以吸引高级开发人员涵盖泛型和集合 。 本书的作者指出了与泛型相关的有用实践,并概述了在不同情况下使用哪些集合。 即使是一些有经验的Java开发人员,也可能不会总是总是在特定情况下仔细考虑使用哪些集合,因此本书深入了解了每个主要Java标准集合的优缺点,以及每个缺点。 该书深入研究了泛型的困惑,并概述了重要的考虑因素 ,如获取和放置原理 。

4. Java性能

0137142528 Charlie Hunt和Binu John的Java Performance (Pearson Education, 2011年 )提供了有关Java应用程序调优的深入介绍。 该书概述了性能调整的许多方面,总结了可用的命令行选项以及如何使用它们来测量和调整设置,从而使应用程序性能更好。 这是一个复杂的主题,已全面介绍,并且重点关注Java的最新版本。

3.经验丰富的Java开发人员

evans_cover150 全面的Java开发人员( Manning ,2012年)是一本针对中级和高级Java开发人员的书。 正如我在《 The Well-Grounded Java Developer》的评论中所讨论的那样,它可以帮助经验丰富的Java开发人员赶上一些最新的Java和JVM趋势( Java 7 , 依赖注入 , Scala , Groovy , Clojure ),同时还涉及一些主题。在深度上很少接受这种类型的处理( 类加载 , 性能调整 ,并发)。 有专门针对这些主题的书籍,但这是一本书,可以在一本书中快速为所有这些高级主题(以及更多)奠定基础。


2. Java并发实践

书籍1 像泛型一样,并发是甚至许多高级Java开发人员也可以负担得起的另一项技能。 Java实践中的Java并发性 ( Pearson Education ,2006年, Brian Goetz和许多其他Java并发性专家)是Java书籍中的事实上的标准,涵盖了用Java编写并发应用程序。



1.有效的Java

Effective Java的两个版本(第一版和第二版)( Joshua Bloch ,Pearson Education,第二版,2008年)都很出色。 ChristianBeutenmüller对Ryan Wang的面向高级Java开发人员的十大书籍的DZone联合版本提出了一个好观点:“我将删除有效的Java(因为这是我推荐给初学者的第一本书)。” 像Beutenmüller一样,我也向新的Java开发人员推荐Effective Java ,但是我发现自己甚至将中级和高级Java开发人员都推荐给Effective Java并定期进行引用。 0321356683 即使不是Java的相对较新的人, Effective Java的某些部分也很容易理解,然后那本书的某些部分我才意识到,只有获得了知识和经验,我才真正欣赏。 在许多情况下,我需要现实的经验,以错误的方式做事,以了解本书概述的做法的某些好处和细微差别。 简而言之, Effective Java是我能想到的为数不多的书籍之一,特别适合初学者Java开发人员,特别适合中级Java开发人员,特别适合高级Java开发人员。

荣誉奖

还有其他书籍可以列入此列表,我们大多数人对高级Java书籍的看法可能有所不同。 对于我来说,“高级Java开发人员”是一个Java开发人员的知识显著深度 ,知识显著广度 ,对Java的新的和即将推出的功能意识,工具和产品的认识Java社区援助整个Java开发生命周期。 “有效单元测试”和“ Java Power Tools”是两本不涉及高级主题的书,但我认为这些书中包含的信息可以帮助Java开发人员从初学者过渡到中级或高级Java开发人员。 特别是, 有效的单元测试可以帮助Java开发人员编写更好,更高效的单元测试,而Java Power Tools可以帮助Java开发人员增加知识的广度,这些关键的开源工具可用于Java开发的所有阶段。 刚开始的Java开发人员往往没有有效单元测试中包含的单元测试经验,并且通常缺乏Java Power Tools中概述的可供Java开发人员使用的产品的知识。

结论

我认为很难编写和出版高级Java书籍。 编写高级Java书籍要求作者对所写作的主题有深刻的理解,出版商通常会比高级书籍出售更多入门书籍。 与编写和发布入门级Java书籍相比,编写和发布高级Java书籍的入门障碍似乎更高。 在线资源在许多方面似乎更适合满足高级Java开发人员的需求,但是我在这篇文章中列出的五本书颠覆了这种趋势,并提供了在线资源在可访问性和内聚性方面无法比拟的详细而透彻的信息。 该列表中的书籍对高级Java开发人员很有用,但在帮助Java开发人员成为高级Java开发人员方面可能最有用。

参考: 《 实际事件的启发》博客中的JCG合作伙伴 Dustin Marx的《 我的高级Java开发人员最喜欢的书》 。

翻译自: https://www.javacodegeeks.com/2013/09/my-favorite-books-for-advanced-java-developers.html

高级java开发

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

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

相关文章

Optional.isEmpty()在JDK 11 EA构建中可用

我最近发布的问题“ Optional.isEmpty()即将加入Java吗? ”是由名为“ RFR:8184693 :(选择)添加Optional.isEmpty ”的core-libs-dev邮件列表帖子提示的。 当前的JDK 11 Early Access构建 &…

camera.swf java_java调用摄像头保存图片上传功能

在项目中要用到jsp页面实现网页采集摄像头图像,并实现上传的功能,页面主要js调用的,所以可以使用多种语言php,asp等都可以使用,而且是跨浏览器的。可以整合的到SSH项目中和struts1或者struts2项目中使用方法1:下载 pri…

java list 字段去重_如何实现java8 list按照元素的某个字段去重

list 按照元素的某个字段去重DataAllArgsConstructorNoArgsConstructorpublic class Student {private Integer age;private String name;}测试数据List studentList Lists.newArrayList();studentList.add(new Student(28, "river"));studentList.add(new Student(…

cassandra使用心得_使用Cassandra和Nutch爬网

cassandra使用心得因此,您想从互联网上收集大量数据吗? 有什么比Cassandra更好的存储机制? 使用Nutch可以轻松做到这一点。 人们经常在Nutch后面使用Hbase。 这可行,但是如果您是(或想成为)Cassandra商店&…

java 北理工 教材_北理工《Java技术与应用》在线作业

北理工《Java技术与应用》在线作业可以代做所有奥鹏平台的作业、小论文、毕业论文、离线作业、考核作业、在线作业、在线测试,有需要的请联系本人一、单选题(共 20 道试题,共 40 分。)V1. Socket对象中____函数获取远程端口。A. getPort( )B. getLocalPo…

占用内存的Enum.values()方法

我是Java 枚举的忠实拥护者 。 似乎我们一直在等待获得它,但是当我们最终获得它( J2SE 5 )时,该枚举比C和C 提供的枚举要好得多,在我看来,这“ 值得等待” 。 与Java enum一样好,它也不是没有问…

Apache Spark Job的剖析

Apache Spark是通用的大规模数据处理框架。 了解spark如何执行作业对于获取大部分作业非常重要。 关于Spark评估范式的简短回顾:Spark使用的是惰性评估范式,在该范式中,Spark应用程序在驱动程序调用“ Action”之前不会执行任何操作。 惰性…

scala本地调试_如何编写自己的Java / Scala调试器

scala本地调试在本文中,我们将探讨Java / Scala调试器的编写和工作方式。 诸如Windows的WinDbg或Linux / Unix的gdb之类的本机调试器通过操作系统直接提供给它们的钩子来获取其功能,以监视和操纵外部进程的状态。 JVM充当OS之上的抽象层,它提…

java content()_Java contentEquals() 方法

全屏Java contentEquals() 方法contentEquals() 方法用于将将此字符串与指定的 StringBuffer 比较。语法public boolean contentEquals(StringBuffer sb)参数sb -- 要与字符串比较的 StringBuffer。返回值如字符串与指定 StringBuffer 表示相同的字符序列,则返回 tr…

java 加法 溢出_StackOverflow热帖:Java整数相加溢出怎么办?Java8一步搞定~

阅读本文大概需要 2 分钟。作者:Aaron_涛问题在之前刷题的时候遇见一个问题,需要解决int相加后怎么判断是否溢出,如果溢出就返回Integer.MAX_VALUE解决方案JDK8已经帮我们实现了Math下,不得不说这个方法是在StackOverflow找到了的…

通过这5个简单的技巧减少GC开销

编写代码的五种简单方法,可提高内存效率,而无需花费更多时间或降低代码可读性 垃圾回收会为您的应用程序增加多少开销? 您可能不知道确切的数字,但您确实知道总有改进的余地。 尽管自动GC是最有效的过程,但是如果它过…

xml 数字签名 破解_JAVA中带有数字签名的XML安全性

xml 数字签名 破解介绍 如您所知,XML在我们的产品或项目开发中起着重要作用,并且从XML文档中我们收集了很多信息,并且我们可以对XML文件执行CRUD操作。 但是,关于如何确保XML文件中可用的数据是真实的以及数据来自受信任的可靠来源…

centos 远程安装java程序_centos7远程服务器中redis的安装与java连接

1.下载安装redis在远程服务器中你想下载的位置执行以下命令来下载redis文件到服务器中$ wget http://download.redis.io/releases/redis-4.0.9.tar.gz说明:$是指你的当前目录,不是命令的一部分,wget命令用来下载网上资源,后面的地…

内部简单二进制编码(SBE)

SBE是用于金融行业的非常快速的序列化库,在本博客中,我将介绍一些使其快速发展的设计选择。 序列化的全部目的是对消息进行编码和解码,并且有很多可用的选项,从XML,JSON,Protobufer,Thrift&…

mingw64 下 java_在 Windows 10 64 位下安装 Mingw-w64

1、MinGW 的全称是:Minimalist GNU on Windows 。打开网址:http://www.mingw-w64.org/doku.php/download ,选择 MingW-W64-builds。如图1图12、下载包名:mingw-w64-install.exe。安装时报错:Cannot download repositor…

java实现layui分页_layui如何实现数据分页功能

我们先来看下官网的演示画面。具体代码:页面引入layui.css、 layui.js前台jsvar limitcount 10;var curnum 1;//列表查询方法function productsearch(productGroupId,start,limitsize) {layui.use([table,laypage,laydate], function(){var table layui.table,la…

java 正则表达式使用_如何用正则表达式杀死Java

java 正则表达式使用我们最近偶然发现了一个我们绝对不了解的现象:您可以使用简单的正则表达式杀死任何Java IDE以及任何Java进程… 回到大学后,我被告知正则表达式(称为正则语法或3型语法)总是以有限状态的自动机结束&#xff0…

java 合并到一行_mysql中将多行数据合并成一行数据

一个字段可能对应多条数据,用mysql实现将多行数据合并成一行数据例如:一个活动id(activeId)对应多个模块名(modelName),按照一般的sql语句:1 SELECT am.activeId,m.modelName2 FROM activemodel am3 JOIN model m4 ON am.modelId m.modelId5…

容器化Spring Data Cassandra应用程序

我正在继续学习Docker的旅程。 在这一点上,我仍然保持简单。 这次,我将解决将Spring和Cassandra应用程序转换为使用容器而不是在主机上本地运行的问题。 更准确地说,使用Spring Data Cassandra整理应用程序。 我希望我前几天看过进行此更改。…

最快的 java 图像_ImageJ 1.53 世界上最快的Java图像处理程序

ImageJ 1.53 世界上最快的Java图像处理程序 已通过小编安装运行测试 100%可以使用。ImageJ 1.53 是世界上最快的纯Java图像处理程序。它可以在0.1秒内过滤2048x2048图像。每秒可以处理4000万像素的图片。ImageJ支持处理8位灰度或索引颜色,16位无符号整数&#xff0c…