在程序开发,尤其是桌面程序的开发中,有相当多的一部分程序是操作工程与文件的。详细的讲,这些程序通常需要在其中建立一个或多个工程,在每个工程中建立若干个文件,通过编辑工程和文件达到一定的目的。 在编写这类程序的时候,我发现这类程序拥有共同的特点,并且拥有许多重复性的界面和代码。通过对这些特点的抽象已经对常用代码的提取总结,可以构建一个开发工具,用以迅速的开发此类程序。
正如上文的描述那样,ProjWizard可以用于快速的开发基于工程文件的程序,它是一个用于快速开发特定类型程序的工具包。 总体上来讲,该工具包提供了一个标准的桌面级界面,通过该界面可以进行程序-文件的一般性操作。例如新建工程、新建文件、文件的复制粘贴、重命名、属性查看、增删改等常见操作。 通过接口抽象的定义了文件与工程,通过指定的规则实现文件与工程,即可实现特定的工程文件逻辑,如文件的编辑与工程的存取。 通过对配置文件的配置,可以对工具的细节进行进一步调整,比如具体的插件的位置、界面的图标、可新建文件的种类。通过对这些配置进行调整,可以打造一个专属的应用程序。 ProjWizard实现了文件存储与编辑的分离,在开发过程中,开发者可以仅对文件的逻辑进行开发,而不需要关心文件如何存储。该开发包提供了默认的,基于硬盘的持久化存储方式,以及基于内存的调试时存储方式。如果上述存储方式对开发者来说是足够的,那么开发者甚至不用考虑文件如何存储,仅针对文件的编辑逻辑进行开发,即可完成整个应用程序的开发。 综上所述,ProjWizard可以使基于工程文件的程序的开发者从繁琐的界面开发、文件逻辑开发等无关紧要的工作中解脱出来,进而直接对工程与文件的逻辑进行开发,大大提高开发的效率。
ProjWizard工程包含不同的子模块,每个子模块拥有自己的功能
子模块 | 主要功能 |
---|---|
projwiz-api | API包:提供了开发工程以及文件接口所需的类的最大能的实现,以及若干中开发用的模板。 |
projwiz-core | 核心包:实现了该工程的逻辑,配置的解析、界面的构造等一系列基本逻辑。 |
projwiz-launch | 启动器包:提供了多种启动程序的方法,用作程序的入口。 |
projwiz-plugin-preset | 预设插件包:提供了最常用的工程、文件的预设,如文件夹、文本编辑器等插件。 |
该项目是maven项目,具体的用法同其它的maven项目一样。 在Download选项中点击 Source code,下载源代码之后,使用maven指令进行编辑。
mvn install
请在项目的 pom.xml 中插入依赖
该项目正在开发中,依赖的插入方法在之后会给出。
请参考ChangeLog.txt