看到今天这个问题,壹哥竟然不由得一愣,是啊,自学Java到底该如何入门呢?这个问题猛一看很简单,但细想却不容易回答。壹哥作为一个混迹Java领域十多年的老油条,似乎还真没有认真地想过,自学Java到底该如何入门,自己到底是怎么学习Java的......一切好像都是那么地稀里糊涂......
不过这时有的小伙伴可能会突然醒悟过来,哎,壹哥是谁啊?说的话有啥分量吗?

壹哥是哪个?---------------------------------
-
我是 "一一哥" (孙玉昌),十年软件开发授课经验,CSDN博客专家;
-
曾任国内物流行业某独角兽企业后端架构师;
-
曾主导研发油田、广电、教育、物流等行业项目,拥有丰富的行业方案解决经验;
-
现从事软件开发教育工作,培养了大量入职阿里、华为、百度、IBM等名企的高薪学生;
-
坚持一心做教育,做一流教育的理念,被学生爱称为 "一一哥"、"壹壹哥"。

跟着壹哥混,天天吃馄饨----------------------------
现在你知道壹哥了吧?如果还不知道,可以去CSDN和B站逛一圈,那里有很多壹哥的干货文章和视频哦!
全文大约破万字,不说废话,只讲可以让你学到技术、明白原理的干货!
阅读前的开胃菜,壹哥的学习习惯:
每天拿出20~30分钟的时间,认真阅读一篇技术文章,记住我们是靠技术吃饭的,技术必须硬!
请记住,今天的你,技术可能还很弱,但别气馁,看了这篇文章,你就会增强一点点!

