前端训练营《编程范式》笔记

204 阅读2分钟

前端训练营《编程范式》笔记

image.png

高级语言转换为机器语言的过程要经过汇编语言的中间层,即经过编译器转换成汇编语言,再通过汇编器转换成机器语言。

其中c语言是中级语言,也是过程式语言的代表

高级语言中,c++便是面向对象语言的代表

什么是编程范式?

主要包含命令式和声明式,命令式包含面向过程和面向对象,声明式包含函数式和响应式。

同时也要考虑语言特性,关于 是否允许副作用,操作的执行顺序, 代码组织, 状态管理, 语法和词法

面向对象编程:

C++为例:1,C wiht classes / 2,继承 / 3,权限控制 / 4,虚函数 / 5,多态

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

image.png

image.png

image.png

image.png

面向对象的五大原则: 1,单一职责原则SRP(Single Responsibility Principle) //2,开放封闭原则ocP(Open - Close Principle) //3,里式替换原则LSP(the Liskov Substitution Principle LSP) //4,依赖倒置原则DIP(the Dependency Inversion Principle DIP) //5,接口分离原则ISP(the Interface Segregation Principle ISP)

函数式编程

函数第一性,纯函数且无副作用 ,高阶函数具有闭包性质。

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

例子:

image.png

image.png

image.png

image.png

image.png

响应式编程

数据流式编程强调了数据的流动,并将程序建模为一系列的连接。显式的定义输入和输出的连接运算,它的功能类似于黑箱[7]。一个运算在它的所有输入成为有效时立即运行。因此,数据流程语言是天然并行的,并可在大型的、[去中心化]的系统上运作

·异步/离散的函数式编程

·数据流

·操作符

·过滤

·合并

·转化

·高阶

订阅模式;

image.png