java自学能学好嘛?

如题所述

有人说自学Java很难,如果你自制力还不错,可以选择自学,事在人为嘛
JAVA自学之路 一: 学会选择
我的意见是,当你要走向社会的时候,就不要再把自己当成学生,不要把自己的将来交给别人,学会运用自己的眼睛去观察,去了解这个世界吧。
每个培训机构都会宣传自己的好处,并不能说明大的趋势。 一些新闻文章很有可能是枪手写的,不必太过相信。国外背景的教师和课程,未必适合你。那么怎么才能确定自己将来的方向?如何才能从纷繁复杂、或真或假的数据世界中挖出一条路?
在这里我可以给大家讲一个通过招聘网站的观察方法,举个例子说明一下如何利用好公共资源。可以到各种招聘的网站上查询信息(可以到google上查询招聘的网站),例如:
招聘网_人才网招聘网_找工作招聘_求职_找工作
CSDN.NET - 全球最大中文IT社区,为IT专业技术人员提供最全面的信息传播和服务平台招聘频道 职友集(天津):发现中国好公司,最好的求职找工作网站,综合了各大招聘网站的数据。
这些数据都是最真实不掺假的原始数据,你可以每隔一段时间搜索一次,一些规律就会被总结出来了,选对方向,往往比盲目的努力更重要。 比如说我在职友集(天津):发现中国好公司,最好的求职找工作网站中搜索java,全国大概提供了3万个职位。 位然后要多翻几页,这样不仅能够看清楚大概有多少是有效的职位,而且还可以看清楚用人单位最关心的技能是什么,这个很重要,决定着你将来要花多少时间和精力在特定的知识点上,比如说swing,搜了一下,全国只有700个左右的职位,仔细读了一下,也并非全是有效的职位,花太多时间和精力在这个上面就不值得了,当然自己感兴趣或者为了研究的话另当别论。不过如果是为了快速的就业,把太多时间和精力花在很多职业生涯的前一、二年用不到的知识上就太可惜了。 同时,并非某一个行业的职位数目少,就不能当作一个方向进行选择,比如.NET,我搜索到的职位数是1.6万左右,比java少,是不是就选java了呢?不一定,因为java职位虽然多,但是可能竞争者可能也多,有些方向虽然职位数不多,但是和你竞争这些职位的人数量也少,不见得就不能选择。不过,如果某一个方向的职位数目过少,你可就要小心了,选择这样的方向风险会非常大,如J2ME。如果你想学习Java可以来这个群,首先是二二零,中间是一四二,最后是九零六,里面有大量的学习资料可以下载。
我个人觉得java/J2EE、.net、嵌入式开发是不错的三个方向。
如果非要在java和.net中选择的话,我个人是推荐java的,原因:
1:Java能够开发linux、unix服务器上的程序