前戏已做完,精彩即开始----------------------------
现在,壹哥来告诉你,小白该如何自学Java!!!
一. 本文纲要
细想一下,其实无论是要自学Java,还是要自学开车,无论我们要自学什么,都要弄明白以下几个问题:我们适不适合自学,怎么自学,从哪开始自学,自学到什么程度?我们要学习的这个技术有什么价值?学习这个技术的路线是什么样的?.....
所以通过这篇文章,壹哥将带你弄清楚你到底适不适合自学,如何自学Java,怎么自学,从哪开始自学,自学到什么程度等核心问题。本文的基本纲要如下:
1. 关于自学;
2. 关于Java;
3. 关于入门。
闲言少叙,书归正传,让我们开启填补认知漏洞的一天吧,开心ing......
二. 关于自学
根据壹哥自身的经验认知,我觉得我们在学习任何一个技术之前,都应该仔细想一下,我们到底要不要花费时间、精力和金钱去自学一个技术。毕竟我们的时间和精力都是有限的,谁也不能保证这个技术可以学会和学好。
在中国传统的儒学思维中有”知易行难“的认知,但壹哥却更认同孙中山的”知难行易“学说!孙中山认为,只要我们拥有了正确的理论认知,其实真正实践起来反而很容易!所以在真正开始自学Java之前,壹哥要扫清你的认知障碍,只有具有了正确的认知,才能快速有力的行动起来。
1. 到底要不要自学
现在壹哥要问你一个问题,请你仔细思考,你真的想好要自学Java了吗?你有没有想过学习大数据?有没有想过学习H5?你有没有想过参加培训班?如果你犹豫了,说明你没有做好自学的准备,起码在认知这一块就没准备好!
有的小伙伴可能会很好奇,壹哥为什么要提出这么一个看似无关紧要的问题?
其实这个问题反而是很关键的一个问题!尤其是对于【自律性较差】的初学者来说更重要!试想,如果你本身就没有坚定的自学想法,后面稍微遇到点困难,你还能学的下去吗?你还能学好吗?半途而废的例子不要太多哦!
2. 自学存在的问题
所谓”万事开头难“,其实很多东西一旦入了门,后面就很顺了,即使后期没有别人的帮助和指导,很多东西自己也大多都可以搞得定,但恰恰很多人的学习计划就死在了”入门“前的路上。对于初学者来说,自学这条路,在刚开始的时候尤其困难,接下来壹哥就给你分析一下自学时存在的那些问题。
首先第一个问题,就是很多初学者其实不知道自己到底要先学什么,后学什么,脑海里【没有一个清晰的学习路线】。很多初学者都会犯一个毛病,今天看会这个,然后在这个知识还没牢固的时候,就又好高骛远地去学另一个,结果两个知识哪个也没学扎实。学到最后,学习路线完全乱了,自己都不知道自己到底学了哪些东西,感觉哪个都知道,感觉哪个都不熟。
然后影响自学者学习效果的【另一个关键因素,就是自律意识】!这一个因素其实是最关键的!为什么有的人可以成为学霸,有的人确是学渣?难道真的是因为智商差异吗?壹哥觉得不是!很多时候,学渣的智商可能比学霸的智商还要高一些,但学渣的学习就是搞不过人家学霸!很多初学者在自学的时候,会有"三天打鱼两天晒网"的毛病。刚开始自学的时候,信心满满兴致勃勃,第一天开始学的时候劲头十足,第二天也不错,但三天之后,学习劲头就开始下滑了。本来想着泡在图书馆每天自学8个小时,结果三天之后的学习时间就降低到了6个小时......4个小时......2个小时.....
对于我们程序员来说,肯定要经常敲代码,没有哪个程序员是只看书不敲代码就能把编程学好的!就好比一个神枪手,枪法是靠子弹喂出来的,而一个好的程序员,肯定是靠大量的实战代码堆出来的!初学者跟着文章或者视频学习教程的时候,【很容易眼高手低】。看着视频或文章里的代码很简单,看一眼就觉得自己会了,但自己真的敲代码时就各种错误,连一个最简单的Hello World可能都会报错。然后一报错就懵逼了,控制台一片红,咋解决啊?不知道啊!
因为是自学,没人给自己指导,遇到故障错误就只能自己费劲吧啦地百度查资料,寻找问题的解决方案。其实很多初学者连问题都不知道怎么描述,脑海里根本【没有解决问题的思路】。也就是说,很多初学者,在敲第一个案例代码的时候,就已经停止了自学计划了!学个毛线啊,明明看着代码和文章视频里的一样啊,为什么人家就正常,我的却报错?搞不定啊搞不定!欲哭无泪.......
即使有些自学者终于费劲吧啦的把第一个问题给解决了,然后随着学习的进行,又会出现第二个问题,第三个bug,第四个故障......有的小伙伴会说,自学个Java咋那么多问题?其实不是自学Java有这么多问题,你自学任何一个技术,都会有这些问题!因为你还没入门,你【不知道如何避免和解决这些问题】!所以在别人眼里很简单很low的问题,在你眼里就难如登天!这就是所谓的”隔行如隔山“!你想想,作为一个初学者,你每敲一个代码案例,就遇到这样那样的问题,出了问题还得花费很长的时间和精力去解决,搞来搞去,你还有多大的热情和动力继续学下去呢?
而且即使你的学习劲头依然很足,遇到了问题就解决问题,每遇到一个bug,就花一个小时、一上午、一天甚至一周的时间去解决这个bug。虽然最终把问题搞定了,你觉得很开心,但壹哥问你,你浪费了什么?你【走了很多弯路,浪费了最宝贵的时间】啊!所以别人5个月能学完的东西,你可能要花10个月,甚至一年两年才能学完,而且你学的还没人家扎实牢固!你觉得自学节省了钱,但却浪费了很多不必要的时间!我们在计算机里有一种编程思想,叫做”时间与空间“的关系。有的架构方案是”用时间换空间“,有的架构是“用空间换时间”,自学就属于“用时间换空间”,自己悟一下是不是这样!如果你把节省出来的时间用于工作挣钱,挣得钱其实远比你节省的学习费用多!
还有的“大聪明”会说,既然自学时敲代码会出现一些很难搞定的问题,那我不敲代码,只看书看视频就好了,哈哈,我好聪明啊!如果你真这么干,我只能说你是“大愚若智”了!要想成为一个程序员,不敲代码,这就等于一个武者只看武功秘籍却不练武,你是想做“王语嫣”吗?【敲不出代码】的程序员,没有参加过【项目实战】的程序员,对开发来说有个卵用啊,这是典型的打嘴炮啊!
另外,IT行业是一个技术更新很快的行业,自学者最容易走入歧途的地方就在于大量的浪费时间。明明五六个月就可以学完的内容,你非得花一年时间去学习。等你把这个技术学完了,然后发现这个技术更新了,甚至有点落伍了......你这是学了个寂寞啊大兄弟!而且我们自学时,因为大多数时候都是一个人“闭门造车”,遇到了问题没有可以请教的朋友,有什么想法也不知道和谁交流,所以就【没了最基本的“人脉圈”】。
我们无论自学哪个技术都会存在各种各样的问题,以上只是壹哥发现的一些常见问题,最后壹哥再给你总结一下自学者容易出现的状况:
-
没有清晰的学习路线;
-
自律意识差;
-
容易眼高手低;
-
没有避免和解决问题的思路与方法;
-
容易走弯路,浪费时间;
-
没有项目实战经验,代码敲的少;
-
没有可以交流的IT圈子;
-
.......
当然,如果以上问题,对你来说都不是问题,那壹哥就可以放心的跟你说,“小伙,我看你是个做码农的奇才,你赶紧开始自学Java吧,请为中华之崛起而编程”!
3. 自学前的准备
如果你现在已经根据自己的实际情况,确定要自学了,那接下来就请进入我们的第二个环节,对我们即将要自学的技术,你应该有一个清晰的认知,所以在开始自学之前,请做好以下准备:
-
想办法搞一个最新的Java学习路线图,明确要学习的Java技术路线和版本;
-
认真规划自己每天的学习时间,严格执行自己的学习计划;
-
准备必要的学习工具,比如电脑、开发软件、学习书籍、学习网站等;
-
定期检查考核自己的学习成果,根据学习结果修正以后的学习计划;
-
.......
对于很多初学者来说,虽然已经决定要自学Java了,但其实你可能还不太清楚Java到底是怎么回事,所以接下来请看壹哥给你精心准备的Java介绍。
三. 关于Java
既然我们现在决定要学习一门技术,就必须先对这门技术有所了解,不能啥都不知道就去学它吧?不能因为别人说这个好你就去学它吧?这个技术都包含了什么内容?学了这个技术能干吗?有什么好处?这个技术有哪些要求......
接下来壹哥会在本章节中,把这些疑惑替你一一扫清!
1. Java简介
1.1 Java是什么
首先我们要弄清楚即将要自学的Java到底是什么东西。简单地说,Java就是一种编程语言,用于开发软件、网站。
在这个世界上,还没有任何一门编程语言像Java一样长期成为软件开发的常青树!
如果只看文字,你对Java还是不够了解,可以看壹哥给你精心挑选的B站视频,5分钟快速了解什么是Java:我和Java的第一次约会
1.2 Java历史
作为一个未来的Java程序员,对Java的历史你应该有所了解,毕竟忘记过去就等于放弃了未来。
-
Java他爹是詹姆斯·高斯林(James Gosling),中国的程序员称之为“高司令”;
-
1990年,Sun公司准备设计一个新的编程工具,13个大牛组建了“绿色小组”;
-
1991年,“绿色小组”研发人员对C++进行了改造,开发出了一种称为Oak的面向对象语言;
-
Oak语言因为缺乏硬件的支持而无法进入市场,从而被搁置了下来;
-
1995年,业界为了使呆板单调的静态网页能够“灵活”起来,需要代码可以通过网络传播并能跨平台运行;
-
Sun公司想起被搁置很久的Oak,对其进行重新审视,申请注册商标。在申请注册商标时,发现Oak已经被人使用了,想了一系列名字之后,最终使用了某个提议者在喝爪哇咖啡时无意提到的Java。于是就命名为Java,Logo是一杯热腾腾的咖啡;
-
1996年1月,Sun公司发布了Java的第一个开发工具包,标志着Java成为一种独立的开发语言。
1.3 Java人尽皆知的优势
你为什么会在众多的编程语言中选择Java,而不是其他?这肯定是因为Java有着自身独特的优势和魅力!其实对IT行业来说,Java人尽皆知的优势是:最成熟、企业开发首选、开发者最多、世界排名第一、始终蝉联TIOBE编程语言排行榜前三列。


