一. 行业解读
1.1 Java名称的由来
-
Java最早被命名为"Oak", 但是该名称被占用, 后来由于桌上一杯"冒着热气的咖啡", 联想到了"Java"
-
Java是印度尼西亚"爪哇岛"的英文名称, 因盛产咖啡而闻名
-
Java的logo图标, 也正是一杯正冒着热气的咖啡
1.2 Java语言在开发中的全球占比及其他数据
-
IntelliJ IDEA在20年底21年初, 发布了一项最新调查
-
中国有51%的程序员使用Java, 这个比例全球最高, 同时还有一些其他有趣的数据
-
今年, Java达到了一个令人难以置信的里程碑, 并达到了27岁的高龄 (Java是1995年由美国SUN公司推出的一门计算机语言)
-
当今世界上有大约520万将Java作为主要开发语言的专业Java开发人员
-
但是如果包括把Java作为副语言的开发者, 这个数字可能接近680万
-
-
Java开发人员最多的地方是亚洲, 大约有250万使用Java作为他们的主要编程语言
-
中国和韩国最高, 分别约为51%和50%
-
Java受欢迎, 一方面是因为Java的免费使用, 政府支持和开源
-
另一方面, 大多数企业的业务服务都依赖Java来运行
-
几乎每个公司, 无论是销售、制造还是银行, 都将IT服务作为其基础设施的一部分
-
而这些服务如工资单或库存管理, 通常在后端使用Java构建, 所以Java才这么常用
-
-
根据《开发者生态》调查的结果, Web服务是Java最流行的领域, 占52%
-
Java8仍然是最受欢迎的版本, 有75%的Java开发者正在使用它, 有几个因素导致Java8如此流行
-
首先, 它具有Java开发者需要的一切, 它具有lambda和stream, 并且是一个易于使用的好版本, 官网对其长期支持, 长期支持的还有Java11
-
其次, Java9引入了一些重大的架构变化, 人们担心这些变化会破坏他们用Java8构建的应用程序, 所以更情愿继续使用Java8
-
-
在过去的三年中, Apache Tomcat仍然是最受欢迎的服务器应用
-
2018年和Spring MVC一样流行的Spring Boot, 到20年21年, 变得更加流行
-
IntelliJ IDEA的市场份额从2018年的55%上升到2020年的72%
2.3 Java岗位及行业介绍
-
IT岗位及公司架构
-
IT开发所涉及的行业
-
职业发展道路
-
参考: 《Java就业指导》
二. 学习方法
2.1 关于考驾照和开车这件事
-
首先大家回忆考驾照学车时, 教练都怎么教的?
-
先演示, 然后告诉我们离合, 油门, 刹车在哪
-
再告诉我们这个是档位, 可以摇来摇去, 踩离合就可以挂挡
-
然后一档换二挡, 二挡换三挡, 你去绕着驾校开吧!
-
你见过哪家教练上来把发动机盖打开, 直接讲发动机原理的? 没有!
-
等你驾照到手的时候, 甚至开了一两年车的时候, 你可能对汽车原理还是一知半解
-
只有当车子遇到问题了, 拉去维修, 你可能才会学习到一些汽车底层原理相关的知识
-
-
再举个学习英语的例子, 我们从小学开始学习英语, 十几年了, 但是几乎不用
-
现让我们跟老外对话, 可以顺畅的沟通吗?
-
很少可以的! 除非所在的行业迫使我们一直用它
-
综上所述
-
学习开车 => 学习java语言
-
学习外语 => 学习java语言
-
行驶公里数 => 代码量!
-
说过的外语 => 代码量!
-
行驶公里数高了 => 老司机! 什么路况都见过, 经验丰富
-
说过的外语多了 => 流畅对话! 熟练掌握这门语言
-
代码量积累多了 => 流畅开发! 熟练掌握这门语言
-
-
2.2 如何找到适合自己的学习方法
-
根据上一个点举的例子, 我们总结出来, 学习语言类相关知识, 重点靠练, 靠敲
-
都听过一句话, 键盘敲烂月薪过万, 能坚持做到, 才能享受结果
-
关于学习方法, 没有最优只有最适合, 所以要在学习前期, 尽快地找到适合自己的学习方法
-
在这里分享一些经验
-
计算机操作不熟练 => 不要着急静下心, 慢没关系东西会就行, 熟练度是靠时间的
-
英语读写差 => 开发常用单词表, 多读多练
-
学习中遇到一个问题的正确思路 => 1.自己动脑思考 2.全网搜解答 3.社区讨论
-
整理自己的学习笔记 => 便于复习查阅
-
多和身边的朋友同事进行沟通交流, 一起解决技术问题 => 沟通协作能力, 加深印象
-
-
综上所述, 大家基本可以在开始学习后的一个月内, 总结出适合自己的学习方法
-
三. Java学习路线图
3.1 知识体系
-
JavaEE基础
-
环境搭建&基础语法/运算符/循环/IDEA/方法/debug&进制/面向对象初级/String&API/ArrayList集合&学生管理系统
-
-
JavaEE基础进阶
-
面向对象高级/API高级/集合/IO流/多线程/网络编程/类加载器/反射/XML/注解/枚举/单元测试/日志技术
-
-
JavaWeb
-
MySQL/JDBC/Maven&mybatis/HTML&CSS/JavaScript/HTTP&Tomcat&Servlet/Request&Response/JSP/会话技术/Filter&Listener&AJAX/Vue&Element/项目实战
-
-
基础框架
-
spring/springMVC/springBoot/mybatisplus/Maven高级
-
-
基础服务框架
-
SpringCloud/Docker/MQ
-
-
高级服务框架
-
微服务保护/分布式事务/分布式缓存/多级缓存/MQ高级/分布式搜索引擎ElasticSearch
-
-
项目 -> 每一个项目一个月左右的时间
-
通过项目开发,把前面的所学全部综合应用,提升真实的项目需求分析能力、接口设计能力、编码能力、代码调试能力、文档阅读能力
-
-
就业相关课程
-
就业指导课/Java大厂面试专题课程
-