专栏首页hbbliyong更快学习 JavaScript 的 6 个思维技巧

更快学习 JavaScript 的 6 个思维技巧

我们在学习JavaScript,或其他任何编码技能的时候,往往是因为这些拦路虎而裹足不前:

  • 有些概念可能会造成混淆,尤其当你是从其他语言转过来的时候。
  • 找不到时间(有时是动力)学习。
  • 很容易忘记已经理解了的东西。
  • 工具多又在不断变化,所以不知道从哪里开始。

幸运的是,这些拦路虎是可以被识别,并消灭的。在这篇文章中,我将介绍六个思维技巧来帮助你更快地学习JavaScript,并成为一个更快乐、更富有成效的程序员

1.不要让未来的决策阻止你现在前进的方向

很多人学习JavaScript,问的第一个问题往往是“我应该使用哪个框架?”。但是,如果你还没有掌握最最基础的JavaScript,那这显然是一个错误的问题。你将你所有的时间用来研究不同的框架,于是,你开始停滞不前。

帮助摆脱这种陷阱的方法之一是画一个你需要学习的路线图。例如,要想成为一个前端开发者,你的路线图可能是这样的:

进一步分解的话,你可以做一个只有HTML和CSS的功能性web页面。然后像这样一步步列出每个步骤,那么对于现在应该专注于做什么,就一目了然了。你也不会浪费时间去担心应该以后操心的事情。

