面对过程程序设计和面对对象程序设计的区别面对过程程序设计我个人的理解简单来说,他考虑问题的方式是面对流程的,一个程序的设计思路就是解决一个问题的流程。就好比游戏先登入界面,再输入密码,然后选择角色,在然后进入游戏玩耍,结束... .... 这把这些步样就是面对过程。面对过程就是分析出解决问题所需要的步骤,然后用函数骤一步调用就可以了一步实现,使用的时候一个一个依次。可以看出面对过程化程序设计是先确定算法,再确定数据结构。而面对对象程序设计是面对问题中的各种独立个体的,程序的析设分计过程就是将程序分解成不同对象(不同概念体)之间的交互的过程。这就好比在针对某个工程或游戏设计程序时先不考虑,游戏是怎么玩的,工作是怎么做的,而先会去找,游戏或工程中有哪些人或事物参加(一般选择:用户,玩家,角色等等),然后再看他们都有什么用,都干了些什么,针对这个区设计方法。最后在通过这些千丝万缕的联系把他们分门别类的,组装在一起。可以看出面对过程化程序设计是先确定数据结构再确定算法。 从上面很容易看出,面对过程的程序上一步和下一步环环相扣,他只考虑实现客户的需求不考虑以后扩展,假如以后客户的需求有变化 那代码量要改变非常大 耗费的时间也相当多。从本质上说,面对过程基本上是一种状态机,不利于修改,当新状态出现的时候,甚至可能需要重设每一个状态解决实现。所以说面对过程是一种直接的编程方法,它是根据编程语言的思路考虑问题。尤其是想 C 语言这种过程式语言,它就是通过顺序执行一组语句来实现一个功能,这些语句的执行过程就是整个程序。不同的语言解决同一个问题的过程是不一样的。而面对对象的程序设计很多东西都是独立的,每个对象都可以重复使用。而面对对象程序设计强调“封装”,“继承“和“多态”。数据和与数据相关的操作被包装成对象(严格的说是“类”),每一种对象是相对完整和独立的。对象可以有派生的类型,派生的类型可以覆盖(或重载)原本已有的操作。所有的这些,是为了达成更好的内聚性,即一种对象做好一件(或者一类相关的)事情,对象内部的细节外面世界不关怀也看不到;以及降低耦合性,即不同种类的对象之间相互的依赖尽可能降低。而所有的这些,都有助于达成一个崇高的目标,就是可复用性。下面举个例子来说明面对过程的程序和面对对象的程序设计的区别:用面对过程的思想去考虑它应该是这样的:如何启动汽车、如何起步、加速、刹车、熄火等一...