Java 初学者学习路线(浓缩版)

Java 初学者的学习建议 (每个阶段要学习的内容和书籍)

声明:

1. 所推荐的学习内容是 Java Web 和 Java 后端开发的路线,非 Java Web 和 Java 后端开发的同学请适当参考其学习思想即可,切勿照搬

2. 下面对于【第一部分】的推荐内容,目的是让你尽快成为一个可以参加工作的Java开发者,更适用于处于待业状态,准备转行Java的同学。如果你是在校学生,务必要在学好基础(比如计算机系统、算法、编译原理等等)的前提下,再考虑去进行下面的学习。


第一部分:对于尚未做过Java工作的同学,包括一些在校生以及刚准备转行Java的同学。(核心任务:掌握工作中需要的技能,以及找到份好的工作)


一、Java基础 (要达到能编写一些简单的程序)
    1. 看 Java 基础教程 (多动手敲代码,熟悉下所学的知识)

二、Web开发
    1. HTML/CSS/JS(前端页面)(对后端开发人员来说不是很重要,但至少要能写出一些简单的页面)
    2. Servlet/JSP(J2EE)(对后端开发人员来说必须精通,这时候要学会使用 IDE 进行开发)
    3. Mysql(数据库)(不仅要学会使用 JDBC 操作数据库,还要学会使用数据库客户端工具,如 navicat, sqlyog)


三、开发框架(会这三个框架的搭建,并会用它们做出一个简单的增删改查的  Web 项目,还要会使用一些开发中常用的工具)
    1. springmvc(Web框架)
    2. mybatis(ORM框架)
    3. spring(容器框架)
    4. Git(版本控制工具)
    5. Maven(项目管理工具)

四、找工作(可以看一些面经、面试书籍,然后刷一些题目)
    1. Java程序员面试宝典(杨磊)
    2. 牛客网刷 Java 题目


第二部分:对于参加工作一年以内的同学。(核心任务:在工作中实践,并且更加深入的了解Java基础)

 一、深入了解 Java
     1. 《Java编程思想》(要充分吸收,不是读一遍就完事了)


第三部分:对于参加工作1年到2年的同学。(核心任务:提高自己的编码能力,写一手优雅的代码)

 一、深刻体会面向对象(设计模式)    
    1. 《大话设计模式》

 二、代码编写的优化
    1.《重构 改善既有代码的设计》,《effective java》


第四部分:对于参加工作2年到3年的同学(核心任务:深入理解 Java 底层和 Java 类库)

 一、全面了解 Java 虚拟机(JVM)
    1.《深入理解Java虚拟机》

 二、深入的了解并发相关知识    
    1.《Java并发编程实战》

 三、更加深入了解 Java 的类库以及所使用的框架
    1. 看一些JDK中的类的源码,也包括你所使用的框架的源码(必须对设计模式深入了解,否则看的过程会有许多疑问)

 四、根据优秀的源码去试着造个轮子
    1. 一个造轮子的过程,是一个从无到有的过程。这个过程可以对你进行系统的锻炼,它不仅考察你的编码能力,还考察你的框架设计能力,你需要让你的轮子拥有足够好的扩展性、健壮性。


第五部分:参加工作3年到4年的同学(核心任务:选择自己工作中相关的一个领域,进行深入学习,还要去弥补基础上的不足)

 一、精通一项感兴趣的技术, 建立起自己的优势
    1. 大数据(Hadoop、hbase)

    2. 分布式缓存(redis)

    3. 分布式计算(Mapreduce、storm)

    4. 分布式消息服务

    5. 软负载均衡

 二、对所选的那项技术进行深入学习,弥补基础上的不足
     1. 《深入理解计算机系统》(Java Web 开发和 APP 后端开发)
     
     2. 《tcp/ip详解 卷一、二、三》(网络编程,例如使用netty去开发,需要对 TCP/IP 了解要比较深入)
     
     3. 《数据结构与算法》(计算研究工作的人,例如分布式计算)
    


第六部分:参加工作4年到5年的同学(核心任务:提高自己的影响力,为自己未来的十年工作生涯做准备)

 一、利用前面自己所深入的那项技术,做个自己的产品
    1. 可以在 Github 创建一个属于自己的开源项目
    2. 发表一些博文

 二、尝试去一些知名的公司去提高你的背景


结语


本文到此就基本结束了,整篇文章很长,但其实主要就说的内容就是Java生涯的学习。

关于这部分,我已经给出了自己的见解,但是还是那句话,每个人吸收知识的时候,都要有抽取精华,去除糟粕的能力。我所说的,可能有些是对的,有些是错的,有些是适合你的,有些是不太适合你的,你要自己能够判断。

其实你在生活和工作当中也是一样的,你身边的人形形色色,有的人你喜欢,有的人你很讨厌。但其实你喜欢的人也有缺点,你讨厌的人也有优点。你要学会从你讨厌的人身上学会他的优点,千万不要一棒子打死,这只会让你失去很多学习成长的机会。 好了,说了这么多了,就到此为止吧,希望本文可以帮助到作为程序猿或即将成为程序猿的你。
  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冰阔落

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值