这是我参与「第五届青训营」笔记创作活动的第三天
一、本堂课重点内容:
- 编程语言
- 机器语言
- 汇编语言
- 中级语言
- 高级语言
- 编程范式
- 过程式
- 面向对象
- 函数式编程
- 响应式编程
- 构建领域特定语言
- 词法解析
- 语法分析
- 工具生成
- 解释与编译
二、详细知识点介绍:
编程语言
-
机器语言
-
汇编语言
-
中级语言
- C:“中级语言”过程式语言代表
- C++:面向对象语言代表
- lisp:函数式语言代表
-
高级语言
- Java
- Python
- JavaScript
编程范式
程序语言特性
- 是否允许副作用
- 操作的执行顺序
- 代码组织
- 状态管理
- 语法和词法
编程范式
-
命令式:命令式编程是一种以过程为中心的编程方式,它主要分为面向过程和面向对象两种形式。
-
声明式:声明式编程是一种以函数描述问题为中心的编程范式,它主要分为函数式和响应式两种形式。
-
过程式
-
结构化编程
-
面向对象
- 封装
- 继承
- 多态
- 依赖注入
-
函数式编程
函数的特点
-
函数是“一等公民”
-
纯函数/无副作用
-
高阶函数跟闭包
-
-
响应式编程
通俗来说,响应式编程就是一种处理数据流的编程方式。那么我们可以把数据流看成一条河流,数据就像是水流一样从上游流向下游。
三、课后个人总结:
javaScript做为一种融合了多种编程范式的语言,灵活性非常高。前端开发人员需要根据场景在不同编程范式间自如切换。进一步需要创造领域特定语言抽象业务问题。经过这次本次学习,使我了解不同编程范式特别是函数式编程范式下的使用。进一步帮助到我掌握创造领域特定语言的相关工具和模式。