基础
- <<Think in Java>> 除GUI编程之外的其他基础部分
- <<深入理解计算机系统>>(CSAPP), <<计算机操作系统>>
- <<计算机网络>>, 特别是传输层, 应用层
- <<算法>>
- <<Head First 设计模式>>
中级基础
- Spring(IoC/DI, AOP), [Strust2, 可选, 一般只用作WEB框架, 但是SpringMVC可轻量级替代], Hibernate/MyBatis, 前导要求: JSF规范 以及 JPA规范, 更大一点, JavaEE规范.
- SQL数据库与NoSQL数据库, <<高性能MySQL>> 与 <<Redis实战>>, 或者 Oracle + MongoDB, PostgreSQL也可以, 但是只是”附加题”
- [熟悉一下前端技术]
- [会一门脚本语言, perl/python…]
高级基础
- <<Effictive Java>>
- <<Java并发编程的艺术>>/<<Java并发编程实战>>
- <<Java8新特性>>
中阶
- <<深入理解Java虚拟机>>, 最好能看一下<<Java虚拟机规范>>
- NIO, 熟悉Netty
- 缓存中间件, 难, 必考
- 消息系统中间件
- Socket 以及优秀的网络库
- 其他技能点, 如 UNIX/Liunx, JSON/XML, 一些项目开发过程中的概念, 如Restful Service 等等
高阶
//面试, 装逼, 以及真大神必须
- Tomcat, Nginx, …
- 各种分布式环境下的东西
- 大数据处理, 如Hadoop, 高并发处理…
- jdk源码, jvm源码, 各大框架对比, 源码, 面试会考