如何正确学习JavaScript

你得学JavaScript - 文章 - 伯乐在线
& 你得学JavaScript
注:本文由 敏捷翻译 – 蒋少雄 翻译自
的博文。如需转载,请参照文后申明。
如果三年前你问我应该学什么语言,我会告诉你是Ruby。如果六年前呢,我会说是PHP。
如果你现在想学一门语言的话,你应该学习JavaScript.
为什么这样说呢?
我认为,每一位Web开发人员都应该学习JavaScript。目前推出的许多新技术都支持这个观点。而这之后的唯一原因就是,它太普及了。你可以使用JavaScript为各种人做出令人惊叹的作品。你可以在任何一台机器上立刻开始工作。
不是所有公司都用Ruby,也不是所有公司都用.NET。而我相信,绝大多数时候,这些公司都需要深入理解JavaScript的人。微软、Facebook、苹果还有谷歌他们都用javaScript 做出了非常优秀的产品。
作为一个程序员,学习JavaScript或许是你能做到的,最有挑战性,同时也是最有益处的事情了。这是一种变化繁多的语言,在程序中代码量比你想象的更要庞大。它含有大量的新知识,一些好用的新API,还有它在持续发展。
当人们谈到HTML5的时候,议论的内容大多都是JavaScript。
但是从何开始呢?
学习JavaScript的起点就是处理网页,使用DOM进行操作。很多JS程序员在这上面有有问题,因为当Ajax出现和JS改革之前,JavaScript作为一个DOM处理器一直被低估了。你应该清楚,它强过网站上的显示/隐藏机制。
操作处理DOM是容易并且立即见效的。我找到过最好的DOM处理方面书籍是《》。好消息是它终于有了一个非常必需的更新版。阅读Jeremy Keith的书,对于学习JavaScript的一些基础知识是非常好的入门选择。
这仅仅是开始。如果你渴望了解更多知识,就去看看这个在Stack Overflow上的问题吧。这里有很多很棒的推荐读物,我也读过其中很多。《》这本书可算是JavaScript的圣经,强烈推荐。
(编注:Stack Overflow 上推荐不少书,其中有中文版的是:《》、《》、《》、《》和《》,当前也包括作者推荐的那本。)
我还推荐Angus Croll的,这是用来理解JavaScript核心最好的博客,没有之一。这个博客非常的优秀和透彻,几乎让那些知识主动跳进你小小的脑袋中。也很好,但是Angus讲述的更细致。
框架是个好东西,因为它很有用。当你在学习使用框架时,如果有人嘲笑你,别理他们。你的方向是正确的。我认为jQuery比任何书或参考文档都使更多人领悟到在JavaScript中上下文的重要。厚着脸皮,向核心深入吧。
去安装火狐和Firebug。 我依旧认为firebug是个很好的装备。Webkit也在迎头赶上。可以在firebug主站上通过介绍影片来了解它是如何工作的。就像我朋友兼同事的 Leevi Graham说的:“Firebug…仍与火狐有关。”(资源)。他们刚刚推出了新版本。
Mozilla无愧于他们的声誉,依旧拥有着最好的。这应该作为你的参考。
学习JavaScript吧,它比你所能想到的任何语言更重要。
原文:   编译:敏捷 –
如需转载,但请注明原文/译文出处、译文超链接和译者等信息,否则视为侵权,谢谢合作!
可能感兴趣的话题
说的不错,谢谢博主指点,,
关于伯乐在线博客
在这个信息爆炸的时代,人们已然被大量、快速并且简短的信息所包围。然而,我们相信:过多“快餐”式的阅读只会令人“虚胖”,缺乏实质的内涵。伯乐在线内容团队正试图以我们微薄的力量,把优秀的原创文章和译文分享给读者,为“快餐”添加一些“营养”元素。
新浪微博:
推荐微信号
(加好友请注明来意)
– 好的话题、有启发的回复、值得信赖的圈子
– 分享和发现有价值的内容与观点
– 为IT单身男女服务的征婚传播平台
– 优秀的工具资源导航
– 翻译传播优秀的外文文章
– 国内外的精选文章
– UI,网页,交互和用户体验
– 专注iOS技术分享
– 专注Android技术分享
– JavaScript, HTML5, CSS
– 专注Java技术分享
– 专注Python技术分享
& 2017 伯乐在线01:50:12 UTC
鉴于时不时,有同学私信问我:怎么学前端的问题。这里统一回复一下,如下次再遇到问我此问题同学,就直接把本文链接地址发给你了。
“前端怎么学”应该因人而异,别人的方法未必适合自己。就说说我的学习方法吧:我把大部分时间放在学习js上了。因为这个js的学习曲线,先平后陡。项目实践和练习啥的,我不说了,主要说下工作之外的时间利用问题。我是怎么学的呢,看书,分析源码。个人这几天统计了一下,前端书籍目前看了50多本吧,大部分都是js的。市面上的书基本,差不多都看过。
第一个问题:看书有啥好处?
好处应该是不言而明的,书看多了,基础会逐渐夯实起来。看多了,自己的判断力,自然就上来了。看别人的文章,就能很快判断出,对方每块儿讲得对不对,哪块儿又是自己不清楚的,模棱两可的。当然也为看源码,分析源码提供了基础。
10本书读2遍的好处,应该大于一本书读20遍。10本书的交集,那就是基础知识的核心,而并集那就是所有的知识。好书当然要多读,反复读。但是只读一本是不行的。因为每本书的侧重点都不一样。从不同的侧面,去理解一个知识点,是很有意义的。
所以特别佩服印度人,他跟你讲英文,你一个词语没听懂,他会蹦出n个同一意思的单词,你听懂一个,就ok了。看书也是这样的,某一块讲得不透彻,不用担心,其他书籍可以帮助你来了解。
第二个问题:书籍推荐
个人觉得不错的,没事可以翻翻的。书籍如下:
《javascript设计模式》,张容铭写的,可能不太适合零基础的,是非常不错的进阶书籍。
《javascript面向对象编程指南》,风格轻松易懂,比较适合初学者,原型那块儿讲得透彻,12种继承方式呢。
《js权威指南》、《js高级程序设计》,这两本书经典是经典,但是太厚,适合把其中任意一章都当成一本书来读。洋洋洒洒,很难一口气看完。比较适合当做参考书。
《你不知道的javascript》狙击js核心细节,闭包、原型、this讲得都还清楚。目前《中册》也出了,还在看。
《js设计模式与开发实践》js设计模式也是要学的,此书把js的设计模式讲得非常清晰,一点不晦涩,看起来没多少难度。
《正则指引》,分析源码时,如果正则表达式不懂,没法进行下去的。此书相对来说讲得比较清晰。
《基于MVC的JavaScript Web富应用开发》,看完后,基本能写出自己的mvc框架了。是本好书。
《javascript函数式编程》,js是一门函数式语言,此书是函数式编程一个入门,函数是一等公民那是非常重要的。
《js忍者秘籍》,jq作者写的,没有传说中的那么难读,话说就算你看完并理解所有知识点,也不会达到世界高手级别的。因为你还没有做到随心所欲。
《javascript框架设计》,如果初看此书,会觉得此书有罗列代码之嫌。在我看来,此书讲究的是框架的全局观。以上书籍是我认为是成就高手之路上必须看的,也需要反复看。
css相关的书籍,说实话我看得比较少,总共有六七本吧。有两本必须推荐一下:
《css权威指南》,css基础知识点那是讲得非常清楚的。什么层叠优先级、line-height啥的。不是随便一本书都敢叫“权威指南”的。
《css揭秘》,此书我也是不断的看,此书才不屑于全面讲css3各属性呢。css规范文档能讲的,它只会讲你最不在意的。此书解决的47问题,解决思路和解决方案同等重要,很有启发性。以上各书你都可以不买,至少买本此书吧。
第三个问题:怎么看书?
想必很多同学,都想看书,但是很难看下去。文字部分相对来说还能看看,一遇到代码,头皮就发麻了。此问题一开始时我也遇到的。
说一个学习理论。比如说学英语,有个开水理论。词汇量必须达到6000才行,如果没达到,英文水平不会上去的,这跟烧开水一样,没事烧烧,放着凉凉,从来没烧到100度,那么此水是永远不能喝的。一旦煮沸过,就可以随时喝了。
20本书你看不下去,说明什么呢?任何一本书,你都没看完过。熟悉的,永远只是前三章。别笑,我原先也是这样的。
那么现在的问题是,怎么把一本书看完呢?很简单,敲。《基于MVC的JavaScript Web富应用开发》这本书我看时,就是这样,终于有一天,我下定决心要把此书从头到尾敲一遍。文字加代码都敲,然后就一章一章得看完了。代码敲一遍后,你会发现,没之前看起来的那么难。
如果你属于一看书就犯困那种同学。强烈建议你把《javascript面向对象编程指南》此书从头到尾敲一遍。坚持看完一本书后,信心就上来了。先保证看完一本再说,看完3本后,基本应该能做到几天就能看一本了。万事开头难,加油吧。
第四个问题:看书的层次问题
书看完后,要自己总结,要与其他书籍对比看。有同学同时对比着看《权威指南》和《高设》来的。随便拿出个知识点,你都能闭着眼睛说得头头是道,说明水平够了。
下一块就是源码的学习了。看框架源码之前,想说一件事情:dom的api不懂,没问题,你可以百度。
但是正则一定要先研究研究,不然大多数人去尝试分析源码时,遇到的挫折都在于此。
怎么去阅读源码呢?敲,照着敲。
有哪些代码值得去敲呢?优秀框架或者库的源码都值得你去敲。但是拿jq来敲,来入门,那不行的。原因:太他么长了。八九千行呢!!
个人觉得underscore.js库是不错的第一个选择。原因都是工具方法,敲完以后自己的水平应该略有小成吧。其实有一些api的实现,你要把它当成getElementById一样,深深的印在脑海里。比如extend方法,必须张口就来。敲完underscore库后,可以考虑去看看《javascript函数式编程》这本书了。
jq的源码不好敲。那么zepto的源码比较少1800多行,敲一天应该敲完了。敲几遍后,把所有不懂的地方,都百度清楚,然后就可以写自己的类jq的库了。然后就可以作为一项技能写进自己的简历里。比如“创建过自己的jquery库”。当然敲的过程,还能帮助自己对jq的api认识。
然后是backbone.js,因为此框架是以类jq和underscore为基础的mvc框架。代码也没多少行。敲吧。spine.js与backbone类似。可以在敲其之前,先看看那本《基于MVC的JavaScript Web富应用开发》。希望你的简历可以添加这么一笔,“创建过自己的mvc框架”。
其他的,我也敲过一些。包括jq.validate.js,包括一些插件。如果你愿意的话,bootstrap你可以去敲敲啊。源码挺多的,可以按插件逐个来敲。分析明白了,轮播、分页、下拉框等等的插件那还不是分分钟随手就写一个了。最起码看看人家api接口是怎么设计的也是极好的。话说个人在阅读其css代码中,也学到了不少东西。说到插件,有两个必须提提,一个是表格插件,一个是树。都敲完,简历里可以这么写上,“创建过自己的UI框架”。
当然了,你也可以敲你喜欢的框架代码,重要的是明白其实现原理,最好理解其为啥那么设计,如果对设计模式比较熟悉的话,会经常发现原来是这么回事。
照着敲只是分析源码的入门,用途也是为了学习,最后能用在自己的项目中,那是才是正道。就算没啥用,也是打发时间的好方式,比看电视剧强多了。我闲着无聊时,就背着敲underscore源码。最后说句,如果你简历上能如期写上那几句话后,必须是大神。加油吧。
写本文的最初目的,正如文章开头说的那样,方便自己回复大家的提问。达妹分享的任何一篇分享学习经验的文章,基本都会引起共鸣,这确实是一个值得讨论的话题,达妹才会分享出来给大家,总之,希望每一个人都能有技术上的提升
欢迎观看我的更多文章:关于学习JavaScript的6个实用的建议
编者按:本文由小萝卜在众成翻译平台上翻译。
你可曾想过去学习Java?它是目前世界上最好和应用最广泛的编程语言之一。它也是网络语言。此外,你甚至可以用它创造APP和游戏。而且,随着互联网技术的提高,Java很快将会遍布全球。简而言之,这是最好的学习Java的时机!使用这六个技巧,不仅能学会它,而且能主宰它。为你自己的将来做好准备吧。
No1:大量阅读
我是一个劲头十足的读者。所以,我的第一个关于学习Java的技巧就是关于阅读,这绝不是巧合。书籍和其他的资源(如文章)可以在很大程度上帮助你学习Java。通过实践学习,书籍是我学习新学科最喜欢的方式。在学习Java的情况下,我将会向所有人推荐两本书。第一本是 Nicolas C. Zackas的《Java高级程序设计》。这本书将会带领你从Java基础到最高级的主题。当你看完这本书,并且练习你所学过的知识点时,你将会掌握扎实的Java知识。如果你掌握了这本书里面的所有知识点,我相信它会让你离成为一个Java专家更近一步。不过,这本书还不够。不要误会,这本书是很好而且包含了很多内容。问题就在于由于ECMA6的介绍很多都改变了。
这本书涵盖了之前版本的Java,所以,如果你只看《Java高级程序设计》,你可以学习Java,但是你不能学到最新的Java特性。这就是为什么会有第二本书。这本书是出自同一个作者的《了解ECMA》本书包含了有关Java的前沿信息。阅读这本书,ECMA 6 将不再是你的问题。不过这有一个忠告,不要在阅读Web开发人员专业的Java书籍之前阅读它。
理解ECMA会教你ECMA6的特点。但是你不会学到Java基础。这就是你必须在理解ECMA之前先阅读Web开发人员专业的Java书籍的原因。第二本书是建立在第一本书的基础上的。除了这两本书你还应该阅读关于Java的文章和帖子。让你自己沉浸在Java中。
No2: 亲历亲为(勤动手)
众所周知,只阅读远远不够。此外,这也不是最好的记住新知识的方法。你不信?想一想你昨天所阅读的所有东西。你能记得多少?你还能记得多少事实和数字?你可能记得你所阅读过得文章的题目,你还可能大概记得那些文章谈论的是什么。但是,如果有人给你做一个测试去测试一些明确的事实和数字,你可能会失败。
毋庸置疑的事实就是你只阅读了这些文章一次。当你带着学习的目的去阅读的时候,你不止只看一次。你将会反复的阅读知道你记住为止。不过,我会认为阅读不是最有效的学习方式。无论你想要学Java或者其他任何东西,都有很多更有效的方法让你去完成。这就是通过实践去学习。学习代码的最好的方法就是去编写代码。
我知道这听起来简单也相当合理。但是,通常我们更喜欢阅读而不是去实践。其中有一个原因可能是阅读更容易更舒适。而且,既然我们寻求舒适,那么阅读这些东西看起来是一个更好的选择。并不是!如果你想要学习Java,而且是在短时间内,你必须亲历亲为勤动手,这是宜早不宜迟的。
通过实践来学习的好处
正如我所提到的,你练习你所学的你会学得更快。你会得到即时的反馈,看看有什么作用。这是书本所无法复制的东西,包括电子版的。当你下定决心通过阅读来学习Java的时候,你必须相信书本里的结果。这些结果通常是对的。但是,仍然可能会发生某些代码段可能会产生不同的结果。特别是如果书中的一些语法已经过时了,在这种情况下,一些代码可能就不会运行。
事实就是编写和出版一本书籍需要花费时间。所以当这本书最后出版的时候,编程语言已经包含了不包含在本书中的更新,这不足为奇。因此,你正在学习可能已经过时的定西。如果你专注于练习,这就不太可能发生。如果你在学习Java的时候使用一些在线编辑器(如CodePen),你总是会使用这种语言的最新版本。Java是一个很好的例子。
很长一段时间,并没有关于ECMA 6 的书籍。但是,如果您使用Babel等编译器,则可以使用此语法编写代码。在编程界,这相当普遍。通常书籍在出版的时候就已经过时了或者很快要过时了。留在技术前沿的唯一方法就是实践。通过实践学习Java的另一个理由已经提到了,就是能得到即时的反馈和更好的信息保留。
当阅读Java可能是危险的时候
这种反馈循环和改进的保留是为什么即使是最新的书也不会是最好的选择。此外,阅读实际上可以让你退步。当你读到一些的东西时,很容易让你说服自己你是在取得进步。为什么会这样呢?你正在浏览页面并深入其中。然而,这只是你自己认为的。如果有人给你测试怎么办?你能像你翻页那样轻松的通过吗?
在多数情况下,翻书比掌握书中包含的知识要容易得多。当我决定主要通过阅读书籍而忽视练习来学习Java时,我意识到了这一点。而且我很快意识到,过了一段时间后,我会忘记我之前阅读的所有东西。因为很多东西我只看了一次。所以,这是延长我学习Java旅程的另一个因素。换句话说,我掌握的信息非常糟糕。而且,我也没有得到反馈。
我曾经认为看书中的练习和亲自动手操作效果是一样的,但是大错特错!你可以从早到晚用你的脑子写代码。然而,除非你测试,否则你永远都不会知道你的代码是否有用。甚至连专家和有着多年经验的人都不会依赖他们的想法和猜测。他们测试他们的想法。如果你真的想学习Java我建议你也这样做。
如果你不确定你该花多少时间去阅读和练习该怎么办?我的答案很简单。通常在练习上花费更多时间。如果你必须在阅读一些东西和练习上选择一个,选择后者。记住,阅读某事物会让你说服自己是在进步。不要购买这个错觉。
No3:尝试不同的学习方法
到目前为止,我们讨论了学习可以通过阅读或者实践。这两种方法足够可以帮助你学习Java。不过,你可以使用更多其他方法来提高你的学习能力。有一种理论是这样说的,每个人都有不一样的学习方式。对这个理论的合理性有一些批评和持续的争论。谁知道呢,也许它只是起到安慰的作用。如果你想要,你可以尝试不同的风格,看看哪一种最适合你自己。
对于那些不相信学习风格存在的人呢?我依然想鼓励你们去尝试不同的方式。我理解你们喜欢书籍胜过视频。或者你们喜欢自己尝试,而不是阅读它们。最后一个最适合我,书籍排第二。使用各种学习方式学习Java的原因很简单。你使用的方式越多,你就越沉浸其中。
多元的学习方法只为更深的沉浸在其中
然我们来谈一谈仅仅通过阅读来学习Java。这种方式有一个问题。你会经常接触不到Java。与学科定期接触是学习的关键。而且,接触的越频繁,你会学得越快。所以,如果你想更快的学习Java,办法就是勇往直前。你需要显著的增加这个频率。换句话说,你必须沉浸在其中。
这就是为什么你需要尝试尽可能多的方式。你现在在读一些关于Java的好书吗?这是一个好的开始!现在呢,怎么进一步呢?举个例子,你可以开始阅读关于Java的博客文章。由Eric Elliott领衔的“this blog”和“Java Scene)是开始的好地方。你也可以开始听关于Java的播客。这里我向大家推荐两个:“Java Jabber” 和 “JavaAir”。
如果你更喜欢视频而不是声音该怎么办呢?没问题! JavaAir 在 YouTube 上也有“its own channel”。另一个你可以学习Java和其他关于网站开发技术的频道是 “LearnCode.academy”。下一个专注于Java的频道是“JSConfEU”。如果你在寻找课程,使用搜索并选择你喜欢的。有上百种频道和视屏可以帮助你学习Java。你也可以试试网页,比如“Lynda” 和 “Udacity”。
有些人会忽略会谈和博客,因为他们不认为这些是有用的。我不同意这个观点。这些资源常常使人们从多年的实践中学到很多洞察力和诀窍。此外,这些资源通常比课程和书本更通俗易懂和有趣。所以,你可以使用这些资源来放松,同时还能学到很多。
增加一些交互性
另一种快速学习Java的方法就是加入一些网站的在线课程,例如“Codecademy”,“treehouse”和“Code School”。这些网站最大的进步就是它们的交互性。首先,你看一些介绍的视频。然后,你可以通过做一些练习立即练习你所学的内容。这样,当这些知识还是比较新的时候,你可以练习你看到的所有知识。这种组合的学习方式也可以让你获得知识。
这些网站的缺点是它们通常只能在有限的时间内自由使用。然后,你必须得支付一定数量的金额才可以订阅。Codecademy是一个例外。你可以免费在Codecsdemy上进行培训、学习Java和其他技术。你将无法获得额外的资源和支持。另一个非常好的用于培训你的Java技能的网站是“codewars”。在这里,你可以用通过解决各种难题挑战自己。
尽管这可能不太适合所有的初学者,我认为你至少应该试一试。Codewars提供了很多要求Java基础的挑战。所以,尽管你只是刚刚不如Java的学习轨道,你也已经可以测试你的技能了。我也应该提到这些挑战比仅仅关注一些学者或看视频有趣得多。还有一件事,Codewars还提供可以与之交谈的社区代码爱好者。
No4: 通过看其他人的代码学习Java
另一种常用的获取新技能的方法是通过观察他人来学习。通过看同事学习通常是新员工如何获得他们的第一次体验。你有没有为别人工作过?是的,暑期工也算。那么,你的雇主很可能会带你完成工作。如果不是你的雇主,而是另一个雇员。她可能会向你展示如何去做,或让你看她做。
观察他人的好处
如果你还记得,我曾提过我在证券交易所工作。这大约是在七年前。无论如何,我工作的第一天就是坐在我同事旁边看他怎么工作。然后,当看起来理解了工作流程,我获得了尝试我真的学到什么的机会。这是我跳入创业之路的最后一次。但是,当我与创业公司合作或者建立一些时,我会看到或做同样的事情一再发生。
我相信这是员工入职最好的方式之一。观察别人工作是一个很好的机会。这不仅仅在于你想学Java,它对所有事都适用。理由是你可以看其他人是怎样思考问题的。你也可以在你不理解某些事的时候立即咨询他。当你看书、手册或者观看视频的时候能做到这些吗?我不这样认为。
如果你足够幸运,你可以在网页上找到答案。如果不是,你得在你空闲的时候去寻找知道答案的人。但是,这可能没用,因为那个人不知道是在什么情境下。因此,这个答案可能只在某些情况下适用。因此,你的理解至少会变浅。
信息时代的优势
你很高兴可以用这种方式学习Java。但是,你不和其他任何可以帮助你的人合作。另外,你可能没有正式工作。举个例子,你可能是想要学习Java的自由工作者或者企业家。你能做什么?你还有几个选择。首先,你可以使用社交媒体联系已经很擅长Java的用户。只要确保你有一些可以和他们交换时间的东西,并且值得他们这样做。
即使你想问你的一个朋友,这也适用。不要什么都问,如果你没有有价值的东西来回报这个帮助。也许你的朋友愿意给你一些他的时间,但这不是一件双赢的事。当然,他是你的朋友。而且,他甚至会说他不想要任何回报。不过,你还要记得一件事。如果答应帮助你学习Java,自然会花费他一些时间。所以,至少使用这个来作为努力工作和快速学习的动力。
如果你太内向以至于不敢让别人给你看他的代码来帮助你学习Java该怎么办?而且,如果你还没有任何熟练Java的朋友呢?假设你在互联网上有访问权限,还有另一种选择。至少有两个网站可以看人...代码。 不,这不是笑话。 第一个是“LiveCoding.tv”,第二个是“WatchPeopleCode”。你可以免费在这两个网站上观看。 所以,即使你害羞,你也没有借口。
通过观看来学习的第一个问题
再开始下一个话题之前,我想提两件事。一,记得你的目标。你正在使用这些直播流来学习Java。但是不要看视频成瘾而把学习当成拖延的理由。当你学习一些东西的时候,你必须掌握这个知识并且练习它。光获取知识而不运用就是在浪费时间。此外,你更容易忘记你不运用的东西。为了避免这种情况,你必须练习(看第五条提示)。
通过观看来学习的第二个问题
第二件事是,单纯的看,本身并不会完成这件事。想一想美国人在看电视上花费的平均时间。如果单纯的看就足够了的话,这个世界将全是专家和高绩效者。不幸的是,这是不正确的。这个谜题的缺失部分是反馈。当你看别人在编写Java的时候,你需要理解她的思路。这个问题和对这个问题的深刻理解将专家和其他人区分开来。
问题就在于深入理解光靠获取知识往往不够。否则,任何人都可以通过阅读书籍成为专家。把这个看成是“什么”。缺少的是“为什么”。你需要明白为什么她用这种方式来实现而不是其他方法。当你坐在别人旁边的时候,你可以询问任何事。我认为这是学习Java和任何事情的方法——提出问题。如果你有什么事不懂,你可以问。
而且,当你得到答案时,你可以填补知识的空白。唯一的问题是没有人可以回答你的问题。这就是为什么YouTube上的视频会让你到目前为止。如果你决定使用YouTube学习Java,你可以学到很多东西,你可以达到更高的知识水平。然而,我不认为你能成为Java的专家,因为你缺乏“为什么”。不过,这个问题还是有潜在的解决办法的。
我提到的第一个流媒体网站LiveCoding.tv是允许用户相互聊天。所以,如果你有问题,可以问另一个人。另一个解决方案是使用多个资源。当你发现你不明白的东西时,请在“StackOverflow”这样的论坛上向人们询问。与问你旁边的人不一样。但是,它也能达到目的。只要确保填补所有的知识空白就好。为将来学习的知识打下基础。任何差距都是潜在风险。
No5:经常并且刻意去联系
是的,除非实践否则你不会深入理解所有事。而且,只动手做还不够。当然,你可以花一整天玩“console.log”和“functions”。然而,在你明白了这些概念之后,你必须前进。如果你只是练习你已经知道的,你将永远不能完全学会Java。如果你想学Java,你必须不断地推动自己。对于其他任何学科和事情都是一样的。
学习就是离开你的舒适区。想一想你的童年。你是怎样去学习骑自行车的?你从加辅助的轮子开始,然后练习一段时间。然后,当你差不多能掌握平衡的时候,就把这些轮子移除掉。这很重要。它把你赶出了你的舒适区。这是刺激你的大脑适应新情况的学习。否则,你就永远学不会自己骑自行车。
你需要挑战你的大脑来激励学习。这就是为什么要记住紧张或恐怖的情况。这些情况是危及生命的挑战。而且,他们肯定会把你推到你的舒适区之外。当您想要学习Java或其他任何东西时,需要离开您的舒适区域。记住,你必须挑战自己。尝试略高于当前级别的东西。当你可以在没有任何帮助的情况下工作时,那就继续前进。
只有练习你所知道的会让你一无所获。不要试图欺骗自己,因为你重复将有助于你保留知识。定期复习很重要。然而,这样做只会浪费你的时间。当然,把你的一些时间用于复习。然后,关注进展。关于这个主题的伟大著作,是安德斯·爱立信(Anders Ericsson)的巅峰之作。
No6:学习代码
我们谈论了最好的学习代码的方式就是去写代码。我们也谈论了实践的重要性,尤其是针对性练习的重要性。现在到了谈论最后一种可以帮助你学习Java的技巧的时间了。等一等……学习其他程序员和开发者的代码。很多遍布各地的开发者在使用各种Java库。但是,他们只了解一点点甚至根本不了解这些库。jQuery就是一个很好的例子。
jQuery如果不是世界上使用最广泛的Java库,那也是其中之一。有趣的是,只有很少一部分使用它的人读过它的源码。我必须承认我也从来没有看过完整的jQuery源代码。所以,我也有一些事情要做。无论如何,怎样去看源码能帮助你学习Java呢?不过,一开始就去做的最好的事。你可能会很难理解它。还会因此而使你困惑。
一个更好的使用这个技巧的时间是你通过了初级迈向中级的时候。这是你需要理解他人写的源码的时候。你必须至少理解他们的一些部分,尽管这可能依然是一个挑战,这就像在阅读一门外语。你知道词汇。现在你只需呀练习然后深入它就行。
学习代码的好处
阅读其他程序员或者开发者的代码的要点是什么呢?你将会看到他人是怎样写代码的。你将有机会接触不同的编码练习。学习代码可能不能直接帮助你学习Java。但是,他可以帮助你优化你的技能并帮你找到你的编码风格。你将会看到其他程序员和开发者是如何用代码解决问题的。当两个人用代码去解决同一个问题的时候,结果是不一样的。
不一样的结果不仅是因为不同的编码风格。也因为每个人思路不一样。不同的观点是另一个因素。你可以从所有的里面学习。我不建议你采用其他人的编码风格或习惯。接触大量不同的风格然后选择你自己的。并且,如果你喜欢什么,就用它。如果不喜欢,就不用。习惯也一样。没有人会为此惩罚你,除非你在一个有明确规定的团队。
关于他人写的代码的一个注释。专注于质量而不是数量。你可能不会阅读一本不好的数去学Java。所以在学习源代码的时候不要这样做。只选择专业人士编写的代码。而且,要记住源码一般不止一个人完成的。例如,在GitHub上的jQuery仓库拥有超过200个参与者。记住这一点,从较小的项目开始比大型项目要好。
总结:关于Java的学习方法
以上就是我的帮助你学习Java的六个技巧。你可能会注意到,我并没有提到去学校或上大学。这有两个理由。首先,我不是学校系统的粉丝,因为我认为这是过时和低效的。第二个原因紧随其后。你可以通过阅读书籍、文章和花时间练习来更快地学习Java。我也应该提到“校园生活”也会更便宜,你不得不买更多的书籍来匹配学费。
决定自己学习Java有一个缺陷。你需要规划,你必须花时间阅读和练习。 没有人会为你这样做。幸运的是,你可以制定计划。因此,你可以尽量减少这种缺陷。现在,是否使用这些提示并学习Java取决于你自己。然后,你将会更近一步的掌握Java。
非常感谢您的阅读。
掌握设计,开发和业务的技能。 学习成为技术和设计企业家所需的技能!订阅我的博客。
最初发表于《_Alex Devero 的博客》(/6-quick-proven-tips-learn-java/)
——————————————————
责任编辑:
声明:本文由入驻搜狐号的作者撰写,除搜狐官方账号外,观点仅代表作者本人,不代表搜狐立场。
今日搜狐热点

我要回帖

 

随机推荐