程序为什么要模块化 - dadalan的专栏 - CSDN博客
来源:百度文库 编辑:神马文学网 时间:2024/05/27 09:29:57
程序为什么要模块化收藏
程序为什么要模块化,这是我这次进公司时,帮同事调程序时发自内心的一个感触,看到同事代码时,给我感觉第一:函数内代码太长,居然达400行。第二:代码太长导致变量命名不规范第三功能复杂第四可读性不好,看了好久才把整个函数的所有功能弄懂。其他就不写了,总之。。。。 程序模块化,这样使程序更加清晰便于程序改动”。
除此之外,程序模块化有着更深的意义:
(1)模块化,可以将不同功能的模块设计成小耦合度模块,使程序执行出错率降低,提高程序可靠性;
(2)模块化,可以大为提高源代码的复用率,降低代码占有空间,提高程序可靠性;
(3)模块化,可以提高了程序的可维修性,延长了程序生命周期。
二、对于软硬结合的系统来说,软件性能和可靠性的提高,无疑也提升了系统的性能和可靠性。虽然,对于特定硬件来说,执行功能是一样的。但从系统角度看,仍然有其积极意义。
三、“程序在执行时实质就是各种门电路的开关动作......容易发生干扰电流导致干扰......导致门电路误动作(竞争冒险)......门电路的延迟效应会加剧其发生概率!”——如果自己设计的电路,当然有可能发生此类问题。但是就成熟的CPU来说,生产厂家在研发出正式产品之前,早已解决了上面所述的内部干扰和逻辑错误问题。所以在硬件应用层面上,绝大多数问题是出在外部应用电路的错误和电磁兼容上;在软件应用层面上,绝大多数问题是出软件设计不合理和软件设计可靠性上。
四、“采用C语言进行模块化编程是否就是比用汇编更好呢?”——其实对于程序模块化,汇编语言和C语言都可以实现得很好。使用汇编语言,得到的代码比C语言更精炼、更小巧些;而使用C语言,使人更容易理解、更方便修改。但C语言与汇编语言比较而言离机器语言远了些(C语言在编译后得到的仍然是汇编程序);而在写大型程序时,C语言明显比汇编语言更具有效率和排故(debug)优势。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/dadalan/archive/2008/12/18/3546739.aspx
程序为什么要模块化,这是我这次进公司时,帮同事调程序时发自内心的一个感触,看到同事代码时,给我感觉第一:函数内代码太长,居然达400行。第二:代码太长导致变量命名不规范第三功能复杂第四可读性不好,看了好久才把整个函数的所有功能弄懂。其他就不写了,总之。。。。 程序模块化,这样使程序更加清晰便于程序改动”。
除此之外,程序模块化有着更深的意义:
(1)模块化,可以将不同功能的模块设计成小耦合度模块,使程序执行出错率降低,提高程序可靠性;
(2)模块化,可以大为提高源代码的复用率,降低代码占有空间,提高程序可靠性;
(3)模块化,可以提高了程序的可维修性,延长了程序生命周期。
二、对于软硬结合的系统来说,软件性能和可靠性的提高,无疑也提升了系统的性能和可靠性。虽然,对于特定硬件来说,执行功能是一样的。但从系统角度看,仍然有其积极意义。
三、“程序在执行时实质就是各种门电路的开关动作......容易发生干扰电流导致干扰......导致门电路误动作(竞争冒险)......门电路的延迟效应会加剧其发生概率!”——如果自己设计的电路,当然有可能发生此类问题。但是就成熟的CPU来说,生产厂家在研发出正式产品之前,早已解决了上面所述的内部干扰和逻辑错误问题。所以在硬件应用层面上,绝大多数问题是出在外部应用电路的错误和电磁兼容上;在软件应用层面上,绝大多数问题是出软件设计不合理和软件设计可靠性上。
四、“采用C语言进行模块化编程是否就是比用汇编更好呢?”——其实对于程序模块化,汇编语言和C语言都可以实现得很好。使用汇编语言,得到的代码比C语言更精炼、更小巧些;而使用C语言,使人更容易理解、更方便修改。但C语言与汇编语言比较而言离机器语言远了些(C语言在编译后得到的仍然是汇编程序);而在写大型程序时,C语言明显比汇编语言更具有效率和排故(debug)优势。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/dadalan/archive/2008/12/18/3546739.aspx
程序为什么要模块化 - dadalan的专栏 - CSDN博客
VC++ 安装程序制作 - zhongyhc的专栏 - CSDN博客
baozhengw的专栏 - CSDN博客
调试游戏程序的学问 - 水上漂的专栏 - CSDN博客
小细节大问题——程序的效率 - winnie的专栏 - CSDN博客
一个C++程序编译失败引发的思考 - feellin的专栏 - CSDN博客
如何从程序集中加载及卸载插件 - BearTang的专栏 - CSDN博客
程序员,当你写程序写累了怎么办。 - 王福朋的专栏 - CSDN博客
在基于对话框程序中使用WM_KICKIDLE消息 - ruo_gu的专栏 - CSDN博客
用C++写Java Style程序 - 薛笛的专栏 - CSDN博客
Oralce中,DDL语句为什么不能回滚 - 飘然的专栏 - CSDN博客
AGPS简介 - kv110的专栏 - CSDN博客
OpenMAX简介 - shenbin1430的专栏 - CSDN博客
Android flinger - simmer_ken的专栏 - CSDN博客
windows 命令 - orangeman1982112的专栏 - CSDN博客
JNDI概述 - tanghongru1983的专栏 - CSDN博客
指针 - syhhl007的专栏 - CSDN博客
变量命名 - yszwn的专栏 - CSDN博客
什么是PLL - JasonCao的专栏 - CSDN博客
VC积累 - cherryt的专栏 - CSDN博客
fms技术 - wanglilin2000的专栏 - CSDN博客
关于numeric_limits - qianlong88的专栏 - CSDN博客
gcc - sportmanmanman44的专栏 - CSDN博客
什么是模式?什么是框架?软件为什么要分层?【转】 - ☆星云╭⌒╮的专栏----学会和自己独处思考,和他人交往 - CSDN博客