java如何快速学习

  • 发布时间:2017-11-09
  • 作者:优才小邦主

 

·         确认学习目标

首先,你需要确认你要学什么,切记不要三心二意。学习最好一个时间段专一的去研究一个知识点,不要今天学 python 明天又想学 java 了。做什么事都有有一个目标,不然容易成为无头苍蝇。目标往大了说,可以是成为某一个领域的大牛,往小了说可以是今天的一个学习计划。

 

hr 面的时候,一个常见的问题是:你的职业规划是什么。一个优秀的人,必然会有一个属于自己的职业规划,知道自己在什么时期要做什么,知道自己每个时期要完成什么样的目标。学习也一样,当你有了一个清晰的目标的时候,你才不会迷茫,才不会不知道做什么好。

 

·         制定学习计划

上面也提到了这点,计划可能赶不上变化,也许今天正好有别的事情导致今天的计划没有完成,但是至少大方向是有的,你不会不知所措,不知道最近应该做什么,这才是计划的根本价值。所以,不要担心计划完不成,这是给你自己学,一天的计划完不成又能怎样呢?

 

·         自己找资料开始学习

请记住,不要当一个彻头彻尾的伸手党。因为轻易得到的东西你是不会珍惜的。并且,你不要祈祷你这一辈子所有学习需要的资料都有人会提供给你,自己找资料本身就是自学能力的一部分。当然,我并不是说不让大家去群里问,毕竟能问到也是一种本事,但是你一定要有自己的资料来源,无论是博客还是书或者是官方资料。

 

·         脑图与流程图

学习从来都不是只看看书就能学会的,自己构建相关知识脑图和相关步骤的流程图是非常有必要并且非常有效果的。比如你要学习 java,你可以先从网上找一找别人画的脑图,对 java 有一个大致的了解,每学一个小的知识点,就自己绘制一个该知识点的脑图,学完之后,自己再画一个整个 java 体系的脑图,这样你会对 java 非常的熟悉。比如你学 GC,光看书或者博客是很难记住那些流程的,这个时候,你自己画一个流程图,我保证你对这个过程会很清晰。记住:就算是有现成的图,你也应该自己画一个,自己画和看别人的是完全不同的两个层次。

 

·         编码

上面的那些,都是掌握理论知识的步骤,是骡子是马还得拉出来溜溜。编码才是重中之重,就算你能把一个知识点吹得天花乱坠,但是一句代码不会写依然没有什么用。

 

·         笔记

好记性不如烂笔头,学完的知识,然后记录下来,自己总结一遍,收获有多大你们试试就知道了。

 

·         回顾

如果你学的东西,很久都没用,突然有一天你又要捡起它,你会发现,你之前做的努力,太特么值了,你有资料!有脑图!有流程图!还有笔记!分分钟就记起来了。

 

·         自己写一个有实际应用的 demo

如果有必要,可以写一个有趣的应用,不是简单的范例。

 

这个过程,其实是很耗时的,学生建议按照这个流程来,因为学生的时间大把大把的,时间很少的就根据自身情况取舍吧。脑图和流程图我觉得收益很高。

上面说到,有的时候看完一本书再从头看,感觉像是在看一本新书。所以我后面看书的时候,也会做相应的笔记,看的时候会在书上勾勾画画,给一些重要的地方打上标记,看完之后,合上书,用记事本把自己刚刚学的的东西写一下(大纲就行),然后再和书上比对一下做一些修改。当我看完一本书以后,对应的,我还会有一个笔记,以后我甚至完全可以看自己的笔记而不需要再看书了。看 + 回忆 + 记录,可以让你充分的掌握一本书的核心。

 

步骤大体上是这样,但是也千万别死板的都按照这个过程来,毕竟还是很耗时的。下面分享一些获取资料的途径。

 

4.2 获取资料的途径和一些工具

 

·         找资料的途径

百度/google:先看看他都能干嘛 

官网:官网的文档一般足够了 

相关书籍:京东和当当经常有活动的

社区:社区也会有人做教程的,还会有一些个人项目可以参考 

github:可以在 github 看看某个知识点的 awesome

各大博客以及知名博主的个人博客:看看一些高质量博客也不错 

微信公众号:试着找一下相关的微信,当然,微信上的文章很多都来自于博客,但是微信的好处就是,你不用自己找,别人已经帮你找好了,缺点就是,量太少

知乎专栏:和博客差不多

一些视频或者 wiki 教程:现在有很多教学视频的网站,有收费的也有免费的。常见的比如慕课网,菜鸟教程,网易云课堂,易百教程等。一些培训机构的视频,比如CSDN的也很不错~

 

一些工具

 

·         teambition | 一个团队管理软件,当然,个人用也是蛮好的,有各个平台的客户端。我用它来安排自己的计划。

·         百度脑图 | 在线脑图,免费无限容量。

·         xmind

·         processon | 也是在线的,可以画流程图和脑图。免费的容量有限。

·         Visio | 绘制各种图。

