我是一位刚刚找到实习offer的计算机研二学生,现在在杭州某厂Java后端实习。
这是我的学习路线,希望对大家有所帮助!
接下来详细介绍一下:
一、基础
Java的内容包括:环境搭建、基础语法、面向对象、数组、集合、常用类、IO流、反射机制、网络编程、多线程与并发、jvm……..
这个是非常非常基础的,一定要了如指掌。
计算机的基础课也要牢牢掌握,包括并不限于数据结构、计算机网络、操作系统、计算机组成原理。
二、数据库
搞定一门数据库相关的课程,并结合起来学习数据库的原理,例如:MySQL。
目前互联网公司,他们都在使用MySQL或者类似的数据库。由于互联网公司的项目访问量比较大,所以一般会搭建数据库的集群,可以一个数据库不够,所以需要搭建数据库集群。另外,NoSQL和分布式数据库也要了解。
三、框架
Servlet 写太麻烦了,只有认真学过 servlet 的人才知道框架的好处,所以必须先学 servlet 原理再来学习框架(至于jsp的语法什么的可以忽略)。
现在流行的框架主要有:Spring + SpringMVC + SpringBoot。
其实 SpringMVC 也是属于 Spring ,MVC 只是一种思想。这里学习顺序是先建议学习 Spring,直接看官方文档学习就可以了,后面再买讲源码的书,掌握到什么程度?最后是要能知道一些原理,例如IOC,AOP的原理,使用了什么设计模式等等,生命周期和流程都要明白。
不过现在搭 ssm 太麻烦,基本都是用 SpringBoot 了,所以 SpringBoot 也必须学,之后有时间的话,也要学习下 SpringCloud.
四、中间件
必须学的中间件:Redis,Redis 基本面试必问,工作也基本的都会使用到,所以必须掌握,推荐书籍《Redis 设计与实现》、《Redis开发与运维》。两本书刷完,就差不多了,或者说第一本书刷完就差不多了。
其他的话,像消息队列、分布式等相关框架,有时间也可以学习一波。
五、项目
这个项目最好能将之前所学全部串起来。(对以前的知识点进行巩固。)
最好是基于: Spring SpringMVC MyBatis做一个项目,SpringBoot做一个项目。
可以是找几个人团队做一下。体验一下团队协作。(尤其是使用一些协作的工具。怎么沟通,怎么写日报,怎么开会,怎么使用Git、maven等等….)
总结
我觉得对于在校生来说,上面这些是最核心的,也是必须学的。但是仅仅是上面这些还是不够的,上面的这些一年左右就可以学完的。因此,你可以有很多其他时间,学一些自己感兴趣的,多实践。
最后强调,我的学习路线不是让你成为技术专家的,学完也不是多厉害,而是,给处于大学迷茫、不知道学啥的同学,一个方向,无论是否是科班。
我相信,当学完了这些,你应该会有自己明确的学习方向了和一个不错的offer了。
---end---