编程范式

来源:互联网 发布:软件开发考核指标 编辑:程序博客网 时间:2024/04/29 19:45

关于范式,最开始见到是在数据库上,之后又在C++上看到多重编程范式,总感觉很抽象,所以特地整理了一下,记录如下:


在解释这个抽象名词之前,我要普及一下汉语字典的知识^^(原谅我语文没学好).


编程:编制出可以在计算机模型中解决实际问题的程序。

范式:范,指模具,比如我们经常说规范,规和范应该都是木工常用的两种工具。式,指规格。联合起来其实就是表示规格、模型、标准。


那么编程范式,就是我们编制程序,解决计算机中问题的方法的模型(或标准),也有叫做编程范型的,意思都一样。


这些模型或标准方法有以下几种,

比如,过程化程序设计,就是按解决问题的步骤来组织代码;

结构化程序设计,采用三种基本结构来描述算法,用子程序,代码块的方式自顶向下,逐步细化的方式来组织代码。结构化和过程化并不存在包含或者对立关系,他们只是程序设计的两种方式。

声明式,我们只需要语言描述编程的目标,而不需要关心计算机是如何完成目标的(实际是有一个强大的解析、执行程序来为我们完成)。比如SQL

指令式,则是需要我们用编程语言来详细的描述计算机的执行步骤。大部分语言都是指令式的。

流程驱动编程:在程序开始运行之后,就会按流程执行我们所编写的问题处理程序,问题处理程序的执行时间是确定的。

事件驱动式:也就是说在程序运行之后,不会去自动执行问题(事件)处理程序,只有在特定的事件发生之后,才会执行对应的事件处理程序。最初的实时控制系统都是采用这种方式,也是中断思想的一种应用。但是在GUI普及之后,因为其采用事件驱动的方式,这种方式一下子成为了某些方面的主流设计方法。

面向对象:把对事物本身及事物关系的描述做为程序主体的编程方法。


不同的编程范式是对编程方法不同方面的描述。单纯的说他们之间的关系是没有意义的。

一种编程语言可以支持多种编程范式,当然一个程序也可以符合多种范式,比如事件驱动和面向对象。

0 0
原创粉丝点击