几种编程语言
C语言(中级语言) 过程式语言代表
特点:
1.可对位,字节,地址直接操作;
2.代码和数据分离倡导结构化编程;
3.功能齐全,数据类型和控制逻辑多样化;
4.可移植能力强。
C++ 面向对象语言代表
特点:
1.在C语言基础上增加对类的指示;
2.有了继承和虚函数的概念。
Lisp 函数式语言代表
特点:
1.与机器无关;
2.列表:代码及数据;
3.引入闭包概念。
JavaScript 基于原型和头等函数的多范式语言
特点:使用较灵活。
可根据是否允许副作用、操作的执行顺序、代码组织、状态管理、语法和词法等这些程序语言特性来进行分类。
面向过程编程的问题:
数据与算法关联弱;
不利于修改和扩充;
不利于代码重用。
而后推出面向对象编程。
面向对象编程的特点:
1.封装:可关联数据与算法;
2.继承:无需重写的情况下进行功能扩充;
3.多态: 不同的结构可以进行接口共享,进而达到函数复用;
4.依赖注入:去除代码耦合。
面向对象编程的五大原则:
1.单一职责原则SRP;
2.开放封闭原则OCP;
3.里氏替换原则LSP;
4.依赖倒置原则DIP;
5.接口分离原则ISP。
面向对象编程问题:他总是附带着所有它需要的隐含环境。
而后推出函数式编程:是指用纯函数的组合来进行编程。
函数式编程的优势:可缓存、可移植、可测试、可推理、可并行。
响应式编程:在异步/离散数据情况下特殊的函数编程。