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

大部分人,刚开始学习的Java的时候,最大的问题就是不知道该学什么,以及学习的顺序,而这这也是很多初学者经常面临的问题。所以很多人黑猫白猫一起抓,而且现在学习资料也不缺,网上资料一大把,只是实在不知该从何下手。

其实,过来人都知道,精研某一个方向,或者走全栈路线,都是可以的,两种路线各有优缺点,没有必要非要整个争个高下。因为自己喜欢的,才是最好的。

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

九阳神功第一阶段

第一层心法,主要都是基本语法,程序设计入门,悟性高者十天半月可成,根性稍钝着 三到六月或有可成。如果有其他开发语言的功底相助,并且有张无忌的悟性与运气,相信第一层只在片刻之间就练成了。

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

  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
  23. MyCat/ShardingSphere

这一阶段修炼完,你已经基本上达到了金毛狮王的水平了,金毛狮王是张无忌义父主,屠龙刀主人,那你出去找个项目经理的位置坐坐估计差不多吧。

九阳神功第五阶段

最后还不得不说 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(非专业前端建议修炼其中一个即可)

修炼到这一层,练习到这一层,基本上前后端通杀,做个架构师,或者独立接私活妥妥的了。《乾坤大挪移》的作者据说也是这个层次。

九阳神功第七阶段

本层主要修炼:

《养发护发指南》

《颈椎病康复指南》

《腰椎间盘突出康复指南》


祝大家早日习得盖世神功!

附上手绘完整Java学习路线图:

原文:https://zhuanlan.zhihu.com/p/73671471(配图教程请点击原文)

JAVA全栈工程师学习线路(建议收藏)的更多相关文章

  1. 2019年java全栈工程师学习大全

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

  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. Java全栈学习路线、学习资源和面试题一条龙

    肝了一个月,终于把Java学习路线.面试题资源和电子书资源都整理好了. Java 从基础到微服务的学习路线,其中还包括科班知识.学习建议.后续的学习引导和相应的学习资源(视频.书籍.网站),还整理了J ...

随机推荐

  1. Class 'org.apache.tomcat.jdbc.pool.DataSource' not found

    把项目移动到新的运行环境时,明明包都导入了,项目也放进tomcat里面了,但是还会找不到该类 解决方法:项目右键选择底下的Properties ->project facets ->jav ...

  2. Android学习进度一

    在解决了电脑产生的一系列问题之后成功安装了Android Studio,并在其自带的手机模拟器上成功运行了第一个App(Hello World!),通过这个最简单的App研究了App基本的工程结构,为 ...

  3. 6、使用基元类型而不要使用 FCL 类型

    基元类型: int string object uint long ulong 等 ; FCL (Framework Class Library ) System.Int32 等. 一些定义在一些语言 ...

  4. 79.纯 CSS 创作单元素麦当劳金拱门 Logo(自创)

    效果地址:https://scrimba.com/c/cN3P6nfr 原理:两个椭圆,颜色部分为边框,下一半被伪元素覆盖. 感想:看了一眼大神的,代码比我的还少,得研究研究去. HTML code: ...

  5. 序列积第m小元素 二分答案优化

    给出两个长度为n的数组A和B, 在A和B中各任取一个, 可以得到n×n个积. 求第m小的元素. n<=100000 这一道题的意思就是 a1 a2 a3 a4.. b1 b2 b3 b4 n^2 ...

  6. element-ui input 组件 回车事件

    直接在el-input 标签上添加@keyup.enter="funName" 是不起作用的,在组件中使用需要加上.native. <el-input v-model = & ...

  7. Git创建远程分支并提交代码到远程分支

    1.可以在VS中新建分支 2.可以通过git branch -r 命令查看远端库的分支情况 这些红色都是远程的分支 3.从已有的分支创建新的分支(如从master分支),创建一个dev分支 (不用vs ...

  8. 获取当前URL

    HttpContext.Current.Request.Url.ToString();

  9. 测试工具Fiddler(三)—— 常见功能介绍

    Fiddler的功能面板 1.statistics:请求的性能指标:全世界范围的性能测试: RTP:一个请求的从发送出去到返回的时间: Show chart可以看出图表的示例: 2.inspector ...

  10. Web测试中定位bug的方法

    在web测试过程中,经常会遇到页面中内容或数据显示错误,甚至不显示,第一反应就是BUG,没错,确实是BUG.进一步了解这个BUG的问题出在那里,是测试人员需要掌握的,可以简单的使用浏览器自带开发者工具 ...