进入毕业季,毕业设计早早的做完,不想那么早进入职场,便趁此大好时光,一边接受企业培训,一遍自学JAVA。在我看来,学习一门语言必备的几个要点在于,看,练,悟。在这个连技术也已经沦为快餐的时代,很多人无可厚非的认为,在短时间内,快速应用一门语言才是他们所追求的,这也造成了当今培训机构的泛滥。我对此不评价,存在既是合理。但是,我这些心得体会,是想对那些真正喜欢技术的朋友,动机纯粹的朋友而言的,那些不喜欢的人,尽管拍砖,嘿嘿。

   学习技术的时候,你是否总会被一些琐事烦恼呢,qq,网游,小说。。。

   我并不喜欢玩游戏,但是总是觉得有时候一些时间莫名其妙的就在电脑前消失了,所以,我直接给自己装了双系统,一个win7,一个linux ubuntu

    java是跨平台的,那又为何不试试在Linux下开发呢?这就是一种,逼迫自己的心态了。为了以后能够顺利的学习java的最新知识,或者是获得其他技术的最新信息,我又开始逼迫自己做第二件事情,那便是阅读英文原书。但学习并不是一蹴而就,我每天读大概20页左右,接触1w多单词,虽然会有重复,虽然也会有用电子词典把一页的很多单词逐一查出的尴尬与麻烦,但是,成果也是相当满意的。

   当我坚持读完100页之后,顿时觉得轻松很多。随手再打开think in java的英文pdf,竟然也能基本没有障碍的阅读下来。这时不由想起我的老师曾经讲过的一句话,当时我跟着他一起在研究arm相关的技术,他告诉我,那些最新的技术,最难的技术,会的人不用看翻译版,不会的人也翻译不出来。结果这就造成了很多经典的技术书籍很难找到合适的人来翻译的苦果。

   所以,我建议大家,真正的逼迫自己一下,装一个Linux不费多少事情,坚持读完一本英文书籍也好还是英文的java api文档也罢,相信我,技术是不会骗人的,英语也是不会骗人的,当你投入多少,你自然会得到多少。

   上面是在学习环境与心态上我的心得。下面要说的是,在学习方法上,我的做法,也许因人而异,但确实是我的真实经历,高手前辈们莫笑才是。我在学习前,自然会要用到书,在这个网络繁华的时代,pdf到处可见,实际上是用不着买什么书的,但我有个习惯,我总喜欢把一些想法,假设,心得随时写在阅读的内容旁边,所以我也就买了几本书。

   关于书籍在我看来,大致上可以分为这几种的:

第一种:技术手册型的,如java核心技术卷一

当你有什么概念不清楚时,一翻便知,简单明了。

第二种:圣典级别的,如think in java。无论是从历史厚度上,还是内涵厚度上,都需要你仔细阅读,尤其在一些地方需要你感悟,思考,读起来比较费时间,但读后会觉得很踏实,对于一些知识或者概念的来龙去脉心中有数。

第三种:操作手册类型的,这种书籍就如做物理实验或者化学实验中的实验流程书一半,手把手的告诉你,每一步要做什么,按照书中的方法去做,自然会得到书中的结果。犹如:疯狂java讲义,java高手真经之类的书籍。

第四类:属于设计原理之类的书籍,这些书籍是你在掌握一定基础之后,却不是很明白何为面向对象等一系列概念的具体含义时,为你解惑用的。

第五类:技术进阶类型。告诉你某些技术在什么情况下运用最为合适等等一些列窍门的书籍。

第六类:数据结构与算法的书籍。虽然java的封装性已经很好了,但不得不说,我觉得java会使人变的懒而依赖。对于项目开发来说,固然是好的,但是作为学习者,应该谨慎小心的研究清楚细节的实现,想通原理,会受益匪浅的。

第七类:规范类的书籍。如java语言规范,代码大全等等,良好的编程风格与设计理念,会使你做事情卓有效率。

 

大致就是以上这么多类型的书籍,在我看来,前三者需要同时看,比对着看,后面的暂时可放置,等学玩了一定阶段再来看。这样子会比较好,不然,看来理论的,不知道动手做什么,看了动手做的,茫然的跟着书籍做完了,也不知道意义是什么。

 

下来便是要有一个对照物,用于理清自己学习的思路和重点,那便是视频。

网络的视频很多,好的也不少。我们要用它,而不信它,这里的信指的是迷信。

就算对于书本上的知识,也不要迷信,一定要动手实验过,才肯定它,当然书上的只是基本上都没有问题,但不能绝对化,不能说绝对是对的。那样子可就不好了。

 

学习java一个半月以来,学习方法也一直在摸索之中,目前已经基本成型,学的也比较扎实,和踏实。也越来越享受学习的过程了。

总结下:

读就是要把理论的,实践的书籍分开比对,相互印证。

练就是要在知晓原理的前提下,把它炼成自己的技能,做到随心而发,如果有一天,你想给人讲一个知识点,你可以很从容边敲边讲的时候,那就证明你练习的基本到位了。

悟就是要多多思考,思考书中说不能如何如何,试试看,找出不能的根本原因。多想想面向对象的思想到底是在说什么,多想想多态到底为什么要用,怎么用,这些都是初学者容易忽视的地方,等你都想明白了,我觉得,这才刚刚入java的门吧。

 

以上内容纯属个人意见,针对的也都是零基础初学java的朋友们,高手前辈们也可以指点一二,那我就更加感激了。人都是逼出来的,我们都是普通人,但我们可以通过努力去做不普通的事情,消极与激进的态度都是要不得的,做技术便做技术,又不是文艺青年,也没有必要整天写出很多消极与激进的东西蛊惑人心,只有一代代良好的传承,才可以真正树立技术人才的价值地位。