首页 > 代码库 > Java程序员应该读的我认为不错的书单

Java程序员应该读的我认为不错的书单

一、Java书籍


新手

     老是有人说Java编程思想,但是我觉得入门应该建立Java语言的一种体系,应该读一本较为浅显易懂的书,推荐先看Java JDK7学习笔记

进阶

     这时候已经基本了解相关语言架构体系,可以尝试的读下设计模式相关:Head First设计模式
     了解一本基本编程技巧:编写高质量代码:改善Java程序的151个建议
     可以继续深入的了解一些Java内部机制:Java程序性能优化

探索内部

     这个时候已经了解基本的知识,可以说基本算是Java程序员了。
     应该继续了解探索Java内部的实现机制。首选直接研读:JDK源码。源码中主要是java.lang / java.util / java.util.concurrent 几个包。
     虚拟机相关的有:深入理解Java虚拟机Java虚拟机规范
     并发相关的有:Java并发编程实践 /多处理器编程的艺术
     一本综合的书作为引导性的研究比较不错:分布式Java应用 基础与实践

框架

     框架的最好的学习方法还是自己使用,然后研读源码。
     比较优秀的框架:Spring / Hibernate / Lucene
     Spring有解析源码的书:Spring技术内幕
     Lucene相关的书籍可以考虑:这就是搜索引擎

二、程序员


算法

     说到算法,那就肯定有:算法导论 / 编程珠玑 ,但我觉得初学者先读数据结构与算法分析 比较合适点。其它几本突击面试的也不错:编程之美 / 剑指Offer / 程序员面试金典。Java程序员注重的更向数据结构,直接考察数组、字符串算法的比较少。
     如果想算法竞赛,那就可以读一下:算法竞赛入门经典 。竞赛和一般的面试考察点是相差很大的,必须实打实的练习。

数据库

     在研究之前,可以读一下:数据库系统概念 ,不需要仔细研读,只是需要建立起一个数据库的基本概念。
     然后,可以读一下:收获,不止Oracle 。虽然废话很多,不过不失为一本很好的书。

网络体系

     计算机网络:自顶向下方法用于建立体系架构的基本概念。TCP/IP详解 用于深入研究上几层协议。
     HTTP权威指南 比较适合互联网相关的程序设计。

操作系统

     现代操作系统 用于建立基本概念。 
     深入理解linux内核 是一本相当不错的书,它主要给出了一种流程话的描述。不管你什么程序员,这本书上的知识都囊括了相当多的编程相关的基本机制、原理。linux内核中的思想其实就是上层语言的编程的基本机制。
     操作系统的研究相当重要!!!!

分布式与网站架构

     大型网站技术架构 大规模分布式存储系统

三、结语


     我认为最主要的方向应该是:虚拟机 / 操作系统 / JDK源码 / 并发
     走上了程序员这条道路,必须了解大量的技术体系,程序是一个开源的世界,这是一种幸运也是一种不幸,在能无偿了解这么多知识的同时,我们也必须了解如此大量的知识才能成为合格的程序员。