课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
随着互联网的不断发展,越来越多的人都希望能够加入到这个朝阳行业,今天我们就一起来了解一下,在学习前端编程开发技术的时候都有哪些学习方法可以使用。
学习路径与学习方法
0基础入门的同学,你可以读几本的前端教材,比如《JavaScript高级程序设计》、《精通CSS》等书籍,去阅读一些参考性质的网站也是不错的选项,比如MDN。
建立知识架构
建立自己的知识架构,并且在这个架构上,不断地进行优化。
我们先来讲讲什么叫做知识架构?我们可以把它理解为知识的“目录”或者索引,它能够帮助我们把零散的知识组织起来,也能够帮助我们发现一些知识上的盲区。
当然,知识的架构是有优劣之分的,重要的就是逻辑性和完备性。
我们来思考一个问题,如果我们要给JavaScript知识做一个顶层目录,该怎么做呢?
如果我们把一些特别流行的术语和问题,拼凑起来,可能会变成这样:
类型转换;
this指针;
闭包;
作用域链;
原型链;
……
这其实不是我们想要的结果,因为这些知识点之间,没有任何逻辑关系。它们既不是并列关系,又不是递进关系,合在一起,也就没有任何意义。这样的知识架构,无法帮助我们去发现问题和理解问题。
如果让我来做,我会这样划分:
文法;
语义;
运行时。
为什么这样分呢,因为对于任何计算机语言来说,必定是“用规定的文法,去表达特定语义,终操作运行时的”一个过程。
这样,JavaScript的任何知识都不会出现在这个范围之外,这是知识架构的完备性。我们再往下细分一个层级,就变成了这个样子:
文法
词法
语法
语义
运行时
类型
执行过程
我来解释一下这个划分。
文法可以分成词法和语法,这来自编译原理的划分,同样是完备的。语义则跟语法具有一一对应关系,这里暂时不区分。
对于运行时部分,这个划分保持了完备性,我们都知道:程序=算法+数据结构,那么,对运行时来说,类型就是数据结构,执行过程就是算法。
当我们再往下细分的时候,就会看到熟悉的概念了,词法中有各种直接量、关键字、运算符,语法和语义则是表达式、语句、函数、对象、模块,类型则包含了对象、数字、字符串等。
这样逐层向下细分,知识框架就初见端倪了。在顶层和大结构上,我们通过逻辑来保持完备性。如果继续往下,就需要一些技巧了,我们可以寻找一些线索。
比如在JavaScript标准中,有完整的文法定义,它是具有完备性的,所以我们可以根据它来完成,我们还可以根据语法去建立语义的知识架构。实际上,因为JavaScript有一份统一的标准,所以相对来说不太困难。
如果是浏览器中的API,那就困难了,它们分布在w3c的各种标准当中,非常难找。但是我们要想找到一些具有完备性的线索,也不是没有办法。我喜欢的一个办法,就是用实际的代码去找:forin遍历window的属性,再去找它的内容。
我想,学习的过程,实际上就是知识架构不断进化的过程,通过知识架构的自然延伸,我们可以更轻松地记忆一些原本难以记住的点,还可以发现被忽视的知识盲点。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!