·         番茄土豆 | 番茄工作法的管理工具。

·         coding | 代码管理网站,类似于 github,是国内产品,速度会相对快一点。

·         我觉得 github 可以当做一个个人品牌来经营,所以最好只放一些很好的项目,一些无关紧要的代码放在 coding 就好了,开源中国的码云也行。

 

记笔记的一些工具

 

·         gitbook | 可以直接生成电子书的一个开源工具,不知道的可以了解一下,我现在在用。

·         简书 | 因为简书可以创建文集,就和文件夹似的,用来做笔记也不错。

·         有道云笔记 | 也挺好的(我喜欢用 markdown。有道云支持)

·         印象笔记 

·         各大博客 

·         自己搭博客 

·         OneNote 

·         比较推荐用 markdown 来做笔记,markdown 常用的语法也就五六个,很好记,也很好用。

 

影响学习的几个因素

 

5.1 自己的心态

 

心态其实是很关键的。我们的周围总会发生一些事情,有的时候这些事情会影响到自己的情绪和心情。这个时候如果你自己调节能力比较差的话,就可能会什么都不想做,不想工作,不想学习。然后颓废好几天。

 

我想说的是,一个优秀的人一定得是一个乐观的人,不执着于得失,不轻易被影响,积极的去面对生活中所发生的一切。

 

5.2 外物的影响

 

我主要说的是手机。现在手机已经成为人生活中不可或缺的东西了,它带给我们方便,但是同时,它也占据了我们大量的时间。我不知道大家平时会不会时不时的打开手机,大部分情况下它和之前毫无变化,但是你还是忍不住的打开它瞅几眼;或者有几个群在不停的闲聊,然后你也忍不住的参与进去,不知不觉时间就溜走了。

 

不要成为被手机支配的人,所以,当你工作或者学习的时候,把手机静音,放在一边,不去看它,这样你会节省出很多的时间。

 

除了手机,另一个外物的影响周围的环境。如果你能在一个嘈杂的环境中学习,那就很棒了,如果不能,记得给自己找一个舒适的学习环境。

 

 

基础都包括什么呢:

·         面向对象的思想

·         java 常用类

·         集合框架

·         io 

·         nio 

·         多线程并发 

·         设计模式 

·         算法 

·         jvm 

·         计算机网络 

·         spring 

·         orm 框架 

 

一些书籍的推荐 

 

初级: 

java 从入门到精通》没看过,但是买的人很多,有视频。

《疯狂 java 讲义》没看过,买的人也不少。

head first javahead first 系列都蛮好的,看起来不乏味。

 

中级: 

java 编程思想》java 程序员必读书籍,厚厚的,让你有种看不完的感觉,但是认真学了收获会很大 

java 核心技术卷 1 2》推荐买第十版,最新的。也是讲基础的,虽然很啰嗦,但是正是因为厚,写得多,所以你才能理解的更透彻。

head first 设计模式》设计模式经典之一,有趣的案例驱动,看起来很有意思。

《设计模式之禅》国内大牛力作,通俗易懂,某些设计模式的实现和《headfirst 设计模式》有区别,可以两本一起看。

《大话设计模式》没看过,也挺有名的,不做评价。

java 并发编程实战》多线程好书,不光教你怎么用,还告诉你为什么要这么用。

 

高级: 

effevtive java》必看书籍。讲了 70+如何写好 java 代码的例子。看了这些你会觉得以前写的代码都是问题。

《重构 改善代码既有的设计》必看书籍。重构你之前的代码能让你有一个很高的进步。

《深入理解 java 虚拟机》必看,不解释。

java8 实战》java9 都要出来了,你 java8 还不会说不过去的。。

java 性能权威指南》学完虚拟机再看它,深奥的一比。

 

你要知道,bat 等大厂每年会有两次招聘,一次春招,在每年 3-5 月,一次秋招 8-10 月。春招是招实习生的,秋招是招正式员工。所以,如果你想进这些公司,就要提前做好准备。至少,上面的那些基础你是必须得都掌握的。

 

大三这一年,要让你的深度足够,有能力的可以继续延伸自己的广度。这个阶段,最忌讳的是朝三暮四。早上看 python,下午发现 go 很有趣,看了一下午 go,晚上听说 R 很厉害,又去研究 R 了。千万不要这样!不要成为各个领域的杂牌军,你现在要做的,是在一个方向有一些建树。

 

找工作,待遇,环境挺重要的。但是我觉得,这个公司的技术栈,行业背景也是很重要的。我实习的三家公司是三个不同的行业,所以我知道,不同的行业差距还是很大的。有的公司招聘的时候会要求你在这个行业有过经验啥的。所以,行业背景还是有必要注意一下的。同时,为了自己为了的前途,一定要问清楚公司的技术栈!

 

当然:作为一个有抱负的人,毕业设计一定要向着优秀发展!并且依旧要不断提高自己的水平。这个时候,学什么可能得根据公司的需求来了,但是,永远不要停止学习!