技术更新日新月异,对于初入职场的同学来说,经常会困惑该往那个方向发展,这一点天津卓众教育java学院小编是深有体会的。
我刚开始学习 Java 那会,最大的问题就是不知道该学什么,以及学习的顺序,我相信这也是很多初学者经常面临的问题。我当时经常胡子眉毛一把抓,那会学习资料倒是不缺,学校图书馆啥都有,就是无从下手,后来有高人指导之后,进步就很快了。
精研某一个方向,或者走全栈路线,都是可以的,两种路线各有优缺点,如果非要整个争个高下,我觉得没有必要。
自己喜欢的,才是最好的,我读书的时候就接过几百块钱的小活,没几个钱,要是跟人合作更没有赚头了,所以后来我一直在尝试全栈的路线,也一直在这条路上努力。
专精于某一方面,成为某一个领域的执牛耳者,也是让人钦佩了。
结合我自己的经验,我整理了一份 Java 全栈工程师学习路线图,给大家参考。我整理出来的大部分知识点都有相关的学习资源,在免费在线咨询,有专业的老师为你提供。
希望大家明白,如果你是在校学生,有大把时间,个人觉得这些东西可以挨个去学,如果你已经工作了,可以根据公司的业务需求有针对性的去学习,下面的列表仅仅起一个参考的作用,当你想学的时候,知道有哪些东西需要学习。
第一层心法,主要都是基本语法,程序设计入门,悟性高者十天半月可成,差一点的 3 到 6 个月也说不准。如果有其他开发语言的功底相助,并且有张无忌的悟性与运气,相信第一层只在片刻之间就练成了。
第一层主要包括如下部分(已经列好顺序):
Java 基础语法
Java 面向对象
Java 常用类详解
Java 异常机制
Java 集合与数据结构
Java IO
Java 多线程
Java 网络编程
Java 注解+反射
23 种设计模式
正则表达式
XML 解析/ JSON 解析
Java 10、11、12 新特性
AIO、BIO、NIO
第二层主要是修炼数据库,从基本用法到查询优化、读写分离等等都需要掌握,这里以 MySQL 数据库为例:
数据库的基本概念
数据库和表的基本操作
索引与数据完整性约束
数据库中的各种复杂查询操作
MySQL 中常见函数的使用
存储过程、触发器以及事件等
数据库的备份与恢复
数据库用户管理与数据库安全性
事务和多用户
读写分离环境搭建+实践
JDBC
常见数据库连接池的配置+使用
第三层主要是修炼 Web 基础,主要包括前端的基础知识,先不用深入学习前端,后端的 Jsp/Servlet,有人会说现在公司都不用 Jsp/Servlet 了,还学这些干嘛?但是万变不离其宗,哪个顶尖高手不是从扎马步开始的?这些掌握好了,框架的原理才好理解。
HTML
CSS
Javascript
jQuery
Tomcat
Servlet(基本用法,Session、cookie 等)
Jsp(原理、九大内置对象等)
EL 和 JSTL
过滤器/监听器等
Ajax
EasyUI
ECharts
BootStrap
Git/Svn
WebSocket
第四层主要是修炼各种框架以及工具:
Spring
SpringMVC
MyBatis
Maven/Gradle
Freemarker/Thymeleaf
Linux
ActiveMQ/RabbitMQ
Netty
Zookeeper
Dubbo
Redis
RBAC
Shiro
Elasticsearch
Nginx
SSO
Activiti
Quartz
Spring Batch
MongoDB
Spring Cache
Jpa
MyCat/ShardingSphere
第五层主要说java目前最火的微服务
Spring Boot 基本原理
Spring Boot 基础配置
Spring Boot 整理视图层技术
Spring Boot 整合 Web 开发
Spring Boot 整合持久层技术
Spring Boot 整合 NoSQL
Spring Boot 构建 RESTful 服务
Spring Boot 整合各种缓存
Spring Boot 安全管理
Spring Boot 整合 WebSocket
Spring Boot 整合消息服务
Spring Boot 整合 Swagger、邮件等
Spring Boot 应用监控
Spring Cloud Eureka、Consul
微服务注册与消费
Spring Cloud OpenFeign
服务容错保护 Resilience4j
Spring Cloud Zuul/Gateway
Spring Cloud Config
Spring Cloud Bus
Spring Cloud Stream
Spring Cloud Sleuth/Zipkin
Spring Cloud Admin
Spring Cloud Alibaba
第六层主要是修炼前端,前端这几年发展的非常快,早已经不是画页面了,Javascript 被玩的越来越溜了,所以前端不可小觑:
HTML5 新特性
CSS3
ES6
JS 模块化
less
NodeJS
Webpack
Grunt
Gulp
Zepto
mpvue
AngularJS/Vue/React(非专业前端建议修炼其中一个即可)