如果你觉得这种路线图很有用,那么可以看看我以前写的《learning road map for becoming a front-end developer》,里面介绍得很详细。(:对于学习JavaScript的路线,你也可以参考学习Javascript的8张思维导图这篇文章

2.不要让自信诱骗你忘事

快速了解一个概念,也许是学习JavaScript的道路上最影响你进步的事情之一。下面请允许我解释一下。

当你读到某些东西,你觉得的确如此的,那么很可能就会直接跳到下一个内容。然后你觉得接下来这个内容也非常浅显易懂,于是继续往下看。但很快,你会发现你已经忘记了前面自认为已经掌握的内容,所以只能回过头去温习。你快速地浏览了一遍,感觉又明白了,然后继续前进。但是你又发现自己忘记了别的东西。你一直处在这个循环中,直到最终迷失了自己。你不由地气馁,想着那先休息一下吧,然而当你休息完了再回来的时候,你发现你已经忘记了所有的内容。

解决这个问题,也很简单,只需要两步:

  • 限制一次学习的量。
  • 实践——实际编写代码。

当你去学习一个新概念的时候,一定要试用它,摆弄它,熟悉它,甚至将它和其他概念结合起来。而且实际输出到示例代码中非常重要,因为这能帮助你消化吸收它。此外,限制一次学习的量,有助于记住资料,道理也很简单,东西越少越好记。

虽然这种学习进程会让你感觉所需的时间更多,但实际上恰恰相反,因为你不再需要走那么多的回头路。我也是经过了很多次惨不忍睹的教训才明白了这个技巧。

3.用正确的心态去做练习

很多人认为反复的练习特别无聊,所以他们通常会选择跳过或尝试走捷径。如果你快进JavaScript练习,那么最终反而需要更多的学习时间。试着让练习变得令人感兴趣,这样是不是就不会那么抗拒呢?

试着转变心态:

如果让你学习一个新的JavaScript概念,却不能试试,会怎么样?你是什么感觉?从我个人而言,我会特别懊恼。这就像一个孩子得到一个新的玩具,却不能玩一样。

当你学习JavaScript中一些新内容的时候,试着将它当作新玩具,新车,新鞋,或者其他任何你有兴趣尝试的东西。然后不要将练习当作工作,要将练习当作是玩耍。用新技能去尝试一些很酷的东西。让你自己都不由的惊叹。然后显摆给你的朋友看。

用一种游戏的心态,你会学得更快,记得更久,拥有更多的乐趣。

4.写代码的时间魔法

在学习JavaScript中最常见的问题是,找不到时间写代码。但是,与此同时,却有大把大把的时间浏览各种网站,如Facebook,YouTube,维基百科和Reddit等。

我有好几次,一开始只是想打开Facebook,看一小会,然后不知不觉就发现已经看了几个小时。这是怎么发生的呢?或许正是因为我并不打算看很长时间。万事开头难,一旦开了头,后面陷进去就变得容易多了。但是如果有人问我,是否愿意花时间在Facebook上,我会坚决地说不,因为我本身时间就不够用。然而,只允许看一会会时间往往更容易接受,然后深陷其中。

好消息是,你也可以利用同样的心理来学习写代码。一开始不要想着要编码几小时,因为你永远找不到这么多的时间。就告诉自己你要去写3分钟的代码。这样你永远也不用愁挤不出时间了。

5.思考得更慢,学得更快

这听起来貌似有悖常理,下面我会用一个小故事解释。

我的一个朋友曾经对JavaScript的某个功能感到困惑。于是,我让他详细地说一遍哪些是他知道的,然后给他解释他感到困惑的那部分。不过,当他检查代码片段的时候,我注意到有一段代码,他说得非常仓促。

“等一下!”我说, “慢点讲,每一步都详细地说一下。”

我的朋友继续给我做代码发生了什么的全面总结。

我只好再次叫住他。 “你还是太仓促了。再试一次,但这次,我希望你能从字面上去检查每一行代码,告诉每一行的代码都发生了什么。”

这次,我的朋友终于能够很好地解释代码中正在发生什么。问题的关键是,他终于可以一步一步地检查了代码片段,而不是囫囵吞枣想要一次性理解所有代码。

在类似于这样的情况下,思考得更慢实际上能让你学得更快。

6.首先用简明的语言来写复杂的代码

如果碰到一段复杂的或你不熟悉的代码,那么先用通俗易懂的语言写出来。这样一来,你就可以在写代码之前明确地知道你想要代码做什么。这么做有两个好处:

  • 代码更易写,因为你不需要总是停下来想,你想要它表现什么。
  • 在bug发生之前就能捕捉到,因为你对代码应该做什么有一个明确的概念。

结论

我们已经讨论了一堆如何更快地学习JavaScript的方法,而且你也可以将这些技巧应用到其他的技能上。下面来回顾一下:

  • 不要担心以后会做什么决策,先好好深入学习。
  • 将新技能当作玩具一般快乐地练习。
  • 以小承诺的方式找时间来写代码,就像你一开始安慰自己只逛一小会时间网站。
  • 慢下来,步子迈的越小,学得越快。

对了,你是怎么学习的?你有什么好的技巧吗?或者,你认为我说的全是一派胡言,唯一的学习途径就是一天12小时地投入进去?无论是什么,欢迎不吝点评。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 提升代码内外部质量的22条经验

    本文主要关注代码的内部和外部质量,编程的价值观,代码质量的评估标准,整洁代码的匠艺以及如何维护已有的代码。 外部质量:用户所能感受到的部分,正确性,易用性,效率...

    hbbliyong
  • C#新功能--命名参数

      命名参数会潜在的改变编写代码的方式.这个新功能能使代码更容易阅读和理解. 例如,看一下System.IO名称空间中的File.Copy()方法,它一般构建为...

    hbbliyong
  • C#在.NET编译执行过程

    1..NET语言的编译器接受源代码文件,并生成名为程序集的输出文件。 程序集要么是可执行的,要么是DLL 程序集里的代码并不是本机代码,而是一种名称为CIL的中...

    hbbliyong
  • 更快学习 JavaScript 的 6 个思维技巧

    更快学习 JavaScript 的 6 个思维技巧 我们在学习JavaScript,或其他任何编码技能的时候,往往是因为这些拦路虎而裹足不前: 有些概念可能会...

    用户1289394
  • 自以为是套路,结果反生技术债,开源代码应该注意这五大误区!

    人工智能的研究该不该开源代码,一直是社区热议的话题。毕竟,一项机器学习研究不仅包括理论,算法和应用也是机器学习研究的重要内容。

    AI科技评论
  • 优秀程序员的 18 大法则

    优秀程序员的 18 大法则 经过多年的积累,我发现,下面这些基本的指导法则,可以帮助我成为一个更加高效的程序员。 程序设计法则,与设计和工程的原理密切相关。下面...

    用户1289394
  • VIP保过班高效备考方法

    对于完全不懂C语言的考生,先需要学习C语言基础。 1. 仔细阅读专属教材。 在阅读教材时,结合视频课堂,认真的读懂每个知识点。其中第2、3、4、5、6、7、...

    用户6755376
  • 新太空新角逐:SpaceX之后看中国民营新势力

    相比于SpaceX等,从关键技术的掌握到基础设施的搭建,再到商业化场景的完善……我国刚起步的民营火箭新势力还有很多事情要做。

    镁客网
  • 关于疟原虫治疗晚期癌症,这些你都知道吗?

    2018年12月24日,中科院广州生物医药与健康研究院的陈小平研究员(下文均称陈小平),在中科院SELF论坛有一场公开演讲,题为:疟原虫成为抗癌的生力军。

    用户6317549
  • 【蒙圈】自己写的Js,自己不认识了?

    但是,下课之前我说,今天的作业,如何如何要求,格式什么样,标明用了多长时间,然后就有同学在学习群里问我,。。原话记不太清了,大概意思就是,自己写的看不明白了,还...

    web前端教室

扫码关注云+社区

领取腾讯云代金券