技术更新日新月异,对于初入职场的同学来说,经常会困惑该往那个方向发展,这一点我是深有体会的。

我刚开始学习 Java 那会,最大的问题就是不知道该学什么,以及学习的顺序,我相信这也是很多初学者经常面临的问题。​我当时经常胡子眉毛一把抓,那会学习资料倒是不缺,学校图书馆啥都有,就是无从下手,后来有高人指导之后,进步就很快了。

精研某一个方向,或者走全栈路线,都是可以的,两种路线各有优缺点,如果非要整个争个高下,我觉得没有必要。

自己喜欢的,才是最好的,我读书的时候就接过几百块钱的小活,没几个钱,要是跟人合作更没有赚头了,所以后来我一直在尝试全栈的路线,也一直在这条路上努力。

专精于某一方面,成为某一个领域的执牛耳者,也是让人钦佩了。

结合我自己的经验,我整理了一份 Java 全栈工程师进阶路线图,给大家参考。我整理出来的大部分知识点都有相关的学习资源,大家在公众号后台回复相应的口令就可以获取相关资源(学习资源口令)。

希望大家明白,如果你是在校学生,有大把时间,个人觉得这些东西可以挨个去学,如果你已经工作了,可以根据公司的业务需求有针对性的去学习,下面的列表仅仅起一个参考的作用,当你想学的时候,知道有哪些东西需要学习。

乾坤大挪移第一层

第一层心法,主要都是基本语法,程序设计入门,悟性高者十天半月可成,差一点的 3 到 6 个月也说不准。如果有其他开发语言的功底相助,并且有张无忌的悟性与运气,相信第一层只在片刻之间就练成了。

第一层主要包括如下部分(已经列好顺序):

  1. Java 基础语法
  2. Java 面向对象
  3. Java 常用类详解
  4. Java 异常机制
  5. Java 集合与数据结构
  6. Java IO
  7. Java 多线程
  8. Java 网络编程
  9. Java 注解+反射
  10. 23 种设计模式
  11. 正则表达式
  12. XML 解析/ JSON 解析
  13. Java 10、11、12 新特性
  14. AIO、BIO、NIO

乾坤大挪移第二层

第二层主要是修炼数据库,从基本用法到查询优化、读写分离等等都需要掌握,这里以 MySQL 数据库为例:

  1. 数据库的基本概念
  2. 数据库和表的基本操作
  3. 索引与数据完整性约束
  4. 数据库中的各种复杂查询操作
  5. MySQL 中常见函数的使用
  6. 存储过程、触发器以及事件等
  7. 数据库的备份与恢复
  8. 数据库用户管理与数据库安全性
  9. 事务和多用户
  10. 读写分离环境搭建+实践
  11. JDBC
  12. 常见数据库连接池的配置+使用

乾坤大挪移第三层

第三层主要是修炼 Web 基础,主要包括前端的基础知识,先不用深入学习前端,后端的 Jsp/Servlet,有人会说现在公司都不用 Jsp/Servlet 了,还学这些干嘛?但是万变不离其宗,哪个顶尖高手不是从扎马步开始的?这些掌握好了,框架的原理才好理解。

  1. HTML
  2. CSS
  3. JavaScript
  4. jQuery
  5. Tomcat
  6. Servlet(基本用法,Session、Cookie 等)
  7. Jsp(原理、九大内置对象等)
  8. EL 和 JSTL
  9. 过滤器/监听器等
  10. Ajax
  11. EasyUI
  12. ECharts
  13. BootStrap
  14. Git/Svn
  15. WebSocket

前三层练好后,做个大学的毕设应该是够用了。

乾坤大挪移第四层

