`

一些适合Java编程的书籍总结

阅读更多

看见大家这多大家的踊跃发言,我这里澄清一下,这里给出的书籍主要侧重于软件设计和管理方面,特别是软件设计,说句废话,看完这些书并不代表懂得软件设计,而在于应用,那你将和里面很多观点产生共鸣,理解其中的一些奥妙。这里所选的书籍不敢说是最好的,但是保证这些书籍的书写都是严谨的,理论都是有根有据的,能给读者提供比较广泛视野的书籍,最基本一点,参考书目和推荐书目都是一一在目的

 

 

Java语言相关学习的书籍

  • Bruce Eckel. Thinking in Java, 3rd Edition. Prentice-Hall, December 2002

这本书籍已经出第四版了,新版本书里介绍了Java 5的一些新的语法。它是公认的Java语言学习的权威书籍,不仅讲述了Java语言的语法,还涵盖了许多面向对象的思想,如果你想学习使用Java语言进行面向对象的编程与设计,此书非常值得一读。

  • Ron Hitchens. Java NIO. O'Reilly, 2002

本书讲述了Java NIO的编程技术(特别是网络IO的编程)。

  • James Gosling, Bill Joy, Guy Steele and Gilad Bracha. The Java™ Language Specification Third Edition. ADDISON-WESLEY, 2005.

这是一本介绍Java语言规范的书籍,大多数语法介绍书籍不会全面介绍JVM如何加载和初始化类,线程等一些相关技术和概念,这些都可以在此书中找到,并且它是Java语言的官方书籍,权威性不言而喻。

  • Joshua Bloch. Effective Java, Second Edition. Addison-Wesley, 2008.

如果你已经使用Java开发好几年了,但是你还想知道那些专业的Java开发人员如何编写高效的代码的,这本书绝对值得一读。

  •  David Flanagan and Brett McLaughlin. Java 1.5 Tiger: A Developer's Notebook. O'Reilly, 2004.

如果你不熟悉Java 5的新语法,可以参考本书和《Think in Java》第四版相关章节。


J2EE技术相关书籍

  •  Rod Johnson. Expert One-on-One J2EE Design and Development. Wiley Publishing, Inc, 2003.

这本书籍介绍了一些J2EE的常用技术,深入探讨了J2EE编程中经常出现的问题和风险,帮助读者创建高效的J2EE应用。

  •  Rod Johnson and Juergen Hoeller. Expert One-on-One J2EE Development without EJB. Wiley Publishing, Inc, 2003.

这本书籍可以说是上面书籍的续篇,它颠覆了一些传统的J2EE观点,审视了EJB所带来巨大复杂性。现在阅读本书可能当时那么震撼,因为读者对不使用EJB来创建J2EE应用已经习以为常了,很多Java架构采用SSH(Struts+Spring+Hibernate)等技术创建应用。但它详细讲述了Spring核心框架的实现技术,对正在使用Spring框架或者对其实现技术感兴趣的读者,此书值得一读。

  • Deepak Alur, John Crupi and Dan Malks. Core J2EE Patterns: Best Practices and Design Strategies, Second Edition. Prentice Hall PTR, 2003.

这本书籍主要讲述了一些非常重要的J2EE模式,J2EE架构师和开发人员值得一读。

 

面向对象设计相关书籍

 Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, 1995.
这是影响最大的设计模式的经典书籍,读者在使用相关模式时,都可以拿来翻一翻。

  •  Andrew Hunt and David Thomas. The Pragmatic Programmer: From Journeyman to Master. Addison-Wesley, 1999.

这本书讲述了如何高效开发出高质量软件的方法,讲述过程中穿插了很多寓言故事,深入浅出,是一本有经验的软件开发人员继续“修炼”的哲学书籍。

  •  Alan Shalloway and James R. Trott. Design Patterns Explained: A New Perspective on Object-Oriented Design, 2nd Edition. Addison-Wesley, 2004.

这本书籍从面向对象的视角分析设计模式,是一本学习模式的好书籍。

  •  Eric T Freeman, Elisabeth Robson, Bert Bates and Kathy Sierra. Head First Design Patterns. O'Reilly Media, October 2004.

这本书籍非常适合初学者学习设计模式,由于使用了Head First的写作风格,通俗易懂。

  •  Martin Fowler. Refactoring: Improving the Design of Existing Code. Addison-Wesley, 1999.

这本书籍讲述了如何重构你的代码,重构代码是一个复杂的过程,很容易引起各种各样的问题,这本书籍教你重构的整个过程,书写风格也十分流畅,非常易于阅读。

  •  Martin Fowler. Analysis Patterns: Reusable Object Models. Addison-Wesley, 1997.

做金融开发的人员都有必要阅读这本书籍,在医药领域,金融领域,测量领域,贸易等领域使用书中所提到的分析模式建模有莫大的帮助,当然这些分析模式不局限于这些领域。在此书,Martin Fowler把自己丰富的对象建模经验与读者分享,如果你想为复杂领域建模,但是没有足够把握,强烈推荐你学习此书。

  •  Eric Evans. Domain-Driven Design: Tackling Complexity in the Heart of Software. Addison-Wesley, August, 2003

解决复杂领域问题的关键是有精炼的模型,这本书籍讲解了如何使用领域驱动设计迅速提炼有用的模型,本人强烈推荐此书。     

 

       它从OO观点来看,与J2EE结合的比较多,参考书籍和论文等超过了40个,适合细细阅读,理解什么是OO。

 


给Agile(敏捷)开发人员推荐的书籍

  •  Kent Beck and Cynthia Andres. Extreme Programming Explained: Embrace Change. Addison-Wesley, 2004.

这是敏捷开发人员必读的一本书籍,它为大家消除了很多开发上的错误观念。

  •  Henrik Kniberg. Scrum and XP from the Trenches (Enterprise Software Development). Lulu.com, 2007.

这本书是一本非常浅显易读的Scrum书籍,作者把一年来实施Scrum过程和经验进行分享,没有高深的理论,只有故事和实践。这本书的电子版本在InfoQ网站上有下载:http://www.infoq.com/minibooks/scrum-xp-from-the-trenches。

 

 

架构方面的书籍

  •  Diomidis Spinellis and Georgios Gousios. Beautiful Architecture: Leading Thinkers Reveal the Hidden Beauty in Software Design. O'Reilly , 2009.
看完了这本书之后,你会觉得现在市面上的一些书籍,特别是中国写的架构方面的书籍,还处于80年代末到90年代初的时期。这本书讲解了很多出色的架构,认真阅读,将受益匪浅。

 


这里给出的英文书籍都是英文原版,由于有些书籍的中文翻译版本较多,在这里就不会一一列举,读者有需要可以购买相应的中文译本。

 

 

 

分享到:
评论
24 楼 lzyzizi 2011-05-16  
redhat 写道
linux1689 写道
这个书单还太单薄了,很多精品必读书都未列出,我补充基本,欢迎大家继续补充:<br><br>1.<span style="color: #ff0000;">《设计模式之禅》</span>(基于Java的)<br><br>2.<span style="color: #ff0000;">《Java加密与解密的艺术》</span>(每一位Java Developer必备的一本书)<br><br>3.<span style="color: #ff0000;">《深入理解Java虚拟机:JVM高级特性与最佳实践》</span>(即将出版)

 

我这里推荐的几乎都是国外的书籍,都讲解的非常严谨,虽然难免主观,本人不想太过于主观,在这里推荐的书籍至少必须的严谨,参考书目和推荐书籍必须列清,而且不能犯简单的理解错误,所以《设计模式之禅》目前不是推荐。
不管书籍怎么样,两点不能容忍:
1.没有任何可以查到参考的错误的理解,这样不否责任。
2.错误夸大的言论,没有论据和引用,不知道如何得到。


终于碰到明眼人了~《设计模式之禅》这本书。。。你如果看完HEADFIRST的DP再看这本书,你一定会怀疑作者有没有理解OO。。。书中的例子就更别谈了。。。
23 楼 zk7019311 2011-05-16  
刚买了本headfirst系列,感觉不错啊。。。
22 楼 redhat 2011-05-16  
linux1689 写道
这个书单还太单薄了,很多精品必读书都未列出,我补充基本,欢迎大家继续补充:<br><br>1.<span style="color: #ff0000;">《设计模式之禅》</span>(基于Java的)<br><br>2.<span style="color: #ff0000;">《Java加密与解密的艺术》</span>(每一位Java Developer必备的一本书)<br><br>3.<span style="color: #ff0000;">《深入理解Java虚拟机:JVM高级特性与最佳实践》</span>(即将出版)

 

我这里推荐的几乎都是国外的书籍,都讲解的非常严谨,虽然难免主观,本人不想太过于主观,在这里推荐的书籍至少必须的严谨,参考书目和推荐书籍必须列清,而且不能犯简单的理解错误,所以《设计模式之禅》目前不是推荐。
不管书籍怎么样,两点不能容忍:
1.没有任何可以查到参考的错误的理解,这样不否责任。
2.错误夸大的言论,没有论据和引用,不知道如何得到。
21 楼 Technoboy 2011-05-16  
牛逼人都是《thinking in java》还有什么核心技术的
20 楼 cenxiaobai 2011-05-16  
没有看到期待的书籍
19 楼 linux1689 2011-05-16  
<p>这个书单还太单薄了,很多精品必读书都未列出,我补充基本,欢迎大家继续补充:<br><br>1.<strong><span style="color: #ff0000;">《设计模式之禅》</span></strong>(基于Java的)<br><br>2.<span style="color: #ff0000;"><strong>《Java加密与解密的艺术》</strong></span>(每一位Java Developer必备的一本书)<br><br>3.<strong><span style="color: #ff0000;">《深入理解Java虚拟机:JVM高级特性与最佳实践》</span></strong>(即将出版)</p>
<p> </p>
18 楼 lkj107 2011-05-16  
《深入java虚拟机》
17 楼 Caedmon 2011-05-16  
effective java 这本书很不错!
16 楼 stevendu 2011-05-16  
都去看鲍勃大叔写的《敏捷软件开发——原则、模式与实践》吧,这才是真正的经典。
15 楼 johnnyking 2011-05-16  
bestchenwu 写道
FreeWhere 写道
怎么会少了《Java Concurrency in Practice》??


因为它中文版绝版了 大大提高了它的阅读门槛~~



可以看英文版的嘛。
14 楼 kuchaguangjie 2011-05-16  
j2se 有本 更好的
13 楼 richard_2010 2011-05-15  
core java没在里面?遗憾。。。
12 楼 bestchenwu 2011-05-15  
FreeWhere 写道
怎么会少了《Java Concurrency in Practice》??


因为它中文版绝版了 大大提高了它的阅读门槛~~
11 楼 FreeWhere 2011-05-15  
怎么会少了《Java Concurrency in Practice》??
10 楼 dempire 2011-05-15  
think in java
我起初看的时候也在怀疑这书是不是被传得太神了,但慢慢仔细地读下去,发现大师就是大师,讲的太精彩了,像看一部故事书一样。

这书的知识点很分散,要跟着作者思想走,而不能像看XX入门之类的知识点总结的书。

仔细品味作者说的每句话,好多貌似很普通的话,仔细想想就会了解很多东西了。
比如:容器,大家都知道这玩意,总结一下它是干什么的?作者给了很恰当的解释:存放对象。

想要快速浏览这书而获得知识,可能性不是很大。
9 楼 myter7 2011-05-15  
tks! 谢谢分享。 辛苦了。
8 楼 redhat 2011-05-15  
diwi 写道
多谢楼主分享,个人比较喜欢head first系列

它是一本入门的好书,深入还得靠自己。
7 楼 diwi 2011-05-15  
多谢楼主分享,个人比较喜欢head first系列
6 楼 redhat 2011-05-15  
freish 写道
"众人长时间推荐",这里面有超过50%的人只是听过没读过


redhat 写道
freish 写道
《Thinking in Java》究竟好在哪里?通俗易懂方面不及java入门书籍,深入方面不及《深入java虚拟机》,不上不下,不伦不类

首先,《Thinking in Java》是众人长时间推荐的,不敢说它很差,它不能说是一本初级书籍,你说的对,前段时间再度看了看它的,发现对面先对象和设计理解确实非常深入,几年前,也看到它后面几章,特别是16章,都讲解的非常精彩。

《深入java虚拟机》不是讲解如何使用Java语言设计的书籍,OO对它来说,涉及不深,它主要告诉OO如何怎么在JVM中实现的,JVM怎么工作的。

我觉得,主要可能大家对它的偏见在于,还没有完全能够理解和使用OO带来的好处,要像有OO数十年经验的人使用OO来设计,解决领域问题,首先好好学习下OO的设计模式,这样,你才会懂得专业人士是如何使用OO的,到时间,你才能够开始理解OO编程的技巧。

设计模式的推荐书籍:

★★★★★ 《设计模式 可复用面向对象软件的基础》很全面,作为模式的参考书当之无愧,但是比较适合有一定基础的人反复研读;还有些书籍也不错。

★★★★★ 《head first design pattens》,适合初学者理解。

★★★★★ 《设计模式精解(design patterns explained)》,从OO看设计模式,讲出了模式的本质,结合CAD这种单机软件比较多。

★★★★★《漫谈设计模式》,它从OO观点来看,与J2EE结合的比较多,参考书籍和论文等超过了40个,适合细细阅读,理解什么是OO。

★★★★★《重构与模式》,讲解重构比较多,非常适合项目开发,不断迭代改良。


这个再讨论下去没有意思,50%的iteye的人读,这个是一个什么概念?我这里还是侧重于一些国外的大牛的书籍推荐总结,我自己阅读完也深有体会拿出来分享。我相信,Bruce是Java协会具有决定权的人之一,不管是我对他那本书的理解,还是别人对他书的理解,至少认为不会太差。

有时候有的书籍只适合一部分人,不是适合所有人,原因是:那人确实水平太高了,或者那人水平还没到读那本书籍。还有有人读了相关书籍,水平高于那本书籍,就不需要再次重读那本书籍了。不过,如果你对OOP说不上一个所以然来,还是需要在OO加强,这只是假设而已。

但至少可以肯定,那本书籍非常严谨,没有太多乱说的内容,有理有据,很多地方,个人感觉,还是非常深入,不是一般初学者看个一遍就能完全理解其中的奥妙的。
5 楼 freish 2011-05-15  
"众人长时间推荐",这里面有超过50%的人只是听过没读过


redhat 写道
freish 写道
《Thinking in Java》究竟好在哪里?通俗易懂方面不及java入门书籍,深入方面不及《深入java虚拟机》,不上不下,不伦不类

首先,《Thinking in Java》是众人长时间推荐的,不敢说它很差,它不能说是一本初级书籍,你说的对,前段时间再度看了看它的,发现对面先对象和设计理解确实非常深入,几年前,也看到它后面几章,特别是16章,都讲解的非常精彩。

《深入java虚拟机》不是讲解如何使用Java语言设计的书籍,OO对它来说,涉及不深,它主要告诉OO如何怎么在JVM中实现的,JVM怎么工作的。

我觉得,主要可能大家对它的偏见在于,还没有完全能够理解和使用OO带来的好处,要像有OO数十年经验的人使用OO来设计,解决领域问题,首先好好学习下OO的设计模式,这样,你才会懂得专业人士是如何使用OO的,到时间,你才能够开始理解OO编程的技巧。

设计模式的推荐书籍:

★★★★★ 《设计模式 可复用面向对象软件的基础》很全面,作为模式的参考书当之无愧,但是比较适合有一定基础的人反复研读;还有些书籍也不错。

★★★★★ 《head first design pattens》,适合初学者理解。

★★★★★ 《设计模式精解(design patterns explained)》,从OO看设计模式,讲出了模式的本质,结合CAD这种单机软件比较多。

★★★★★《漫谈设计模式》,它从OO观点来看,与J2EE结合的比较多,参考书籍和论文等超过了40个,适合细细阅读,理解什么是OO。

★★★★★《重构与模式》,讲解重构比较多,非常适合项目开发,不断迭代改良。

相关推荐

    java NIO和java并发编程的书籍

    java NIO和java并发编程的书籍java NIO和java并发编程的书籍java NIO和java并发编程的书籍java NIO和java并发编程的书籍java NIO和java并发编程的书籍java NIO和java并发编程的书籍java NIO和java并发编程的书籍java...

    java并发编程书籍

    以上知识点是Java并发编程书籍通常会涵盖的内容,通过深入学习和实践,开发者能够编写出高效、可靠的并发程序,提升系统的性能和可扩展性。购买并阅读相关的专业书籍,如《Java并发编程实战》等,将有助于你系统地...

    Java并发编程书籍高清版

    本资源包含三本权威的Java并发编程书籍:《Java并发编程实践》、《java并发编程的艺术》以及Brian Goetz的文字版《Java并发编程实践》。 首先,我们来看《Java并发编程实践》(Java Concurrency in Practice)这...

    JAVA编程书籍

    这里我们关注的资源是一个名为"JAVA编程书籍"的压缩包,其中包含了两本经典的学习资料——"ThinkingInJava"和"java设计模式"。这两本书籍在Java学习路径上扮演着重要角色,提供了深入理解语言特性和应用设计模式的...

    java网络编程经典的学习书籍

    《Java网络编程》是编程领域的经典著作,尤其对于学习Java网络编程的初学者及进阶者来说,这本书具有很高的参考价值。它详细介绍了如何利用Java语言进行网络通信,涵盖了网络编程的基本概念、协议以及实现方法。 一...

    java并发编程

    《Java编程并发实战》这本书是学习这一主题的重要参考资料。 在Java中,线程是并发的基础。Java通过内置的`Thread`类和`Runnable`接口提供了对线程的支持。你可以通过创建`Thread`对象并传入`Runnable`实例来启动新...

    JAVA并发编程经典书籍

    《JAVA并发编程经典书籍》是一本深入探讨Java平台上的并发编程技术的重要著作。这本书通过详细的章节划分,系统地讲解了如何在多线程环境中编写高效、安全的代码,是Java开发者提升并发编程技能的必备参考。 书中各...

    Java编程不得不看的几本经典书籍

    以下是几本在Java编程领域中被广泛认可的经典书籍,它们覆盖了从入门到进阶,再到Java Web编程的各个方面。 首先推荐的是《Java从入门到精通》(第3版),这本书适合初学者,它以易懂的语言和丰富的实例详细介绍了...

    最全的资源-Java编程的逻辑

    Java编程的逻辑是软件开发领域中的核心概念,它关乎如何用Java语言来构造高效、可维护的程序。在这个最全的资源中,我们能够深入理解Java编程的基本原理和高级技巧,帮助开发者提升技能水平。 首先,Java编程的基础...

    java编程的逻辑源代码

    图书《Java编程的逻辑》完整代码 书中代码为简略起见,部分代码不全,完整代码都在 https://github.com/swiftma/program-logic 上,以下是书中章节和完整代码链接的对应关系。如有谬误,请联系老马, 邮件:swiftma@...

    大学Java实用教程 最好的java编程书籍.part1

    全面介绍了java相关知识,是快速入门java的非常好的资料,内容简洁明快,通过这个入门之后,可以再结合其它专业书籍进一步深入学习。 注:格式虽然是PDF,实际上是我从PPT转换过来的。 总共有7章,共分两卷,分数...

    Java学习资料,可以帮助你学习Java编程语言

    《Java编程思想》是一本经典的Java编程书籍,它深入浅出地介绍了Java编程思想,包括Java基础语法、对象、集合、多线程、网络编程等方面的内容,非常适合Java初学者和开发者阅读。这本书对于初学者来说是一个非常好的...

    java学习书籍

    如果这个文件包含的是《Java编程思想》(Bruce Eckel),那么这将是一个非常全面的资源,涵盖了从基础到高级的Java知识,适合各个层次的读者。 总的来说,学习Java不仅仅是掌握语法,还包括理解其设计理念、熟悉标准...

    收藏的一些关于java的书籍

    Java编程语言作为世界上最受欢迎的编程语言之一,广泛应用于企业级应用、互联网开发、大数据处理等多个领域。本压缩包集合了两本与Java相关的书籍,一本关注于代码的重构,另一本则是关于Java 8的深入解析。这两本...

    java并发编程经典书籍(英文版)

    这本书是Java并发编程的实践指南,适合有一定并发经验的开发者。它更注重于实际应用和最佳实践,内容包括: - **并发模式**:介绍了如Producer-Consumer、Builder、Guarded Suspension等经典并发模式,并提供了...

    java网络编程

    在本资料中,《Java网络编程》第三版提供了深入浅出的讲解,旨在帮助开发者提升对这一领域的理解。 1. **基础概念**: - **网络模型**:Java网络编程基于OSI七层模型和TCP/IP四层模型。理解这些模型有助于理解网络...

Global site tag (gtag.js) - Google Analytics