免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: koolcoy

你知道什么是面向过程编程吗? [复制链接]

论坛徽章:
0
发表于 2010-06-13 20:12 |显示全部楼层
回复 19# koolcoy

楼主的面向过程的程序设计方法是个新颖的提法,对应了面向对象的程序设计方法,只是我不怎么了解怎么面向过程,没法发言。

我学计算机那会儿,面向对象的程序设计才刚刚起步,UML还没发明出来,设计模式没有成书。

不过那时候也没有面向过程的程序设计方法,或者说那时候除了面向对象之外没听过面向什么别的。

当时比较成熟的是结构化程序设计方法(Structure Design),以及抽象数据类型(ADT)。或称为模块化的程序设计。

那是我们认为,高质量的程序块需要具有:适当的名称,正交性(强内聚性、弱耦合性),长度适中,语句防错,合理的模块规划。

更具体的可以参考Steve McConnell写的
Code Complete: A Practical Handbook of Software Construction. Redmond, Wa.: Microsoft Press, 880 pages, 1993. Retail price: $35. ISBN: 1-55615-484-4
中译本名字《代码大全》学苑出版社1993,此书是作者70到80年代程序设计的经验总结。

此书2004年出了第二版,中文版是2006年电子工业出版社出版,引入了面向对象的一些内容,对防御式编程有了完整论述。

论坛徽章:
0
发表于 2010-06-13 20:26 |显示全部楼层
写状态机,面向什么好?
群雄逐鹿中原 发表于 2010-06-13 09:59



    想用OO的可以用The Boost Statechart Library
http://www.boost.org/doc/libs/1_ ... hart/doc/index.html

    其实采用表驱动或者用if或switch/case块写的可读性也很好。
附上文档或完善的注释当然更好。

论坛徽章:
2
程序设计版块每日发帖之星
日期:2015-06-17 22:20:00每日论坛发贴之星
日期:2015-06-17 22:20:00
发表于 2010-06-13 21:09 |显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
发表于 2010-06-14 17:17 |显示全部楼层
我只喜欢c,
求楼主深入讲解啊。

论坛徽章:
0
发表于 2010-06-15 17:33 |显示全部楼层
面向XX本质上都是数据的隐藏和封装,没什么区别

论坛徽章:
0
发表于 2010-06-15 19:16 |显示全部楼层
我觉得面向过程就是用一个函数不调用其它函数完成一个业务流程~ = =~

如果这个业务流程能得到复用~ 呢么也是一个小型的面相对象~

= 3=

论坛徽章:
0
发表于 2010-06-15 22:23 |显示全部楼层
这个问题看似简单,其实很有深度!
就像如下代码:
  1. #include <stdio.h>
  2. int main()
  3. {
  4.      printf("Hello,world\n");
  5.      return 0;
  6. }
复制代码
你知道它错在哪里吗?

论坛徽章:
0
发表于 2010-06-16 12:35 |显示全部楼层
面向对象太臃肿了!

论坛徽章:
0
发表于 2010-06-16 15:07 |显示全部楼层
#include <stdio.h>
int main()
{
     printf("Hello,world\n");
     return 0;
}


不知道哪里错了。

论坛徽章:
0
发表于 2010-06-16 17:50 |显示全部楼层
回复 27# Esakyo


    求告知
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP