编程语言
机器语言
- 机器语言是最早的程序设计语言。由于计算机接收和处理信息的形式是二进制代码,而机器语言直接使用二进制数据书写,因此机器语言程序不需翻译或解释就可直接被计算机执行。正因为机器语言是二进制码,所以它的执行速度很快,但编写困难。
- 机器语言指令一般由两部分构成:操作码和操作数。
汇编语言
为了便于编写,计算机软件开发者采用了一些助记符号来表示机器语言,这些带有助记符号的低级语言与机器语言类似,能够控制计算机的执行。由于汇编语言包含助记符号,以这些语言编写程序要比直接用机器语言写程序简单;也正是由于包含了助记符号,这种语言编写的程序不能被计算机直接执行,需要翻译成机器语言后才可被计算机执行。
高级语言
- 包括C++,lisp,javascript等
- C++是面向对象语言的代表,包括:(1)类 (2)继承 (3)权限控制 (4)多态
编程范式
- 编程范式:
常见的三种编程范式
- 面向过程编程:
以过程为中心,按照一定的顺序执行程序。
强调程序的执行顺序和控制流程。
程序的重点在于算法和数据的处理,使用全局变量和函数进行操作。
编写简单,可读性高,性能较好,但可扩展性和可维护性较差。
2. 面向对象编程:
将程序看做是一组对象的集合,强调对象之间的交互和关系。
把数据和操作数据的方法放在一个地方,数据的变化由对应对象的方法来实现。
通过继承、封装、多态等方式实现代码复用,降低了代码的耦合度。
更易于扩展和维护,但相比于面向过程编程,更加抽象和复杂。
3. 函数式编程:
把计算过程看作是一系列函数的组合。
强调函数的独立性和不可变性,尽量避免副作用。
将函数看作是“一等公民”,即函数可以作为变量、参数、返回值等来传递。
通过高阶函数、闭包等方式实现代码复用和抽象,具有很好的可读性和可维护性。
但相比于面向对象编程,函数式编程更加注重数据的流动和处理,而不是对象之间的交互。
每种编程范式都有其独特的优势和不足,应该根据实际需求和情况选择合适的编程范式。