本文描述了一种作者设想的编程模式,以及为方便这种模式所设计的编辑器。模块化编程模式指的是将“模块”作为基本单元进行程序设计。一个模块是一段代码的集合,这个模块概念上要比传统意义上的编程基本单位“文件”要小一些,具体来说,一个模块对应一个类的声明,或者一个函数的定义。
关于这个设想本身
这个设想是我在近期进行C++(目前我只会C++和Pascal两种主流语言,还学过一点BASIC)编程时发现主流IDE都没有解决的一个问题,那就是:这些主流IDE将一段很长的代码(包含很多类的声明及函数的定义)放到一个文件里面,这样查找某个特定的代码段会或多或少的有些不便。软件工程的思想我只有一些初步的了解,但是我觉得软件工程的一个思想就是把问题模块化,通过将一个大问题分解成若干个小问题,如果一个小问题还不是“一目了然”的话,那么将这个小问题继续分解,直到最后的小问题“一目了然”了。但是通过我最近的观察体验,C++很多库文件和头文件很难做到一目了然,因为文件往往太长了,如果之前不仔细阅读文档的话,是很难“一目了然”的。因此我冒出了一个想法能不能将文件这个单位在细分一下,再细分成很多模块的话,每个模块只是一个类的声明或是一个函数的定义,这样是不是能方便许多呢?
当然,单单是这个想法可能要遇到许多问题,要是没有问题的话,直接每个文件包含很少的代码岂不是将所有问题都解决了?这显然是远远不够的,因为,那样的话会产生太多的文件难以管理。况且,这样直接改变直接改变程序设计的工作模式肯定不为所有的程序设计者所接受。因此,我设想仅改变IDE的编辑器部分,然后与编译器和调试器做尽可能的兼容&