青训营笔记

54 阅读1分钟

编程范式

c/c++(中级语言)过程式语言代表

c++面向对象语言代表加入了类、继承和多态

lisp函数式语言代表

JavaScript(基于原型和头等函数的多范式语言)

命令式

面向过程

面向对象

声明式

函数式

响应式

程序语言特性:

是否允许副作用

操作的执行顺序

代码组织

状态管理

语法的词法

编程语言

机器语言

汇编语言

中级语言 ——c

高级语言

    c++
    
    lisp
    
    JavaScript
   

编程范式

编程范式的定义

过程式编程

面向过程问题

 数据与算法关联弱
 
 不利于修改和扩充
 
 不利于代码重用
 

面向对象编程

封装-关联数据和算法

继承-无需重写的情况下进行功能扩充

多态-不同结构可以进行共享接口

依赖注入-去除代码耦合

五大原则

单一职责

开放封闭原则

重式替换

依赖倒置

接口分离

函数式编程

优势:可缓存、可移植、可测试、可推理、可并行

响应式编程

异步、离散的函数式编程

观察者模式

迭代器模式

promise

领域特定语言(创建DSL)

lexer

parser

tools

vistor