前言
你最近学习的新东西是什么?
可能是一门新语言,比如意大利语或者德语。或者可能是一个图形编辑器,比如Photoshop。或者是烹饪技术,木工艺,日常锻炼。我想让你记住你最终掌握它的那种感觉:类似灯泡点亮的那一刻。当一个事物从模糊不清变得像水晶般清晰,当你掌握了台锯的使用,或者理解了法语中的阴阳性名词的差别。感觉怎么样?非常棒,不是吗?
现在我想让你稍微让时光倒流下,回到你掌握新技能之前,那时的感觉是什么样的呢?或许是有些恐慌,有些挫败,是吗?我们曾经一度并不了解我们现在熟知的事物。这并没有什么,我们只需要从某个地方开始启程。学习一种新鲜事物是一段令人兴奋的旅程,尤其是你追求的是高效地学习。
我教过很多入门级的编程课。上我课同学们经常尝试通过看一些博客或者复制粘贴代码来学习HTML和Javascript,但是他们并没有能够真正掌握一些东西,来达到理想的地步。他们没有抓住这些编程主题的实质,并不明白发生了什么,以至于写不出强大的代码或者debug代码。
我经常在我的课上教一些通用方法,比如web标准,语法的加成,有良好注释的代码以及其他一些最佳实践。我讲一些主题时会用全面透彻的方式解释清楚怎么做以及为什么,而不是紧紧抛出代码来复制粘贴。当你去追求理解你的代码,你的工作会越做越好。你的代码再也不是你的"工作",而是你的"匠艺"。这就是我为什么喜欢Up & Going。Kyle带领我们深入语法和术语,事无巨细地介绍了Javascript的方方面面。这本书并不是只停留在表层,而是真正使我们理解我们写代码时的一些概念。
正如你在学习Photoshop时只会打开,关闭和保存文档,复制一些 jQuery片段到你自己的网站是远远不够的。在学习一些编程基本概念后,你就可以创造并分享自己的设计。但是如果不能理解工具背后的知识,你怎样做到定义一个表格,描绘清晰的类型系统或者优化网站的图片?如果不清楚一个循环怎么工作,怎样定义变量或者什么事作用域,我们不可能写出最好的代码。我们不能委曲求全——总之,这是,我们的匠艺。
你挖掘JavaScript越深,你会越来越清晰。一些概念,比如闭包,对象和方法对你来说可能遥不可及,但是这本书将会帮助理解它们。我希望当你开始看这本书时记住之前提到了两种感觉——学习一些东西之前与之后。一开始可能会令人畏惧,但是拿起这本书你会开始一段令人惊叹的旅程。Up & Going是我们学习编程的开始。
享受灯泡点亮的那些时刻!
Jenn Lukas
jennlukas.com, @jennlukas
前端顾问