第四层主要是修炼各种框架以及工具:

  1. Spring
  2. SpringMVC
  3. MyBatis
  4. Maven/Gradle
  5. Freemarker/Thymeleaf
  6. Linux
  7. ActiveMQ/RabbitMQ
  8. Netty
  9. Zookeeper
  10. Dubbo
  11. Redis
  12. RBAC
  13. Shiro
  14. Elasticsearch
  15. Nginx
  16. SSO
  17. Activiti
  18. Quartz
  19. Spring Batch
  20. MongoDB
  21. Spring Cache
  22. Jpa

这一层修炼完,你已经基本上达到了阳顶天的水平了,阳顶天是明教教主,那你出去找个项目经理的位置坐坐估计差不多吧。

乾坤大挪移第五层

最后还不得不说 Java 目前最火的微服务,这也是一项必备技能:

  1. Spring Boot 基本原理
  2. Spring Boot 基础配置
  3. Spring Boot 整理视图层技术
  4. Spring Boot 整合 Web 开发
  5. Spring Boot 整合持久层技术
  6. Spring Boot 整合 NoSQL
  7. Spring Boot 构建 RESTful 服务
  8. Spring Boot 整合各种缓存
  9. Spring Boot 安全管理
  10. Spring Boot 整合 WebSocket
  11. Spring Boot 整合消息服务
  12. Spring Boot 整合 Swagger、邮件等
  13. Spring Boot 应用监控
  14. Spring Cloud Eureka、Consul
  15. 微服务注册与消费
  16. Spring Cloud OpenFeign
  17. 服务容错保护 Resilience4j
  18. Spring Cloud Zuul/Gateway
  19. Spring Cloud Config
  20. Spring Cloud Bus
  21. Spring Cloud Stream
  22. Spring Cloud Sleuth/Zipkin
  23. Spring Cloud Admin
  24. Spring Cloud Alibaba

第五层修炼成功后,让老板加波薪水应该是可以的吧!

乾坤大挪移第六层

第六层主要是修炼前端,前端这几年发展的非常快,早已经不是画页面了,JavaScript 被玩的越来越溜了,所以前端不可小觑:

  1. HTML5 新特性
  2. CSS3
  3. ES6
  4. JS 模块化
  5. less
  6. NodeJS
  7. Webpack
  8. Grunt
  9. Gulp
  10. Zepto
  11. mpvue
  12. AngularJS/Vue/React(非专业前端建议修炼其中一个即可)

据说乾坤大挪移的作者也只修炼到这一层。

练习到这一层,基本上前后端通杀,做个架构师,或者独立接私活妥妥的了。

2019年java全栈工程师学习大全的更多相关文章

  1. JAVA全栈工程师学习线路(建议收藏)

    互联网技术,更新迭代迅速,用日新月异来说也不为过,所以,面对这这种大环境,对于码农尤其是那些对于初入职场的新手来说,该如何自我学习升级,往方向发展,这一点是大家都经常困惑的. 大部分人,刚开始学习的J ...

  2. 2019 Java 全栈工程师进阶路线图,一定要收藏

    技术更新日新月异,对于初入职场的同学来说,经常会困惑该往那个方向发展,这一点松哥是深有体会的. 我刚开始学习 Java 那会,最大的问题就是不知道该学什么,以及学习的顺序,我相信这也是很多初学者经常面 ...

  3. JAVA全栈工程师应具备怎样的知识体系?

    Java是超高人气编程语言,拥有跨平台.面向对象.泛型编程等特性.在TIOBE编程语言排行榜中,连续夺得第一宝座,而且国内各大知名互联网公司,后端开发首选语言:非Java莫属. 今天是针对各类目有更详 ...

  4. Java全栈工程师知识体系介绍

    Java全栈工程师,是指掌握多种技能,并能利用多种技能独立完成产品的人,也叫全端工程师(同时具备前端和后台能力),英文Full Stack developer. 那么想要成为一名合格的Java全栈工程 ...

  5. 全栈工程师学习Linux技术的忠告

    随着科技的普及,Linux作为最受欢迎的服务端操作系统,无人不知,无人不晓.当今,不论是服务器搭建,还是客户端开发,Linux系统的基础技能对全栈来说都是必备的,而了解如下几个问题可以更好的帮助你成为 ...

  6. PHP全栈工程师学习大纲

    一.高性能网站开发功力提升 时间 标题 内容概要 2015-12-28 开学典礼以及工程师成长路线图 工程师成长的发展路径图.三个阶段,在各个阶段需要提升自己的地方,从技术上也讲了一些提高分析代码的工 ...

  7. python+java全栈工程师 转 向前端的路

    python的优点 简单 简单 简单 我目前在公司用python 1. 增加odoo的各种业务,成本核算.自动跑单.自动备份数据库之类的 ----odoo是国外大佬做的一个开源erp 用的python ...

  8. Java全栈方向学习路线

    前端方向 前端基础 HTML --> https://www.w3school.com.cn/html/index.asp CSS --> https://www.w3school.com ...

  9. C#.Net全栈工程师之路-学习路径

    C#.Net全栈工程师之路-学习路径 按架构分: C/S架构: B/S架构: Mobile移动开发: 按技术点分: C#编程基础以及OOP面向对象编程: 数据库基础以及高级应用(MYSQL+MSSQL ...