25年来,能一直处于第一的编程语言,非Java莫属!
1.4 Java的应用场景
有的人会问,Java这么屌,我咋不知道到底哪里在用Java啊?如果你不知道,只能说你见识浅薄,而不是因为Java无人问津。其实Java的应用遍布全球各个行业、各个领域,你所知道的90%的软件都是Java开发的!比如:
著名的12306
电子商务网站——阿里、淘宝、天猫 、京东.....
绝大多数电信行业的各种系统,中国移动、中国联通、中国电信......
各个银行系统、金融系统、交易系统.....
互联网项目
证券行业系统
游戏后端服务器应用
.......
Java广泛应用在金融、保险、电商、物流、通讯、交通、互联网等各个行业中!可以说,不管是哪个行业,哪个公司,只要他们的项目有后端,90%以上都是Java!
所以,这么牛逼的编程语言,是不是足以坚定你学习下去的信心了?
1.5 Java常见名词
对于很多小白来说,初次接触一门技术时,往往会被一些技术名词给唬住,甚至有些人会被这些技术名词给吓退。所以为了避免你在自学Java时,被一些别有用心的人用一些技术名词忽悠你,接下来壹哥会对一些常见的技术名词进行解释:
-
JavaEE:Java企业版(俗称Java Web,框架技术称为JavaEE);
-
SDK:软件开发工具包;
-
API:应用程序接口;
-
JDK:Java 开发工具包;
-
IDE:集成开发环境,比如eclipse、intellij idea等;
-
Eclipse:曾经比较流行的Java开发工具;
-
IDEA:目前最主流的开发工具;
-
前端开发:包括HTML5、Android、iOS等方向;
-
后端开发:包括Java后台、大数据、PHP后台、Python后台等技术方向;
-
微服务:一种用于构建应用的架构方案。微服务架构有别于传统的单体式方案,可以将应用拆分成多个核心功能,每个功能都被称为一个服务。每个服务都可以单独构建和部署,这意味着各项服务在工作和出现故障时都不会相互影响。
-
分布式:分布式是将不同的模块部署在不同的服务器上,作用是解决网站高并发所带来的问题;
-
分布式与微服务的区别:分布式是分散压力,而微服务是分散能力。
1.6 什么是JavaEE?
有很多初学者会对Java里的一些开发平台闹不清,在网上搜集自学资料时不知道该学习哪些东西。比如现在Java的主流开发方向肯定是JavaEE,有的小白却去自学Java Swing开发,你这不是走了歧路吗?本来学习时间就不多,你还去学没多少人用的开发方向,浪费时间、浪费精力!
那我们自学Java时,该选择自学哪个分支方向呢?
其实Java语言,根据应用的具体方向不同,把Java具体分为了三个开发平台版本:
JavaSE(Java Platform Standard Edition):标准版。所谓的JavaSE,其实就是Java的基础语法部分,该部分包括了Java的所有基础知识,所以无论你是要学习JavaEE,还是JavaME,JavaSE都是必学的,也是我们自学Java时第一块就要学习的内容;
JavaME(Java Platform Micro Edition):小型版。这是为嵌入式设备(手机、机械设备等)提供的开发解决方案,目前很少被使用,所以你就不要再学这个方向啦;
JavaEE(Java Platform Enterprise Edition):企业版。JavaEE是为开发企业环境下的应用程序提供的一套解决方案,该技术体系主要针对于Web应用程序开发。只有学习了这一部分的内容,才能称得上是Java程序员。
我们自学时首先要学习JavaSE的内容,有了这些基础之后,接着就要学习JavaEE,这也是Java学科主要的学习方向,所以Java学科又叫做JavaEE学科!
那么现在,你知道该选择哪个具体的Java方向学习了吗?
1.7 什么是API?
壹哥在上面虽然已经给大家提过API的概念,但还不够细致,接下来会再详细说一下API的概念。因为我们在学习Java时经常需要看API文档,很多文章和视频里也都会经常提到这个名词,你总不能不知道API是啥,就闷头学吧?
API(Application Programming Interface),应用程序接口。而接口的概念,在我们的日常生活中其实经常见到。例如电脑和手机上连接的数据线接口,就相当于“API接口”。只不过这是硬件上的接口,那么软件中所说的接口是什么呢?

