很多编程能力比较强的人在编程过程中都会用到模块化编程的思想,但我每次编程的时候总是想到哪编到哪,不懂得如何进行模块化编程,程序如果思路比较简单还好,当程序比较复杂的时候就不知道怎么编写了,编着编着就会发现问题一大堆!所以现在非常的想学模块化编程的思想!想让各位大神指点指点,或者推荐本好书让我能掌握好模块化编程的思想.谢谢了,感激不尽!
实际上没有这样的书,你把问题想简单了。你缺少的是抽象的能力,注意这是能力,而不是知识。知识可以通过阅读获取,而能力需要的是自身的锻炼。
如同锻炼身体可以增强体力一样,不断思考,才能提高脑力。
呵呵,拿个项目,想象着把这件事情分给别人两个人做(你自己不用做),慢慢你就会了。
这是架构师的活,其实也没那么复杂的。
为什么要模块化?因为这样相似的代码只用写一次(模块),可以反复用。模块的特点是高内聚,低耦合,这很好理解,模块依赖外部的东西越多,就越难搬到别的地方用。
模块设计主要是看你的抽象能力,就是看哪些地方可以抽象出共同的逻辑和代码,形成模块。
一个主程序是有多个小函数组成的,当程序复杂时不妨把他分成一个个小块,慢慢的就会有长进
多看第三方代码,先看看别人是怎么做得,然后把自己之前的代码翻出来重新考虑设计,练习。这样就能提高
模块化就是将独立功能的代码独立出来,成为一个独立的函数或类,最好是通过参数的传递让这些独立的函数或类成为一个能适应较多程序的通用代码
对于较为庞大并且用途较为广泛的代码,也可以编写成DLL或EXE的形式供其它程序调用
这样模块化的程序在较多程序中被多次使用,BUG较少
模块化易于使用和修改
把共同的、通用的、单一功能部分抽取出来。
一般一个功能模块包含两个文件,一个头文件(*.h)一个函数实现文件(*.c), 一个模块实现一个功能。最后在主函数中直接调用各个模块,各个模块中最好不要相互调用,这样每个模块方便移植,编程不只是自己能够读懂,最重要的事方便他们阅读。
模块化、插件化,最NB的开源开发平台,首推JXADF