作为常年占据编程语言排行榜首位的Java也吸引了很多人前去学习,对于零基础的人来说,Java学习中要注意哪些呢?下面,千锋就给大家介绍一下。初学者在学习Java时,要注意以下事项:
1、明确学习方向
对于零基础学习Java的人来说,一定要有一个明确的学习方向,不能急于求成。很多人为了能快速入门Java,会直接入手项目,这不太实际,有的人不学基础,一看代码觉得Java很难就放弃了。所以我们在学习的时候一定要牢固基础,按阶段的学习,坚持下来才会有提高。
2、制定学习任务
初学者在学习Java时,往往会因为没有计划像无头的苍蝇一样乱撞,学习的内容不系统,最终导致学习效果低下,拖延进度。所以我们在学习的时候要制定好学习计划,按照计划走,从基础到进阶,一步一个脚印,只有这样,你才能学会怎么样解决问题,并加深自己对Java的理解。
3、注重理论实践
学习Java最忌讳的就是纸上谈兵,没有实际项目操作经验,这也是为什么很多人在学习完后迟迟找不到工作的原因。我们学习Java一定要注重理论和实践相结合,在学习中尽可能的积累实战经验,这样才能在学完后与企业需求相接轨,达到用人单位要求。学习Java的过程虽然辛苦,但坚持下来终会带来回报。
在美国、加拿大、澳大利亚、新加坡等发达国家和中等发达国家,Java软件工程师年薪均在4—15万美金,而在国内,Java软件工程师也有极好的工作机会和很高的薪水。一般情况下的Java软件工程师是分四个等级,从软件技术员到助理软件工程师,再到软件工程师,最后成为高级软件工程师。
根据IDC的统计数字,在所有软件开发类人才的需求中,对Java工程师的需求达到全部需求量的60%—70%。同时,Java软件工程师的工资待遇相对较高。
以下都是个人见解
-------------------------------------------------------------------------------
迷茫:首先按照大家都说的要先精一门!至少得很熟悉他的各种机制和特性,各种领域范围比如说题主是做web后端的,用的是java语言,那你必须要熟练的掌握servlet的原理,掌握一种应用服务器的内部机制(tomcat/jetty/jboss等等)。网络编程也要深入,JVM,JMM这些也必须要知道。。。等等太多了
疑惑:这个时候你会觉得语言真不是什么重要的事儿,基础稍微差一点的同学可能就有点瓶颈的感觉了,所以又要去把计算机网络,OS,数据结构,编译原理,算法的书翻出来看。嗯,这是非常正确的,再过了一遍书之后,你觉得你又可以前进了。对语言的了解又深入了一步
不满足:这个时候你逛知乎的时候发现大牛们“卧槽,貌似他们什么语言都会”,这个时候就应该多去学习其他语言(估计在一周内能掌握一门语言的基础),JVM层面scala/groovy/clojure.脚本语言python/perl/php(毕竟php是世界上最好的语言),系统级语言(c/c艹/golang) ,前端的js(不对,应该是全端)。
再次疑惑:你会发现,其实语言都差不多!掌握起来挺快,每种语言都有自己应有的应用场景,然后你又要滚回去把计算机网络,OS,数据结构,编译原理,算法的书翻出来看
怀疑人生:这个时候你会发现从我目前的情况来看,在同类型的语言中(既然你已经选择了Java),是一定要深了学的。而同时,相对Java来说,会用(仅仅是会用)一门脚本语言(python,ruby等)会增加你的工作效率。
在这个时候还有时间去接触一下C#,既然你已经在Java上入门了(我猜的),推荐你看一下C# in depth。这本书讲了一些C#在版本更迭中与Java不同的诸多特性,前几章就够,花不了太多时间的,后面讲关于CLR和其他深层的不必了解。 横向对比两者之后再进行选择,我个人是面对提供诸多语法糖和特性的C#面前还是选择了Java,因为大量的开源内容和工具提供了不错的后备支持,同时也意味着要学习很多类库框架,这东西学不完,一定要抓典型学重点。
同时Java资质这么深,自然是值得学的,而且在云计算等方面至今表现非常好。至于倾尽全力……度还是要自己把握。因为技术归技术,基础知识还是要搞的(也就是DS,OS等等一大坨),请在时间上合理安排。私以为技术问题在碰到天花板时再搞也不迟。
还有就是脚本语言的事,在处理一些小问题的时候(给自己写点小工具)用Java这样的语言搞出事情来太过繁琐,而脚本语言就很容易处理,所以能会用一门脚本语言是锦上添花的事。
当学的够深的时候,扩展广度是非常容易的,加油,共勉。