比如现在有两个研发人员 A 和 B,如果 研发B 想要调用 软件A 的部分功能,该怎么办?
研发A 可以把 软件A 中,研发B 所需的功能都提前打包好,写成一些特定的方法;
研发B 只要按照 研发A 要求的流程,把这些方法放在 软件B 里,就能实现其所需功能。
这个过程中,研发A 所写的那些方法就是API。所以API就是为了别人调用,将不希望别人看到的内容进行封装,只提供给别人能调用的一些小小地接口,通过这些接口联通外界,供用户调用。
API写好后,一般会有配套的API文档,而API文档可以理解成产品的使用说明书。
我们在学习JavaSE的阶段,目的就是掌握Java的各种基本语法,其实就是在学习Sun公司封装好的Java接口,也就是API。所以我们在学习JavaSE的过程中,或者在写代码的过程中,需要经常的翻看API文档。
1.8 什么是SDK?
那SDK又是什么呢?经常有些人在小白面前张嘴SDK,闭嘴JDK,弄的很多小白一脸崇拜又懵逼的样子,所以接着壹哥就给你科普一下SDK的概念。
SDK(Software Development Kit ) —— 软件开发工具包;
JDK(Java Development Kit) —— Java开发工具包。
看到没,这里的K就是Kit,成套的工具箱的意思,比如下面这张图:


所以,通俗地说,无论是SDK还是JDK,其实都是成套的开发工具箱,就像上图中的工具箱一样,里面装着我们开发时常用的各种开发工具!
在学习的过程中,我们不光可以使用别人开发的SDK,还可以封装自己的SDK。比如公司开发出某种软件的某一个功能,就可以把它封装成SDK,然后出售给其他公司开发用。其他公司如果想要开发出某种功能,无需从头开始研发,直接付钱购买别人开发完成的SDK即可。
购买到SDK后如何使用呢?往往就是调用别人封装好的API接口,来实现自己所要的功能。
1.9 JDK的版本
有些初学者听别人介绍过Java,知道Java的JDK有很多版本,而且知道版本不同,Java所具有的功能也不尽相同。所以就有小白来问了,我们学习Java时到底该选择哪个版本?版本越新越好吗?
壹哥就给大家说说Java的版本问题。
首先,Java的版本号也是JDK的版本。在Java语言的发展过程中,有很多不同的表述方式,有时候会给初学者造成一些误解,请你记住,所谓Java的版本,就是指JDK的版本,两者一回事!
我们再来看看Java版本的演变历史:
1996年1月,Sun公司发布了Java的第一个开发工具包JDK 1.0;
1998年12月,推出 JDK1.2,更名为Java2(Java2就是Java第二代,之所以改成Java2,就是想让外界感觉的Java突飞猛进,已经不是刚诞生时的初级版本,一下子进入到了新二代的意思),自此Java细化为J2SE、J2EE、J2ME;
2000年5月,推出J2SE1.3;
2002年2月,推出J2SE1.4;
2004年9月,推出1.5版本,更名为JavaSE5.0,加入了很多新特性,改动很大;
2006年4月,推出JavaSE6.0;
2009年,甲骨文公司宣布74亿美元收购Sun,取得Java的版权;
2011年7月,甲骨文推出JavaSE7.0的推出;
2014年3月,甲骨文公司发布了JavaSE8.0正式版 (目前最主流版本);
2018年2月26日开始,JavaEE改名为Jakarta EE;
2020年9月15日 ,JavaSE15正式推出;
2021年3月,推出JavaSE16;
2022......
现在Oracle公司把JDK分成了两种维护情况,即短期支持版本和长期支持版本。对于短期支持版本(non-LTS)而言,Oracle只会提供6个月的支持维护;而对于长期支持版本(LTS),则提供8年的支持维护。根据这一规划,Oracle每隔6个月,就会发布一个大版本,每个季度发布一个中间特性版本。并且承诺新的JDK发布周期会严格遵循时间点,将于每年的3月份和9月份发布,中间不会跳票。
所以现在正常情况下,每隔6个月就会有一个短期维护版本(non-LTS)发布出来,比如JDK 9、10、12、13、14、15、16;然后每隔3年,就会发布一款得到8年长期支持维护的JDK版本,比如JDK 8、11、17。所以有些培训机构说他们会讲JDK9/10的新特性,这有什么意义呢?此处有个黑人疑惑脸。
我们可以看看Oracle官方发布的JDK发布支持路线图:

以上是JDK版本的演变过程,但需要记住几点:
1998年至2004年,Java还被称为Java2;
2009年,Sun被甲骨文(Oracle公司)收购,Java的版权从此属于甲骨文;
1.5版本后,更名为JavaSE5.0。所以以下几个版本有两种描述方式:
JavaSE5.0(1.5.0)
JavaSE6.0(1.6.0)
JavaSE7.0(1.7.0)
JavaSE8.0(1.8.0)
JavaSE9.0之后开始收费,不再沿用1.9.0的说法;
截止到2022年4月,目前最高版本是JavaSE18。
1.10 别被忽悠了,学习Java时JDK版本不是越高越好
JDK版本有这么多,作为小白,你到底该选择哪个版本的JDK来学习?直接学习JDK 17还是18?或者等几个月学习JDK 19?壹哥告诉你,别傻了,谁会去学习最新的JDK啊!
每一个JDK版本推出时,都存在着很多的未知的bug,所以企业在开发时,都会选择最稳定的版本!而现在主流的企业级应用都在使用JavaSE 8.0正式版!并且JavaSE8.0及之前版本都是免费的,而JavaSE8.0以后收费(针对企业收费,非个人),所以当前公司考虑到稳定和费用,都在使用JavaSE8.0,这才是主流!
当然在理论上,如果有一天,你们公司非要用花钱的JDK,那就买JavaSE 11吧,因为收费版本中11是比较稳定的。但事实上,绝大多数企业都在使用开源免费的正式版JavaSE8.0,所以我们掌握 JavaSE8.0 就完全可以满足企业需求了!
JDK的官方下载地址是:https://www.oracle.com/downloads
当前官方提供下载的版本是:15、11、8以及8以下版本,8.0以下版本你就不要考虑啦!
另外网上有些培训机构,宣称会讲JDK12、JDK10、JDK9等版本内容,不过是哗众取宠,这些版本官方都停止下载了,你讲了学了有啥用?
2. Java的发展前景
2.1 Java是否值得学习?
从很多年前,网上就有一些别有用心的人在鼓吹,“别学Java啦,Java都饱和了,学了Java找不到工作......”然而这么多年过去了,Java依然长盛不衰!
其实一个东西值不值得我们花费精力来学,关键就看三点:
行业发展,即国家政策;
天花板高不高,即晋升空间和薪资提升空间大不大;
市场大不大,即市场招聘数量大不大。
什么是天花板?其实就是提升空间,包括职位提升空间、薪水提升空间,行业就决定了天花板的高度。这个验证的方式其实很简单,大家可以在招聘网站里设置搜索条件,比如月薪5W+,你看看Java程序员的招聘是否占了最大比例。
另外一个是职业发展的前景,你就看在一个技术团队里,哪个技术方向的人员是领导,绝大多数的企业里,后端人员担任团队老大的比例最高!
如果一个技术的市场占比不够大,你再怎么努力,其实也很难在这个行业有大的作为,因为市场决定了你不可能有大的发展!那么如何去判断一个技术所占的市场大不大,我们可以从供需来看。比如目前主流的51job、猎聘、boss直聘等各大招聘网站,搜索Java关键词,你就会发现有数以万计的需求岗位,尤其是北上广深等一线大城市的需求量更是突出。
壹哥可以给大家推荐一个网站,通过该平台就可以客观公正地了解到Java的就业前景、行业发展趋势及薪资水平。职友集:https://www.jobui.com