随机推荐

  1. linux 中常遇到的问题

    1.上传文件是速度为零 xshell连接对应的Ubuntu服务器上在Ubuntu服务器上安装lrzszsudo apt install lrzsz xshell连接对应的centos服务器上 yum  ...

  2. 用navicat操作oracle新建表空间、用户名、密码

    转载从:https://www.cnblogs.com/franson-2016/p/5925593.html 首先.我们来新建一个表空间.打开Navicat for Oracle,输入相关的的连接信 ...

  3. Linux下的基本命令(不定期更新,欢迎指正错误、交流学习)

    ls 列出目录内容 -a //显示所有文件,包括隐藏文件 -i //显示详细信息 -d //显示目录属性 -h //人性化显示文件大小 -l //长格式显示,也可简写为 ll pwd 显示当前工作路径 ...

  4. Spring— 用更优雅的方式发HTTP请求(RestTemplate详解)

    RestTemplate是Spring提供的用于访问Rest服务的客户端,RestTemplate提供了多种便捷访问远程Http服务的方法,能够大大提高客户端的编写效率. 我之前的HTTP开发是用ap ...

  5. LeetCode LCP 3 机器人大冒险

    题目解析: 对于本题主要的核心是对于一个指令字符串如“RURUU”,如果我们假设它的终点坐标为(8,8),其实只要统计指令字符串中的R的个数和U的个数(对于我给出的例子而言,num_R == 2,nu ...

  6. 洛谷 P2725 邮票题解

    题目背景 给一组 N 枚邮票的面值集合(如,{1 分,3 分})和一个上限 K —— 表示信封上能够贴 K 张邮票.计算从 1 到 M 的最大连续可贴出的邮资. 题目描述 例如,假设有 1 分和 3 ...

  7. python开发笔记-如何做数据准备

    时间格式: >>> from datetime import date >>> firstday = date.fromtimestamp(1464010200) ...

  8. treegrid 折叠全部节点

    $(".easyui-treegrid").treegrid({ url: '@Url.Action("GetDataDictionaryList", &quo ...

  9. YII2 更新数据不成功

    起因: CLI模式,定时任务.同步其他系统中的DB数据,通过视图的方式. 历程: 原脚本已经写好,实在已经有的基础上修改,增加新的字段. 加了字段后,执行,但始终不成功,表里记录的utime也是能更新 ...

  10. 小米BL不解锁刷机

    关于小米NOTE顶配近期解锁的问题中发现还有很多人不会用9008模式刷机,现出个简单教程方便米粉们救砖.硬件:小米NOTE顶配手机 win10系统的电脑 手机与电脑相连的数据线软件:老版本的mifla ...