看到今天这个问题,威哥竟然不由得一愣,是啊,自学Java到底该如何入门呢?这个问题猛一看很简单,但细想却不容易回答。威哥作为一个混迹Java领域十多年的老油条,似乎还真没有认真地想过,自学Java到底该如何入门,自己到底是怎么学习Java的……一切好像都是那么地稀里糊涂……

细想一下,其实无论是要自学Java,还是要自学开车,无论我们要自学什么,都要弄明白以下几个问题:我们适不适合自学,怎么自学,从哪开始自学,自学到什么程度?我们要学习的这个技术有什么价值?学习这个技术的路线是什么样的?…..

所以通过这篇文章,威哥将带你弄清楚你到底适不适合自学,如何自学Java,怎么自学,从哪开始自学,自学到什么程度等核心问题。本文的基本纲要如下:

闲言少叙,书归正传,让我们开启填补认知漏洞的一天吧,开心ing……

根据威哥自身的经验认知,我觉得我们在学习任何一个技术之前,都应该仔细想一下,我们到底要不要花费时间、精力和金钱去自学一个技术。毕竟我们的时间和精力都是有限的,谁也不能保证这个技术可以学会和学好。

在中国传统的儒学思维中有”知易行难“的认知,但威哥却更认同孙中山的”知难行易“学说!孙中山认为,只要我们拥有了正确的理论认知,其实真正实践起来反而很容易!所以在真正开始自学Java之前,威哥要扫清你的认知障碍,只有具有了正确的认知,才能快速有力的行动起来。

现在威哥要问你一个问题,请你仔细思考,你真的想好要自学Java了吗?你有没有想过学习大数据?有没有想过学习H5?你有没有想过参加培训班?如果你犹豫了,说明你没有做好自学的准备,起码在认知这一块就没准备好!

其实这个问题反而是很关键的一个问题!尤其是对于【自律性较差】的初学者来说更重要!试想,如果你本身就没有坚定的自学想法,后面稍微遇到点困难,你还能学的下去吗?你还能学好吗?半途而废的例子不要太多哦!

所谓”万事开头难“,其实很多东西一旦入了门,后面就很顺了,即使后期没有别人的帮助和指导,很多东西自己也大多都可以搞得定,但恰恰很多人的学习计划就死在了”入门“前的路上。对于初学者来说,自学这条路,在刚开始的时候尤其困难,接下来威哥就给你分析一下自学时存在的那些问题。

首先第一个问题,就是很多初学者其实不知道自己到底要先学什么,后学什么,脑海里【没有一个清晰的学习路线】。很多初学者都会犯一个毛病,今天看会这个,然后在这个知识还没牢固的时候,就又好高骛远地去学另一个,结果两个知识哪个也没学扎实。学到最后,学习路线完全乱了,自己都不知道自己到底学了哪些东西,感觉哪个都知道,感觉哪个都不熟。

然后影响自学者学习效果的【另一个关键因素,就是自律意识】!这一个因素其实是最关键的!为什么有的人可以成为学霸,有的人确是学渣?难道真的是因为智商差异吗?威哥觉得不是!很多时候,学渣的智商可能比学霸的智商还要高一些,但学渣的学习就是搞不过人家学霸!很多初学者在自学的时候,会有三天打鱼两天晒网的毛病。刚开始自学的时候,信心满满兴致勃勃,第一天开始学的时候劲头十足,第二天也不错,但三天之后,学习劲头就开始下滑了。本来想着泡在图书馆每天自学8个小时,结果三天之后的学习时间就降低到了6个小时……4个小时……2个小时…..

对于我们程序员来说,肯定要经常敲代码,没有哪个程序员是只看书不敲代码就能把编程学好的!就好比一个神枪手,枪法是靠子弹喂出来的,而一个好的程序员,肯定是靠大量的实战代码堆出来的!初学者跟着文章或者视频学习教程的时候,【很容易眼高手低】。看着视频或文章里的代码很简单,看一眼就觉得自己会了,但自己真的敲代码时就各种错误,连一个最简单的Hello World可能都会报错。然后一报错就懵逼了,控制台一片红,咋解决啊?不知道啊!

因为是自学,没人给自己指导,遇到故障错误就只能自己费劲吧啦地百度查资料,寻找问题的解决方案。其实很多初学者连问题都不知道怎么描述,脑海里根本【没有解决问题的思路】。也就是说,很多初学者,在敲第一个案例代码的时候,就已经停止了自学计划了!学个毛线啊,明明看着代码和文章视频里的一样啊,为什么人家就正常,我的却报错?搞不定啊搞不定!欲哭无泪…….

即使有些自学者终于费劲吧啦的把第一个问题给解决了,然后随着学习的进行,又会出现第二个问题,第三个bug,第四个故障……有的小伙伴会说,自学个Java咋那么多问题?其实不是自学Java有这么多问题,你自学任何一个技术,都会有这些问题!因为你还没入门,你【不知道如何避免和解决这些问题】!所以在别人眼里很简单很low的问题,在你眼里就难如登天!这就是所谓的”隔行如隔山“!你想想,作为一个初学者,你每敲一个代码案例,就遇到这样那样的问题,出了问题还得花费很长的时间和精力去解决,搞来搞去,你还有多大的热情和动力继续学下去呢?

而且即使你的学习劲头依然很足,遇到了问题就解决问题,每遇到一个bug,就花一个小时、一上午、一天甚至一周的时间去解决这个bug。虽然最终把问题搞定了,你觉得很开心,但威哥问你,你浪费了什么?你【走了很多弯路,浪费了最宝贵的时间】啊!所以别人5个月能学完的东西,你可能要花10个月,甚至一年两年才能学完,而且你学的还没人家扎实牢固!你觉得自学节省了钱,但却浪费了很多不必要的时间!我们在计算机里有一种编程思想,叫做”时间与空间“的关系。有的架构方案是”用时间换空间“,有的架构是“用空间换时间”,自学就属于“用时间换空间”,自己悟一下是不是这样!如果你把节省出来的时间用于工作挣钱,挣得钱其实远比你节省的学习费用多!

还有的“大聪明”会说,既然自学时敲代码会出现一些很难搞定的问题,那我不敲代码,只看书看视频就好了,哈哈,我好聪明啊!如果你真这么干,我只能说你是“大愚若智”了!要想成为一个程序员,不敲代码,这就等于一个武者只看武功秘籍却不练武,你是想做“王语嫣”吗?【敲不出代码】的程序员,没有参加过【项目实战】的程序员,对开发来说有个卵用啊,这是典型的打嘴炮啊!

另外,IT行业是一个技术更新很快的行业,自学者最容易走入歧途的地方就在于大量的浪费时间。明明五六个月就可以学完的内容,你非得花一年时间去学习。等你把这个技术学完了,然后发现这个技术更新了,甚至有点落伍了……你这是学了个寂寞啊大兄弟!而且我们自学时,因为大多数时候都是一个人“闭门造车”,遇到了问题没有可以请教的朋友,有什么想法也不知道和谁交流,所以就【没了最基本的“人脉圈”】。

我们无论自学哪个技术都会存在各种各样的问题,以上只是威哥发现的一些常见问题,最后威哥再给你总结一下自学者容易出现的状况:

当然,如果以上问题,对你来说都不是问题,那威哥就可以放心的跟你说,“小伙,我看你是个做码农的奇才,你赶紧开始自学Java。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注