编程范式
课程背景:
- 前端的编程语言有JavaScript.
- JavaScript做为一种融合了多种编程范式的语言,灵活性非常高。
- 前端开发人员需要根据场景在不同编程范式间自如切换。
- 进一步需要创造领域特定语言抽象业务问题。
课程收益:
- 了解不同编程范式的起源和适用场景。
- 掌握JavaScript在不同的编程范式特别是函数式编程范式的使用。
- 掌握创建领域特定语言的相关工具和模式
我的收获
-
通过老师的介绍了解到计算机语言的发展:
机器语言、汇编语言、中级语言、高级语言
其中中级语言有C、高级语言有C++、Lips、Javascript -
过程式编程:
自顶向下
结构化编程 -
面向对象的多态、封装、继承这些特性能帮助是我们更好的解决问题出,也是我们使用面向对象的初衷。
-
面向对象编程的五大原则:
单一职责原则、开放封闭原则、里式替换原则、依赖倒置原则、接口分离原则
JavaScript
-
基于原型和头等函数的多范式语言
-
过程式
- JavaScript最初被设计为一种过程式的脚本语言,它可以在Web浏览器中嵌入HTML页面,实现动态交互效果
-
面向对象
- JavaScript是一种支持面向对象编程的语言,它支持类、对象、继承、封装等面向对象的特性。JavaScript中的对象是动态的,可以随时添加或删除属性和方法
-
函数式
- JavaScript是一种支持函数式编程的语言,它的函数可以作为一等公民,可以赋值给变量,可以作为参数传递给其他函数,可以作为返回值返回给其他函数
-
响应式
- JavaScript可以通过DOM操作实现响应式编程,可以实现页面元素的动态更新,与用户的交互效果等
-
除了上述视频中提到的这几点,还有额外的特点进行补充:
-
弱类型:JavaScript是一种弱类型的语言,不需要事先声明变量的类型,变量的类型会在运行时自动推断(在TS中变成强类型)。
-
解释性:JavaScript是一种解释性的语言,不需要编译成可执行文件,可以直接在浏览器中执行(经典的例如V8引擎会进行处理)。
-
高阶函数:JavaScript中的函数可以作为参数传递给其他函数,也可以作为返回值返回给其他函数,这种函数称为高阶函数。
-
闭包:JavaScript中的函数可以形成闭包,即在函数内部定义的变量可以在函数外部访问,这种特性可以实现私有变量和函数的封装。