快速原型程序开发
快速原型程序开发
曾几何时有没有想过您管理的程序可以实现下面这些功能:
- 收藏曾经编写过的程序模块,不断丰富您的软件库
- 利用收藏的模块1分钟快速构建应用程序
- 免除开发程序辅助功能的困扰(比如读写文件,读写网口等等),集中关注要实现的功能
- 模块接口统一,可以重复使用
- 给别人使用你的模块也无需改动代码
也许下面这些想法可以帮助到您
代码可以使用git,svn程序进行版本管理,那我们曾经写过的众多程序是否也可以通过某个程序管理起来呢?答案是可以的。
作者作为多年码农在工作中除了要写线上程序,附带的还会写很多实验性质的,工具类的程序,这些程序都会在当时使用一段时间,但是一段时间后再看就不知道写的是啥或者直接找不到又或者是又要写一个工具,其中用到了之前程序的部分功能,该怎么办呢?
作者这里就设想这些程序是不是可以通过模块的方式管理起来,每个模块只有一种单一的功能,然后通过编辑的方式连接各个模块组成一个可执行程序或者是一个功能更强大的模块。
为了实现以上功能需要做什么?
基础模块建设
首先模块通过动态库的方式提供
基础模块的开发需要定义模块功能,定义模块输入输出;
这里就需要统一模块输入输出格式(比如使用protobuf作为输入输出),函数格式(比如定义统一的输入输出参数),除此之外还需要提供模块描述文件来描述该模块对外提供了那些功能。
多个模块的组合工作
这个就是我们说的重点了,如何把模块连起来?
通过配置文件描述模块间的执行顺序?
这样是可以的,但是有这个繁琐的配置功夫还不如自己重新实现一遍呢,而且还容易出错。
为了不出错并且快捷高效,我们就需要使用程序去做这个工作,程序总是能高效无误的完成你给它的指令;这里我们就需要使用图形化的方式配置模块间的执行流程,比如这样(以下使用数学模块的加法和sin函数绘制曲线):
如何运行编辑好的“程序”
编辑完配置文件之后就需要一个程序按照配置文件中的描述按顺序执行了,这里就是需要一个核心程序组织数据结构并执行基础模块内容(其中编辑器也需要用到)。
加入我
没错,我正在开发这样的一个软件,并且初版程序也已经写好,但是这只是一个开头,它还需要海量基础模块的支持,核心库算法和架构的优化等等,如果您有时间和兴趣不如一起建设它_