不知不觉中已经从5月到了11月底,学习了近6个月的时间,也从对Java一窍不通,到现在可以说已经学到了些皮毛。在这接近5个月的学习生活中也有了一些自己的学习心得,在这里分享给大家,算是抛砖引玉,给大家提供一点思路参考以总结出适合自己的方法
一、关于代码量
代码量是很重要的,也是衡量学习水平的一个标准。想要学会必须保持一定的代码量。敲代码高并不是关键,关键在于见识更多的错误,见识到了更多的错误才能更好的改进。只有见到和解决足够的问题,才能在敲代码的时候注意到这些问题,防止给自己挖坑,这样效率才会提高。
但是代码量以目前阶段来说并不是越多越好,敲代码的时候一定要分清主次,知道什么应该多敲什么可以偷懒,如果自己不清楚,那么第一时间问老师,老师肯定会告诉你什么重要,捡着重要的照着敲一遍,按照自己理解敲一遍然后对照样本代码改正一遍,最起码保证两边。对于不重要的代码照着敲一遍能看懂就可以,对于已经掌握的并且大量重复的代码没有必要再敲,能copy就copy,反复敲大量重复并且掌握的代码只会浪费时间。保证代码的质量才是关键!
二、关于思考和解决问题
继承代码量的问题继续来谈思考如何解决问题
首先敲代码的目的在于理解,在于思考。凡是做事一定要多想,带着脑子去敲代码,敲得同时一定要明白为什么要这么敲,如果是自己会怎么敲可能会发生什么问题,是否有更好的方法来替代样本中的代码。在有时间的情况下可以测试按照自己理解替换的代码会发生什么问题,是否可行。提高理解的和思考能力是学习最重要的,带着问题去思考,用脑子去敲代码,比干巴巴的敲效率高一大截,节省出的时间可以做更多的事情。
其次谈谈解决问题,其实这是个老生常谈的问题,不管是讲课老师也好,助教也罢都无数次谈过这个问题。出现BUG了怎么办,具体的方法因为解决方案大不相同所以这里不做赘述。但是当一个问题出现的时候最应该做的是什么,是如何自己解决。自己bug也好,通过打印控制台看结果也罢甚至google,想办法自己解决,如果超过一定时间没有解决,那么找学习好的人去讨论,如果讨论不出结果或者后面还有大量的代码没有理解和学习,那么立刻问老师。发现问题自己一个人钻牛角尖或者立刻问老师是最错误的方法,没有之一。问同学有一个最基础的条件,就是这个问题是否值得问,现在项目阶段已经进行了很久了,很多人甚至发生了NPE还不知道怎么解决,你自己想想这个问题是你这个阶段应该问的问题么。老师总是说你在回答别人问题的时候你自己也在成长。
然后是总结问题,发生了什么问题如果自己记不住那么就用笔记软件记下来,解决思路也一并写下来,什么方法试过成功了,什么方法试过没有成功都要记下来,有空就看看直到记住问题。
三、关于作息
每个人精力不同,我见过每天加上午休只睡5个小时还能保持一天高强度的工作效率的人,但是不是每个人都能这样,保持充分的休息时必须的,每天晚上的睡眠时间必须保证,如果第二天有课,那么个人不建议超过11点半睡觉。连续的晚睡在现在这种缺乏身体锻炼的情况下只会让你的精神越来越差,借助咖啡等提神饮料只能饮鸩止渴,所以不建议晚睡,毕竟不是每个人都能只睡很少的时间还能够保证效率。
四、关于效率
玩就是玩,学就是学。学的时候就要保证高效率的学习,只有高效率的学习才能节省更多的精力和时间。高效率的学习1小时远比吊儿郎当学习一上午有价值的多, 还有就是关于IDE的使用,如果你使用的是eclipse,多用提示行,能大幅度提高你的效率并且能见到很多新东西。还有就是关于其他IDE的使用,现在项目阶段课程推荐大家使用的就是STS这个IDE,但是所有同学都在说这个软件并不好用而且非常卡并且个eclipse没感觉出来有什么区别,我也是这个情况。那么为什么还要用这个软件?在我进入项目阶段2天后我无法再容忍STS卡顿,果断放弃了这个软件,并用了一晚上的时间学习了Intellij IDEA,这让我不用再跟STS愚蠢的卡顿在浪费时间。在项目阶段中我也看到了有人下载安装了IDEA,但是都在纷纷说这个软件不好用。这个仁者见仁智者见智,我个人是觉得这个软件绝对是远超eclipse和STS(前提是你得机子配置足够好,带的动),说不好用的大多数是IDEA的快捷键跟eclipse几乎完全不同,所以觉得难用就不在使用了。但是在适应快捷键后IDEA的强大远超想象,最起码他对于Spring的支持就能让你目瞪口呆。所以如果你的电脑配置足够的话,个人强烈安利这个IDE,能够极大的提高你敲代码的速度和效率,让你能把更大的精力放到逻辑是哪个。
五、关于英语
最后关于英语这点我觉得还是有必要提一下,有良好的英语基础会让学习编程语言的过程相对简单,但是也仅仅是相对简单。在这接近5个月的学习中凡是涉及到英语这方面的话题我听到的最多的话语就是“我英语一直不行”,“我初高中英语不好”,“我高考的时候英语分数特别低”,“我英语大学四级都没有过”等等言论。这是一个非常可笑的言论,英语不好只是你不想学习的一个低劣的借口。
英语可以说是最容易学的外语之一,而且java大多数词语并不复杂,并且反复出现简明知意,即使一次次的查都能记住这些词语是什么意思,尤其是电脑上大部分人都有有道词典之类的翻译软件,想查清楚一个单词的意思没有那么难。对于不常用的单词可以不知道是什么意思,但是英语不好绝对不是一个人Java学不好的理由。
想要速成英语是不可能的,凡事都是一个积累的过程,无论是网上或者是各种微信公众号都有大量的英语教学的课程等等,内容量不大而且也不是很贵,每天也不用花费很多时间,有一定英语基础的人可以通过听VOA来学习,每天学习英语并不需要花费太多时间,但是却能带来学习java更高的效率。
Winner winner chicken dinner!
|
|