一、基础类
1、《Thinking in java》,入门第一位是建立正确的概念。
2、《Core Java》,这本书更贴近实践,更多API的介绍,同样,更新也更频繁。
3、《java.核心编程技术》
4、《Java编程思想(第四版中文版)》
二、进阶类
1、《Effective Java》,在熟悉语法、API之后,你需要知道最佳实践和陷阱,没有比这本更好的。
2、《Java Puzzlers》,通过谜题介绍一些你可能没有注意到的边角料,作为趣味读物也不错
3、《深入Java虚拟机》,翻译一般,但不可不读,最好结合最新的JVM规范来读。
4、张孝祥Java邮件开发详解
5、Java网络编程精解_孙卫琴
三、特定领域
1、网络编程:
(1) O’Reilly的《Java nio》,很多人都推荐,基本上只是个API更详细的说明文档,O’reilly的java系列很多都是这样。
(2)我更推荐这本《Fundamental networking in java》,由浅入深教你怎么做java网络编程,并且介绍很多背景知识,甚至介绍了各种最佳实践、网络编程模型以及Java socket在不同平台之间的差异等等。
2、并发编程:
(1)《Java Concurrency in Practic》,并发领域必读经典。
(2)《Java并发编程:设计原则与模式》,同样是Doug lea的作品。
(3) 《java threads》,入门读物。
3、web编程
1、张孝祥《深入体验Java.Web开发内幕.-.核心基础》《深入体验Java.Web开发内幕.-.高级特性》
2、李刚疯狂系列
3、Expert.One.on.one.J2EE.Development.Without.EJB中文版
4、深入分析Java Web技术内幕
5、Spring源码深度解析
6、从Paxos到Zookeeper
7、大型网站技术架构:核心原理与案例分析
8、大型网站系统与Java中间件实践
9、淘宝技术这十年
四、模式与设计
1、《设计模式》,GOF的经典。
2、《设计模式精解》,应该有最新版,个人认为更适合入门。
3、《Head first设计模式》,更轻松的入门读物。
4、《企业应用架构模式》
5、《分析模式——可复用对象模型》
6、《面向模式的软件体系结构》,国内貌似翻译了3卷,绝对经典,可惜翻译较差。
7、《重构——改善既有代码设计》,想写好代码必读。
8、《重构与模式》
9、23种java设计模式
10、JAVA软件架构设计模式
11、JAVA设计模式
五、方法论
1、《敏捷软件开发》
2、《测试驱动开发》,你不一定要TDD,但是你一定要学会做单元测试。
3、《Agile Java》,也可以作为java入门读物。
4、《快速软件开发》
5、《面向对象分析与设计》,OO设计必读。
6、《Unix编程艺术》,打开你的眼界。
7、解析极限编程拥抱变化
8、统一软件开发过程
9、敏捷建模:极限编程和统一过程的有效实践
10、快速软件开发
11、软件框架设计的艺术
六、Java之外
1、《unix网络编程》,学习网络编程必读书。
2、《C++网络编程》上下两卷,介绍ACE的,但是其中对各种模式运用的介绍非常值的一读。
3、《Joel说软件》,编程文化
4、《人月神话》、《人件》
5、《卓有成效的程序员》,给我很大启发的一本书。
6、《程序员修炼之道》
7、《计算机程序的构造与解释》,必读
8、《算法导论》,可以作为参考书
9、《深入理解计算机系统》
10、《编译原理》龙书,最新版用java解释,我没有读完,顺便提下。