M99家庭财账管理软件 软件说明.doc
《M99家庭财账管理软件 软件说明.doc》由会员分享,可在线阅读,更多相关《M99家庭财账管理软件 软件说明.doc(5页珍藏版)》请在三一文库上搜索。
1、M99家庭财账管理软件 软件说明文章最后保存日期:20-1-28前言:我们是pioneer studio的主要成员,决定开放M99的源代码。在编制家庭财账软件的过程中,我们曾经碰到过很多的挫折,现在展示在大家面前的这个作品也只是一个试验性的作品,离真正的使用还有很大的距离。我们的目的有以下几点:1. 对于delphi编程有兴趣的朋友可以通过这样的方法来加入到我们的开发小组,最终我们可以一起制作出质量较高的软件。2. 可以帮助刚刚开始学习编程的朋友们,少走一些弯路,为他们自己的程序提供一些思路。3. 提高整个中国共享软件、自由软件的水平。前些日子有一个家庭财账管理软件外界炒作的比较厉害,它的注册
2、费用是50元,太贵了。(最近看到该软件可以免费注册,因为不清楚具体情况,不作评论)。大家应该知道“红色风暴”,如此高质量的软件只买28元。我们想通过自由软件的一些开发模式和开放源代码的方法来使我们现在这个还很幼稚的软件慢慢强大。我们不会依靠买软件来赚钱,如果我们要赚钱,也是通过服务。主要编程思路:我们发现理财软件主要还是和数据库打交道,所有的操作归根结底都是对数据库的操作。我们用的是delphi,它对于数据库的操作功能还是很强大的,并且delphi的开发环境和其强大的功能可以说是windows开发平台中第一流的。本来我们想用类似于eport小组在“网页作坊”中用的插件技术,后来我们放弃了这个想
3、法,首先这样开发的工作量比较大,第二作为插件的开发者开始需要懂delphi,并且思路要完全符合我们制定的插件规范。我们现在的实现思路是这样的:1 对于基本的操作,指不涉及到除了主窗口以外的任何窗口,我们有一套经过抽象过的内部函数来组合完成这些操作,诸如打开数据库、状态栏显示信息和计算收支情况等。2 对于涉及到外部窗口的操作,有一套相对应的函数用来显示这些窗口和进行相应的处理,诸如显示输入窗口、显示查询窗口和完成查询操作等。以上两点大致的介绍了一下。下面继续介绍使用到的主要技术。软件整体结构:由于我们想通过比较好的程序结构达到较强的功能,特别考虑了分布式开发的情况,可以这么说,本程序的结构比较怪
4、,但是你理解了之后,就可以明白我们的苦心了。主程序main负责最主要的界面工作,包括生成所有运行时刻的按钮,将它们的功能挂入接口中。所有的数据库控件、数据表格控件都在main的上面。辅助单元yytools.pas主要负责解释所有我们称之为yy脚本的按钮要完成的实际动作,其中还包括一些内部使用的函数。Yytools有点像中间件的作用,它负责将yy脚本语言中的命令行部分(脚本语言中还有界面行部分)解释为实际的数据库操作。等到我们的sql解释器完成之后,yytools的作用就更大了。脚本语言。每个在主窗口上的按钮都有一个脚本语言。我们目前的设计是按钮和脚本语言一一对应,以后如果功能增加了,可以考虑菜
5、单和脚本语言的对应关系。脚本语言的规范在后面有专门说明。脚本语言是用notepad写的普通的文本文件,其中调用到的就全部是yytools中的函数。我们还在扩充脚本,以便实现新的功能,同时由于兼容性的问题,我们也有可能修改以前的脚本。目前的脚本还缺乏可编程性,不过我们将尽量增加可定制性的设计,做到因人而异。专用窗口。目前,对于输入、查询、帮助、关于有自己专用的窗口。我们设计了一套规范来完成各个独立的窗口和主程序也就是mian、yytools之间如何传递数值的规范,因此这些专用的窗口的设计只要在符合规范的前提之下,就可以随心所欲发挥了,并且可以几个功能一起开发,我们在原则上不允许修改开发专用窗口的
6、开发者修改main和yytools,窗口的挂入和一些特殊的处理需要在主窗口程序中改动的,那么就由写main和yytools的开发者负责维护。主要技术:A. YY脚本语言。我们可以在本软件中找到一个buttons目录,在这个目录里面,就是我们在主窗口内看到的所有按钮。这些按钮的功能就是由这些我们称之为yy脚本语言的script来完成的。后面有详细的yy脚本语言的规范,和其中调用到的函数说明列表。我们想通过这样的办法,来逼得自己程序模块化。在开发过程中,我们切身体会到了这样做给我们带来的好处。很多时候,我们只要调整yy脚本语言,就可以修改和完善功能,这样的工作只要在notebook中就可以完成了。
7、另外一些时候,我们修改了相应的脚本语言的解释器,于是这个按钮的功能就得到了提高。要说明的是,这个脚本语言是很不完善的,甚至它只能顺序执行,还称不上语言。By the way,之所以取这个名字,是因为我们两位主创人员的姓第一个字母都是y。B. 本地数据库。Delphi的数据库操作之所以强大是因为bde,但是bde带来的麻烦也不少。所以我们用了一个控件,可以完全替代ttable的功能,几乎没有什么特性上的损失,并且我们不再需要bde的包袱。它的全称是:HALCYON Ver 6.0。C. 数据表格。我们没有用delphi自己带的grid,因为给它增加功能太麻烦。在delphi的表格控件中,advs
8、tring grid是很有名的。我们现在的程序还只用到了一点点它的优秀功能。D. RX控件。有前苏联的高手编制的rx控件功能强大,并且开放源代码。我们在程序中用到了它的金额输入控件,在以后的版本里,还有可能用到其中别的控件。E. 字符串处理函数包。如果你用过jbstr这个字符串函数包之后,你会发现很多事情变得轻松了。这个函数库是一个叫做J.BENES的人写的,以dll的形式发行,所以可以用在很多语言中。同样,它也带有源代码。F. Express Grid。如果你以前知道一个叫做http:/ 的站点,我就是从那里找到express grid这个控件的。怎么说,它都是一个很出色的电子表格控件,尤其
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- M99家庭财账管理软件 软件说明 M99 家庭 管理软件 软件 说明
链接地址:https://www.31doc.com/p-5015158.html