[ 程序交流 ] 请各位牛人来谈谈你理解的“面向过程”编程思想 [ 友情散分 ]

ChinaPlayer 2004-07-18 05:22:14

面向对象编程思想,我们已经谈了好多好多。
但是对于古老的 面向过程 编程思想,网上几乎没有深入论述。
请各位牛人,深入谈谈你所理解的面向过程编程思想,和面向对象的差别,以及实践经验!
谢谢!
...全文
1168 86 打赏 收藏 转发到动态 举报
写回复
用AI写文章
86 条回复
切换为时间正序
请发表友善的回复…
发表回复
Garboy 2004-10-21
  • 打赏
  • 举报
回复
通过使用多态,我们可以进一步简化指令:
class Human{ public : 上厕所();};
class Man:public Human{上男厕所();};
class Woman:public Human{上女厕所();};
int main()
{
p克林顿->上厕所(); //看,指令简化啦,从“上男厕所”变成了“上厕所”。
p布什->上厕所();
p劳拉->上厕所();
}
----------------------------------------

牛人啊!
dudu妈 2004-10-21
  • 打赏
  • 举报
回复
我不是牛人,我要学习牛人,学习!!!!!!
mukedi 2004-10-21
  • 打赏
  • 举报
回复
学习
wanglianhui 2004-10-20
  • 打赏
  • 举报
回复
我不懂呀, 没学呀, 我要自学哟, !大二了哟/!
David_He 2004-10-20
  • 打赏
  • 举报
回复
编程
运行
失败
调试
运行
失败
调试
运行
失败

……

调试
运行
成功!!
nirvana_li 2004-10-20
  • 打赏
  • 举报
回复
我觉得面向过程还是面向对象只是你自己对世界的一个看法,
就如亚里斯多德所问的就是:“世界是过程组成的,还是由对象组成的。”

认识世界的本质,是由过程抑或是对象组成。在程序设计中,我们使用过程化的设计方法,把一个功能进行划分,一直分解到多个“适当”的功能。我们在此更多的是要考虑到很多计算机方面的东西,而在面向对象的程序设计中,我们把问题域和解域联系起来,以对象来描述外部世界。

其实,不管是面向过程还是面向对象,都不是彻底解决软件危机的方法。

“软件工业重来就没有银弹!”
  • 打赏
  • 举报
回复
面向过程编程是对结构(顺序,选择,循环)的封装;
面向对象编程是对属性的封装;
面向组件编程是对方法(过程)的封装
cnxiaohai 2004-10-20
  • 打赏
  • 举报
回复
//看,指令简化啦,从“上男厕所”变成了“上厕所”。


真NB啊。。。。。
groock 2004-10-20
  • 打赏
  • 举报
回复
原来的社会追求的是成功的过程
现在社会追求的是ml的对象
raulqlj 2004-10-20
  • 打赏
  • 举报
回复
^^^^^
bigtree21cn 2004-10-20
  • 打赏
  • 举报
回复
面向过程强调的是解决问题的方法,也就是 cnxiaohai兄 所说的是一个算法不断分解的过程;
而OO更倾向于一种思考方法。强调对象及其之间的交互。
在分析和总体设计阶段,尤其是分析阶段,OO的思考方式可能更有效。
而对于一个具体的问题的细化,我们的思维不自觉的使用过程的方式。
面向过程和面向对象应该说是一种思考方式,而并不是编程工具(语言)的天然属性,
用c语言也可以用OO的方式来实现程序。
用Java也可以写过程化的程序。
Linch112 2004-10-20
  • 打赏
  • 举报
回复
哈哈,这里最热闹。面向过程和面向对象都很不错。自从有编程这个职业以来,人们就在追求指令的简单化和抽象化。一条指令包括:动作、动作的执行者、动作的承受者。比如在汇编语言里,
人们这样写:move eax, 1
在C,Pascal里,人们就可以写 func();来调用函式,这是对指令的很好的抽象。后来就有了C++,Java,Delphi,C#,指令可以达到更高层次的抽象,同时动作和动作的执行者(或者动作的承受者)联系的更加紧密。不信?我们不喜欢空谈,我们让例子说话,请看:

// 过程式语言,比如我们在训练三个儿童如何上厕所
int main()
{
上男厕所(克林顿);
上男厕所(布什);
上女厕所(劳拉);
}

要是用面向对象来写,就是
int main()
{
克林顿.上男厕所();
布什.上男厕所();
劳拉.上女厕所();
}
通过使用多态,我们可以进一步简化指令:
class Human{ public : 上厕所();};
class Man:public Human{上男厕所();};
class Woman:public Human{上女厕所();};
int main()
{
p克林顿->上厕所(); //看,指令简化啦,从“上男厕所”变成了“上厕所”。
p布什->上厕所();
p劳拉->上厕所();
}




hikuers 2004-10-20
  • 打赏
  • 举报
回复
面向对象一类为基点
chenzhixin 2004-10-20
  • 打赏
  • 举报
回复
对不了,大错字了,是接口,不是借口,不好意识
chenzhixin 2004-10-20
  • 打赏
  • 举报
回复
我去年才学的C,今年打算自学C++,下面的是我对面向过程和面向对象的一些想法

我觉得一个程序就象太空里面的一艘航空母舰,它上面有很多的借口.航空母舰外面有好多的可以接入航母的插件,

对于面向过程,这些插件就是能实现某种功能的函数,是单一的与别的插件没什么联系,这些插件只能排好队,一个一个的进去.

而对于面向对象来说,这些插件就象一个个有生命力的东西,航母的指挥人员把他们划成一个一个的小组,进行分类,都放在一个圆球里面,(他们有些能出入自由,去和别的插件谈恋爱生下派生类,有些就不能,这就是公有类和私有类之分),他们都具有相似的特点,属于同一类,航空母舰需要某种功能的时候就只需要让能实现这种功能的插件过来报道,而不必让它排队


本人刚刚学C++,不知道这个面向对象想法怎么样,还望大家给点意见
freezingfire 2004-10-20
  • 打赏
  • 举报
回复
我的浅见,面向对象在提高内聚,减少耦合,提高程序的可读性和可维护性方面的作用最大。这点,面向过程是无法比拟的。
yangfasheng 2004-10-19
  • 打赏
  • 举报
回复
cnxiaohai(相声独一处(灌水是我无言的抗议)) ( ) 信誉:100
而当你把一张名片递给客户的时候,“面向对象”可能更容易让他接过名片的同时,给你一张支票

真的经典!
这已经不是"面向过程"与"面积对象"啦!而更象是"面向现实"!

RookieStar(★)(巴巴罗萨)巴巴罗萨,德国进攻苏联的战争计划.好象也很喜欢看世界战争史.
疯狂的技术宅 2004-10-19
  • 打赏
  • 举报
回复
UP先
jalang 2004-10-19
  • 打赏
  • 举报
回复
现在虽然在写程序是面向对象的。但是其实还是想到哪里觉得要解决什么问题了。在类中加如什么别的方法或成员。所以感觉还是在写面向过程的程序。其实,面向对象的程序编写感觉应该在设计的时候能够体现它的思想。而在写它的具体方法的时候。感觉还是在面向过程。
elvahuang 2004-10-19
  • 打赏
  • 举报
回复
不管是什么技术 dll com .net 本质上都是面向过程的--解决问题的方法
加载更多回复(66)

69,394

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