命令式编程

命令式编程

命令式编程的主要思想是关注计算机执行的步骤,即一步一步告诉计算机先做什么再做什么。从本质上讲,它是“冯.诺依曼机”运行机制的抽象,它的编程思想方式源于计算机指令的顺序排列。过程化语言模拟的是计算机机器的系统构造,而并不是基于语言的使用者的个人能力和倾向。

程序流程图是命令式语言进行程序编写的有效辅助手段。命令式语言特别适合解决线性(或者说按部就班)的算法问题。它强调“自上而下(自顶向下)”“精益求精”的设计方式。这种方式非常类似我们的工作和生活方式,因为我们的日常活动都是按部就班的顺序进行的。

命令式语言趋向于开发运行较快且对系统资源利用率较高的程序。命令式语言非常的灵活并强大,同时有许多经典应用范例,这使得程序员可以用它来解决多种问题。命令式语言的不足之处就是它不适合某些种类问题的解决,例如那些非结构化的具有复杂算法的问题。问题出现在,命令式语言必须对一个算法加以详尽的说明,并且其中还要包括执行这些指令或语句的顺序。实际上,给那些非结构化的具有复杂算法的问题给出详尽的算法是极其困难的。

命令式对实际事物处理一般可以拆分为以下两种模式:

  • 流程驱动:一般就是主动轮询 在干活中还要分心 主动去找活干 这样有空余的时间也完全浪费掉了。采用警觉式者主动去轮询(polling),行为取决于自身的观察判断,是流程驱动的,符合常规的流程驱动式编程(Flow-Driven Programming)的模式。

  • 事件驱动:比如公司有一个 oa 系统 你干完活的时候只需要看下 oa 系统有没分配给你活 没有可以干自己的事 不用担心还有其他事没干完采用托付式者被动等通知(notification),行为取决于外来的突发事件,是事件驱动 的,符合事件驱动式编程(Event-Driven   Programming,简称 EDP)的模式。

Links

下一页