- 论坛徽章:
- 17
|
本帖最后由 jimmy-_-lixw 于 2013-10-27 19:22 编辑
一如既往支持CU的活动。
程序设计中模块化,这种方法适合任意一种程序开发语言的。模块化的程序设计思想是相通的。
模块化设计,便于把一项大的复杂的工作简单化.比如一个大的复杂问题,我们把它分成几个模块来解决,每个模块解决这个复杂问题的一部分.这样只要每个模块设计好了,然后把所有模块组装在一起就行了.这样做,容易发现问题,如果不模块化,一旦出现问题,我们要找到问题很困难,模块化以后,由于每个模块实现一个子功能,所以对于问题定位比较容易;其次,可以重复使用模块,避免重复劳动,一个模块可以被多次使用,也便于标准化每个功能;最后升级方便,我们要升级某项能能,只需升级某个模块就行了,这样不容易出错,效率也提高了.
模块化的程序设计,将功能分解,降低之间的耦合性。从而,为了替换某个模块达到质量或效率的提升,就不会改变整个结构,只需要改相应的模块。工作量就会明显减少。这就是好处! 当然,这也是有前提的,也就是前期的设计要花费很多工时,同时,这种设计多半不是一次性完成的,有经验的人可能修改次数少一些。
合理的设计,保证封闭和开放与效率的平衡。既在一定程度上能保证易于修改,也就是易于优化和扩展,也在一定程度上保持良好的性能。
模块化程序设计有很多优点。
举个例子:
如果一本书没有章、节和段落,学习起来该有多么困难。将复杂任务和主题分解为更便于管理的部分,是使它们更容易处理的一种方法。同样,计算机程序也可以分解为小的子程序,或模块,而这些子程序或模块可以分别进行开发和测试。这种方法就称为模块化程序设计。
模块最重要的属性是它们应该尽可能的独立和自包含。另外,一般将它们设计成执行一个特定的、定义好的函数,它有一个入口点和一个退出点。同时,模块常常很短和高度内聚的。
不管对于开发者还是用户来说,小的、自包含的单元都更易于设计和理解底层的逻辑。模块化程序设计使开发更方便,这是因为每个模块都可以独自得以完善。事实上,对于大型软件项目,不同的程序员可以只负责各自的组件。模块化设计也使调试和测试程序更加容易,因为错误更容易隔离开来。最后,程序的维护和修改更加方便。这主要是因为可以开发新模块来执行额外的任务,然后将其集成到现有的、组织良好的架构中。
尽管所有这些属性都是我们使用模块的理由,而与数值工程问题求解相关的、最重要的理由是,可以对有用的模块库进行维护,以便以后在其他的程序中使用。
总而言之,模块化程序设计可以提升软件的架构水平,同时又能提升程序设计的可重用性,控制程序设计的复杂性。
|
|