2:JavaEE和.NET在企业应用方面的关注点是差不多的,但是学习了java如果将来想转到.net上会比较简单,几天的学习然后上手开发应该是问题不大的,但是反之就不行了。
当然如果有了些经验之后,你就会发现语言或者平台不再是技术上的阻碍,一些原理性的东西学到手,然后再加上项目经验,使用什么平台,反而不是最重要的。不过如果非要用一种平台进入企业开发的领域,至少在目前,2007年9月,我推荐java。
完全可以不同意我的观点,但是无庸置疑,如果是为了就业,多到招聘网站阅读阅读职位的信息,对你将来的方向和学习是大有益处的。 选择是最痛苦的,看看《天生购物狂》中的刘青云就知道了,不过既然无法逃避,就作出自己的选择吧。 每个人都会受到别人的影响,在作出决定之前,要想尽各种办法让自己理性一些吧。这样,你的选择会离正确的方向更近一些。
JAVA自学之路 二: JAVA自学路线图
在群里有不少小伙帮发信给我,和我探讨java的自学过程应该是什么样的,毕竟有很多人因为各种各样的原因不能参加培训。我试着给出自己的见解,抛砖引玉吧。这个路线图是给那些为了就业的人准备的,如果只是兴趣,不一定照这个走。
首先要学JavaSE,这是无庸置疑的。与此同时,是的,与此同时,和JavaSE的学习同步,建议大家研究一下数据结构与算法。在这儿之后,你可以选择向J2ME、或者Java GUI、Socket编程等方向努力,但是通过第一篇的办法,你可以很容易就将这方向过滤掉(永远不要忘了我们是为了就业),好吧,暂时和它们诀别,还是向着J2EE的方向前进吧。在JavaSE完成之后,可以试着完成一些小项目,同时关注一下设计模式的内容,不必强求自己能够完全掌握各种细节,往前走吧。
掌握一种编程工具,比如说Eclipse。
数据库,可以选择使用Oracle或者MySQL开始。JDBC,用Java连接数据库。可以选择在这个地方切入Hibernate,也可以选择在Struts之后。
HTML CSS JavaScript,这些东西是做web项目必需的内容。
Servlet \JSP,服务器端必需。
XML 、AJAX,新的流行趋势不能不了解。
作一些小项目吧。比如BBS、留言系统、学籍管理、商城等等,随便找一些业务逻辑比较简单的来做一做:
Struts,MVC的典型应用,Hibernate,OR Mapping的典范之作。Spring IOC + AOP,面向对象 + 面向切面,完善的旅程。把以前自己的小项目加入Struts、Spring、Hibernate的元素吧。去研究各种商业项目的业务逻辑吧,才能在你的简历中加入浓重的一笔。EJB3.0,java在走了很多弯路后的回归之作,值得研究。SOA,业界铁定的未来趋势,要紧紧跟随。
JAVA自学之路 三: 要动手
无论如何,请坚持不懈的动手实验!
学习Java要动手,仅仅是看和听是不能够学好编程的。总有同学来信问我们这样的问题,说:"老师我看了视频了,可是怎么一动手就没有任何思路呢?" 对此,我一般都会说不要着急,如果你只是看了视频就想行云流水的话,那老师这些年的锻炼真是白费了,这么多年的苦练才能略有些行云流水的感觉,你一朝一夕就想自己能够达到,不是太奢侈了吗?
作为编程的过来人想一下,当年自己学编程的时候是什么时候有思路的呢?至少也是照猫画虎画了一段时间之后吧,我本人是在某一个领域画虎画了上万行代码的时候才慢慢有自己思路的。就像写作文,要有自己思路总是一般来说要经过几个阶段,首先学习词汇,然后学习造句,然后大量阅读别人的文章,自己模仿着写一些,逐渐的经验积累,才能形成自己的思路。学编程,恐怕也得慢慢的来吧,只是看一看、听一听视频,是不足以学好编程的。
所以,动手吧,跟着做,一行一行的跟着敲,一个项目敲完了,比如坦克,再试着加一些自己的功能,按照自己的思路敲一些代码,收获远比干听大的多。
如果遇到,暂时对于一些思路不能理解的同学,我一般都会劝告说,动手写,先写代码,量变会引起质变的。而这种质变的确发生过不少次。
提醒一句,要理解代码思路之后再跟着敲 ,背着敲,千万不要左边摆着别人的程序,右边自己一个一个子母的写,这就不再是程序员了,成了打字员了。
纸上得来终觉浅,所以:别问那么多,别想那么多,动手写吧。
JAVA自学之路 四: 要事为先
对待人生的任何事情都要:抓大放小,要事为先!
对于一个以前从来没有接触过java的人,java无疑是庞大的,似乎每个领域都可以拓展开来都是一片开阔地,每一个领域要想深入接触到每一个细节所耗费的精力都是巨大的。这个时候大家都胸怀壮志,两眼发光的盯着每一个崭新的知识点,遇见了任何一个知识点都恨不得抠的清清楚楚,明明白白。
难道这有什么不对吗?
我的意见是,这样并没什么大毛病,但是学习效率太低了!
比如说学习J2SE的时候,学到GUI这一章,有的同学认为,既然学到这儿了,我们去把SWING细细的了解一遍吧;还有的同学,遇到了在Linux下的Shell编程,就恨不得把Shell先学成专家才肯,或者是才敢,继续往下学习;有没有过这样的感觉,一本书的上册没有学好,觉着下册心里也没底儿,甚至非要把上册复习一遍才敢继续学习。如果你也是这样,要去看看心理医生啦,没准儿会有洁癖的毛病。任何事情都要追求完美才敢继续往后进行,是一种性格缺陷,大胆的放弃一些东西吧,有失才有得,把自己有限的、宝贵的精力用在对于就业直接相关的地方,这才是最有效率的学习方式!等你参加工作,有了可持续发展的事业动力和经济基础,有时间有精力闲的没事儿干的时候,再去研究那些其它吧。
温馨提示:内容为网友见解,仅供参考
第1个回答  2020-12-28

自学需要克服一下几点,如果能按照自己的规划的去学习成功的几率会更大。

1, 惰性:很大一部分人学习都是一时想到了才去学习的,但是能坚持下来应该没有几个,一开始可能兴趣很高,前几天还在坚持学习,但是后面的时间就慢慢的坚持不下去了,最后干脆就扔掉了。

2, 急于求成:在线看视频可以让你很快的学完整个课程,但是回头想想,学习之后的效果又是如何呢?可能只是看视频,而没有动手去写代码,这样学习的成果几乎是0.

3, 没有时间或者压力大:没有时间可能你还在上班或者你在干别的事情给自己找的一个借口,时间不是没有而是你有没有利用起来,现在是互联网时间,想要学习真的很容易的,可以利用自己碎片化的时间去学习,比如坐公交或者坐地铁,这样你有一大把的时间去学习,就看你能不能利用起来。压力大可能是因为你目前收入已经不满足你的消费了,所以觉得压力大,想找个薪资高的来弥补,但是想法是好的,你得去做,一步一步的去做。

最后推荐大家,多多动手,多敲代码。

第2个回答  2020-11-14

自学需要克服以下几点,如果能按照自己的规划的去学习成功的几率会更大。

    惰性:很大一部分人学习都是一时想到了才去学习的,但是能坚持下来应该没有几个,一开始可能兴趣很高,前几天还在坚持学习,但是后面的时间就慢慢的坚持不下去了,最后干脆就扔掉了。

    急于求成:在线看视频可以让你很快的学完整个课程,但是回头想想,学习之后的效果又是如何呢?可能只是看视频,而没有动手去写代码,这样学习的成果几乎是0.

    没有时间或者压力大:没有时间可能你还在上班或者你在干别的事情给自己找的一个借口,时间不是没有而是你有没有利用起来,现在是互联网时间,想要学习真的很容易的,可以利用自己碎片化的时间去学习,比如坐公交或者坐地铁,这样你有一大把的时间去学习,就看你能不能利用起来。压力大可能是因为你目前收入已经不满足你的消费了,所以觉得压力大,想找个薪资高的来弥补,但是想法是好的,你得去做,一步一步的去做。

最后推荐大家,多多动手,多敲代码。

第3个回答  2020-11-14
自学需要克服一下几点,如果能按照自己的规划的去学习成功的几率会更大。

1, 惰性:很大一部分人学习都是一时想到了才去学习的,但是能坚持下来应该没有几个,一开始可能兴趣很高,前几天还在坚持学习,但是后面的时间就慢慢的坚持不下去了,最后干脆就扔掉了。

2, 急于求成:在线看视频可以让你很快的学完整个课程,但是回头想想,学习之后的效果又是如何呢?可能只是看视频,而没有动手去写代码,这样学习的成果几乎是0.

3, 没有时间或者压力大:没有时间可能你还在上班或者你在干别的事情给自己找的一个借口,时间不是没有而是你有没有利用起来,现在是互联网时间,想要学习真的很容易的,可以利用自己碎片化的时间去学习,比如坐公交或者坐地铁,这样你有一大把的时间去学习,就看你能不能利用起来。压力大可能是因为你目前收入已经不满足你的消费了,所以觉得压力大,想找个薪资高的来弥补,但是想法是好的,你得去做,一步一步地去做。
最后推荐大家,多多动手,多敲代码。多看视频,多多动脑,推荐b站高淇讲的视频,可以自由去观看一下。
第4个回答  2018-12-18
我是学java的,给你推荐几本,《Java核心编程》,《Java编程思想》《Java高手真经》,至于学习视频呢,我认为可以到siki学院看下。老师讲的都很用心。
相似回答