“前端那么多好用的框架,JavaScript 差不多学下就行了吧?”——当然不行。作为一种轻量级的动态编程语言,逐步发展为广受运用的高人气开发方案, 甚至在 Web 相关设备上占据着统治地位。
如果你是一名编程初学者,刚刚学习完 HTML 和 CSS,那你就不得不接触 JavaScript了 。刚开始,你会用 jQuery 操作 DOM,切换页面并写一写单击事件,似乎觉得 JavaScript 也不过如此。然而,当你在 for 循环里面写了一个 setTimeout 函数后,意想不到的结果发生了,这时你才明白前端这“坑”,竟如此之深!
JavaScript 就是这样一种看起来简单,却又很难精通的编程语言。我甚至遇到一些开发者感到迷惑时,他们通常会责怪语言本身,而不是怪自己对语言缺乏了解。
关于个人技术成长,我们常听到“技术深度”和“技术广度”这两个词语。如果你希望自己在常规的业务开发之外承担更多复杂度较高的工作,就是不断阅读优秀的源码并深入原理,从 JavaScript 语言的基础知识到翻过“三座大山”——设计模式、数据结构、基础算法,再到开发框架的设计思想、核心原理和最佳实践,最后再在工程化或者更加综合的场景中应用自己所学。解决了以上问题,就会让你打心眼儿里欣赏这门语言。
其实没有人能把一种程序设计语言的所有语法和关键字记住。如果有拿不准的地方,查阅参考资料就全解决了。
网上的资料一抓一大把,我也关注过不少,但大部分都在讲一些小技巧,小方法,脱离那些固定的场景就很难应用。
但最近在刷的石川的《JavaScript 进阶实战课》专栏,给了我惊喜。跟着学下来,有了一个系统的专业理解。一步一个脚印,通过点线面搭建起一座空间立体的“思维大厦”。而且采用了设计范式中的两个思想,“声明式”和“基于接口而非实现”来设计这门课,大幅减少了学习难度。
看到这座“大厦”,你可能会望而却步,觉得要学习这么多的内容很可怕。但其实你不用担心,万丈高楼平地起。只要通过一个个知识点+案例、结构化理解与掌握 JavaScript 算法和设计模式、并逐步搞懂核心编程模式,用起来就并不复杂。
最重要的是,石川还会带你洞察语言及应用变化趋势,拥有前沿视野,赚到了。