【编程范式|青训营笔记】

83 阅读2分钟

编程范式

  • • 编程范式
  • • 1.编程语言 将人类的语言转化为机器能理解的语言。

高级语言(贴近人类思路),

汇编语言(将数字变为字母),

机械语言(数字,机器所使用的语言)

中级语言:C【面对过程】

高级语言:C++【面向对象代表】Lisp【函数式语言】JavaScript【多范式语言】

  • • 2.编程范式

程序语言特性:可根据 是否允许副作用;操作的执行顺序;代码组织;状态管理;语法和词法 来分类;

编程范式:1.命令式【如何操控】:面向对象,面向过程【操作状态进行分组】

                      2.声明式【想要的结果】:函数式【函数来产生逻辑】,响应式【数据流】

「过程式」:自顶而下,结构化编程

面对过程缺点:数据与算法关联弱,不利于修改和扩充,不利于代码重用

面对对象:封装【将算法与数据关联】,继承,多态,依赖注入

其解决了很多问题但是前端依然推荐使用函数式,如若我们仅使用一个包中的一个小类内容,我们依然需要将整个包调用

「函数式」:纯函数,减少变化,让编程更为清晰

可缓存,可移植,可测试,可推理,可并行

「响应式」:处于异步/离散状态的

观察者模式,迭代式模式

  • • 3.领域特定语言

应用于特定领域的语言

语言运行:经过lexer,parser到visit分类进入interpret和Code gen

  • • 这节课介绍了编程语言的出现,编程语言出现前人类与机器交流语言的发展,编程范式中的分类及具体分类介绍,及对领域特定语言的介绍。明白了编程范式的分类依据,面对对象面对过程的编程的缺点,我们选择函数式编程做为我们前端编程语言的原因,为未来编程提供帮助,提供初步理解。