你会发现,Java程序员的招聘是最多的,代表Java的需求量就是最多的,所以你选择学习Java就是最明智的!
2.2 Java开发是否饱和了?
Java发展到现在,已经有25年的历程了,壹哥每年都会听到有人说Java已经饱和了,那Java的市场真的饱和了吗?
市场饱和,通俗地说就是消费群体对市场的需求越来越少。而软件人才市场饱和,意思就是软件公司对软件开发人才的需求越来越少。但事实上,中国软件产业还依然在遭遇着人才缺乏的尴尬!
Java语言从1996年诞生直到现在,在TIOBE编程语言排行榜上就一直蝉联冠军,在软件开发行业的地位无法撼动!你所知道的90%以上的软件都是Java语言开发的,25年的积累,企业中采用Java语言来开发软件的习惯已经根深蒂固。
现在Java生态圈和生态链已经非常成熟和庞大了,即便是企业打算更新自己的软件系统,也不可能从根上更改,无论从成本、安全性、可靠性上考虑,都是不现实的。你想想,即使现在有个新的技术产生了,被人宣传该技术屌炸天,但技术的普及需要谁来实现?程序员啊!那这个技术有大量的程序员去学习和开发吗?没有!起码短时间没有!没有程序员去使用这个技术,就形成不了这个技术的产品,没有产品就没有用户啊!想当年为什么微软推出的Windows Phone手机系统干不过Android系统,不是因为微软的技术不行,而是因为C#程序员太少!但Android是Java语言开发的,市面上有大量的Java程序员,所以人员储备很充足,短时间内就开发出了大量的App。反观微软的手机,尴了个尬,买了手机没有App可以用,你说我买这手机当砖头啊?这就是生态的重要性!
所以那些担心Java饱和的人,不是傻就是坏,语言很容易被取代,但已经在线运行的这些项目可不是想停就能停的哦!
2.3 Java程序员发展进阶
听了壹哥的一番分析后,我相信你已经完全坚定了学习Java的信心,那么如果我们坚持学习Java,未来会有什么样的发展前景呢?
对于一个程序员来说,他的晋级路线可以分四个阶段:小白、码农、软件开发工程师、架构师。
小白:会写代码;
码农:被人安排指挥工作,可以实现常规的功能;
软件开发工程师:可以通过自己的专业设计达成最终的应用目标;
架构师:搭建系统架构、进行技术选型、解决技术难点,最终确认技术方案。

另外我们Java程序员,发展到一定阶段还会细分具体的技术方向,比如下图所说:

不同的技术岗位,我们的平均薪资水平也不一样,可以说技术越牛逼,你的新增就越高,最高不封顶哦,就看你的技术实力了!

所以,现在我相信,你学习Java的信心已经爆棚了!坚持吧骚年,相信壹哥,你的选择肯定没有错!
小白自学Java入门指南与前景分析
本文由资深Java开发者壹哥撰写,为小白提供自学Java的入门指导。先探讨自学的可行性、存在的问题及准备工作,接着介绍Java的概念、历史、优势、应用场景等基础知识,还分析了JDK版本选择,最后阐述Java的发展前景、市场需求和程序员进阶路线。
169万+

被折叠的 条评论
为什么被折叠?



