接着上篇Java的学习方法,接下讲下Java的高效学习路线。先说明,接下来讲的学习路线有一定前提:1>时间有限(比如:半年内,1年内) 2>精力有限(非脱产学习)
居于上面的2个前提,是从自学效率来看,必须得挑重点来突击式学习。所有下面的高效学习路线可短时内让你建立Java学习体系,入行完全没问题,后面精进就靠个人啦。套用培训机构的说法:4成靠机构,5成考个人, 1成属运气。如果是自学,那9成靠你个人啦。
废话不说,Java高效学习学习路线:
第一阶段:JavaSE基础
1:重要性:非常重要
这个阶段入门Java必经之路,Java这条路走得多远,这里起决定性作用,是建楼的地基。
2:时长:15天(10小时/天)
说明一下,这个时间算高强度学习了,按以往学习经验,会有2种类型朋友:
1>行稳致远,进而有为:1小时精通知识点概念,9小时不断有意识重复练习。
2>好高骛远,眼高手低:自持天赋过人,10分钟精通知识点概念,1小时作业练习,8小时50分装逼
最后结果是:各有应得
3:具体内容:
常量,变量,运算符,表达式,流程控制语句,数组,面试对象对象,常用类,集合,IO,异常,线程,网络编程,Lambda,反射内省,xml解析,文件读取。
4:学会判定标准:开口表述10分钟
我一直奉行的学会判定标准:是否能围绕一个知识点讲上10分钟。
原因:胸藏文墨虚若谷,腹有诗书气自华
没有点底料,你侃个毛线~
5:学习技巧:往死里练
这个阶段基本都是记忆的知识,语法格式固定,需要做的是重复练习,重复练习,重复练习。
先来5遍熟练,再来5遍巩固,最后来5遍加深。
不舍得一身剐,哪里傲视群雄的资本,这个阶段狠就对了。
6:达成后境界:练气初期
初步感应到天地灵气,能吸纳灵气入体转换成法力,存放到丹田内。
第二阶段:JavaWeb阶段
1:重要性:非常重要
如果上一个阶段是基础,这个阶段是灵魂,只要还从事Java 这行,这阶段思想长在。就跟你灵魂一样,少了它,你还是算人么?
肯定有朋友说,后面用框架,项目开发用框架,都没有用到这个阶段的知识点啊,呵呵,你肤浅了。试问你一句:你项目脱离了这个发起请求-->处理请求-->响应请求 这个流程了嘛
2:时长:15天(10小时/天,非脱产自己换算时间)
一样是15天,加上第一阶段,那就是1月入门java基础。
3:具体内容:
数据库,mysql, JDBC,Maven,HTML/CSS,JavaScript,HTTP协议,Tomcat,Serlvet,请求响应,JSP/SESSION,过滤器与监听器,Vue
4:学会判定标准:随手写各种CRUD
这个阶段涉及到数据库操作,各种web操作,学成之后,对java开发有基本了解,能开发出一些简单应用。比如学校官网,简单个人博客。
5:学习技巧:整理归纳,往死里练
第一阶段操作只需要一个main方法就能执行完逻辑,这个需要结合浏览器,服务器,自身项目,所以需要建立交互观念,建立:发起请求--->处理请求--->响应请求的流程模型,根据模型将涉及到知识点串联。这里非常重要,如果做不到,后续学习基本上是懵懵懂懂状态了。
当缕清流程,剩下的就是往死里练习,做到随手可以写。
6:达成后境界:练气中期
人体吸收天地灵气速度大增,转换成法力速度大增,丹田内存储法力空间更大了。
第三阶段:热门框架
1:重要性:非常重要
这个阶段一样重要,如果说web阶段是灵魂,这个阶段是肉体。现在是看脸的时代,你空灵魂,没有华丽的外表是无法吸引LSP跟你互动的。因为:你的外表决定了我是否想要了解你的内在
企业是逐利,效率高于一切,合理框架使用可以极大提高开发效率。所以灵魂诚可贵,肉体价更高,我们都是肉食动物,就不装清高了。
2:时长:8天(10小时/天)
你没看错,就8天, 平均2天一个框架,能学会么,可以的。
这个阶段讲究不求甚解,因为当前掌握的知识点有限,无法做到解读源码,你能做的就是将框架当做工具来学习,只需要学会如何使用工具即可。
3:具体内容:
Spring,SpringMVC,SpringBoot,MyBatis,MyBatis-Plus
4:学会判定标准:随手写各种CRUD
这个阶段内容跟web阶段类似,变化点在于原先是使用原始技术,现在用上框架,多了框架间整合与交互,其他不变。
5:学习技巧:整理归纳,类比学习,往死里练
这个阶段算是web阶段增强版,学习该阶段时一定要类比web阶段的学习。
springmvc---web mybatis---jdbc
灵魂与肉体相结合,这才算个人样。
6:达成后境界:练气后期
人体吸收天地灵气速度继续增长,转换成法力速度继续增长, 丹田内存储法力空间继续增大
第四阶段:项目与工具
1:重要性:非常重要
这阶段也非常重要,前面都是灵魂啊,肉体啊,这个阶段主题是成长。
灵魂肉体的结合仅意味着你生而为人,成啥样的人,就看这个阶段努力了啦。
2:时长:10天~50天(10小时/天)
这个阶段可长,可以短,视掌握前面3个阶段情况而定,按以往经验来看,50天最为适合。
原因:项目多与少,项目经验掌握快与慢都是关键。
3:具体内容:
项目开发涉及到工具:idea git restful linux maven 等
项目一:传统管理类型项目-spring springmvic springboot mybatis + html/js/css
项目二:前后端分离类型项目-spring springmvic springboot mybatis+ + vue
项目三:分布式/微服务类型项目-springcloud + vue
这个阶段内容多,也难,是成长必经之路,前面三个阶段说好听点是入门,难听点是了解java皮毛,这个阶段才算是真正入门。
程序员的区别就是在这个阶段拉开距离的,能悟道,前途光明,悟不了,建议另寻它路。
何为悟道?
1>兴趣浓烈,越学越兴奋--上乘
2>了解开发本质,索然无味--中乘
3>厌恶,逃避,厌学-下乘。
所有了解过的朋友,10有6 7 在第2,Java开发也就是混口饭吃,差不多就好,成就一般。
10存一在第1,兴趣驱动,大,中厂占有一席
剩下的,不说也罢。
4:学会判定标准:能跑项目
到这个阶段,就不是往死练那么简单了,讲究是悟
1>是否能将以前知识点串联
2>是否能将类比,完成知识点迁移
3>是否能联想并创新,模仿后超越
4>能否整合知识点,整合需求,整合项目
5:学习技巧:自主,灵活
1>自主学,有意识学,多思考,多总结,多联想,多实践,代码说话
2>不死板,不教条:没有标准答案,能实现需求就是好方案
6:达成后境界:筑基期初期
人体吸收天地灵气速度倍增,体内灵力转换成法力速度倍增,丹田内存储法力空间倍增
第五阶段:中间组件
1:重要性:非常重要
该阶段为第四阶段附属阶段,一般不建议与第四阶段割裂,学习时相互联想。
2:时长:10天(10小时/天)
基本上一天一个中间件,有些难,有些简单,难的可以在项目阶段结束后继续深究。
3:具体内容:
缓存相关:redis,ehcache, memcached
数据库相关:MongoDB,Hbase
搜索相关:elasticsearch
容器化相关:docker,k8s
微服务相关:springcloud Alibaba组件
文件存储相关:oss,GFS
消息中间件:各种mq
.......
4:学会判定标准:开口表述10分钟,项目中灵活使用
学成 = 10分钟的讲解 + 灵活使用
5:学习技巧:思考 + 实践
中间件学习方法论:
1>能解决啥问题
2>怎么解决问题
3>原理是啥
4>项目中怎么使用的
自问自答,自然就OK啦。
6:达成后境界:筑基期中期
人体吸收天地灵气速度继续倍增,体内灵力转换成法力速度继续倍增,丹田内存储法力空间继续倍增
第六阶段:其他增强
1:重要性:一般
如果能坚持到这,基本可以说出去找工作没啥问题了,如果你学历ok,技术能力ok, 表述能力ok,人品ok,在一线城市找个10k的工作完全没问题。
那找个阶段目的,就是让你找工作更加简单,更容易得手,工资也可以进一步提升。
注意:重要性一样,仅仅针对刚入行者,想在这行走远,后续必须补齐。该阶段内容是内功心法,修仙说法就是顶级功法。
2:时长:7天(10小时/天)
3:具体内容:
计算机组成原理, 计算机网路,各种协议,设计模式,数据结构与算法,各种JVM,架构设计
4:学会判定标准:能讲,能实践
这个阶段理论偏多,能否深入浅出讲明白是关键
5:学习技巧:模仿 + 思考 + 刷题
设计模式靠悟,初级了解形,高级了解神。
数据结构与算法靠理解,多刷题。
其他多思考,多模仿
6:达成后境界:筑基期后期
丹田的法力呈现液体状
第七阶段:面试考验
1:重要性:重中之中
十年寒窗苦读,无非想一朝金榜题名,面试考验就是科举考试。
2:时长:7天(10小时/天)
3:具体内容:
前面阶段都是,如果时间紧迫,3个性价比最高的复习点:
1>非关系型数据库:redis MongoDB,elasticsearch
2>各类功能中间件
3>springcloud 分布式/微服务组件
4:学会判定标准:能讲,能实践
10分钟,并能在项目中找到应用场景
5:学习技巧:讲 + 练
没有技巧,靠的是前面几个阶段学习的积累
6:达成后境界:筑基期后期圆满
进入假丹状态,离结丹不远啦。
第八阶段:顺利入职
入职又是一个新的开始,具体是啥,有机会再说。