摘要: 有容乃大。海洋是江河的容器。内存是数据的容器。窗体是各种可视非可视控件的窗口。主EXE是插件们的容器。用TPanel, TScrollBox等容器布好界面的局,其它表单/非表单录入界面就在这些容器里面让它动态生成。也无须采用纯动态的方法来生成所有界面,实际操作时可能是动态生成+静态拖放相结合的方式。 阅读全文
posted @ 2010-03-10 16:08 delphi中间件 阅读(585) 评论(0) 推荐(1)
摘要: 应用开发框架不一定要是插件的框架使用插件的应用开发框架很好插件是包,而包不一定是插件一个包就是一个工程,一个插件就是一个工程,一些插件组成了工程组插件的粒度可以细也可以粗,细到可以一个窗体界面封装成一个插件,具体插件的粗细需要权衡插件可以是可视的也可以是非可视的 阅读全文
posted @ 2010-03-10 15:38 delphi中间件 阅读(351) 评论(0) 推荐(0)
摘要: 上续上节的原数据概念。。。。。。界面大体分为表单录入界面/非表单录入界面/树形界面。。。。。。因此,可以抽象出与之对应的根据原数据生成表单录入界面/非表单录入界面/树形界面的方法。在整个项目中统一使用这些方法来动态生成界面。高效,界面风格高度统一,界面可适应变化。像基本信息的——客户资料、商品资料,进销存流水单据的——入库单、出库单,都要分别建立其原数据的模板。原数据的模板与之一对一。要改变客户资料界面就改变客户资料模板即可实现,其它以此类推。进销存的流水单据可以抽象成单据头和单据明细,与之对应的是设计一个单据主表和单据明细表。一个单据要有俩个界面的模板:单据头模板和单据明细模板。 阅读全文
posted @ 2010-03-10 15:03 delphi中间件 阅读(580) 评论(0) 推荐(0)
摘要: 对象根据原数据动态生成,改变原数据,根据原数据动态生成的对象的属性也随之改变。可以把原数据保存在数据表中,或者文件中。软件系统运行的时候读取这些原数据,然后动态地生成一些对象。在管理软件里面,我们习惯性地叫数据字典。为此会专门设计一个数据字典的数据表来保存原数据。通过软件设置改变就是数据字典数据表里面的原数据。模板,大概是c++的叫法。无论怎样,数据字典,原数据,模板保存的都是对象的原数据,原数据——对象赖之以生成。应用开发框架只有实现了原数据,并且对象是根据原数据动态生成,才能做到真正的以不变应万变——开发各种不同行业应用软件。纯以静态地拖放控件、静态地关联属性或者事件代码的方法是适应不了应 阅读全文
posted @ 2010-03-10 14:27 delphi中间件 阅读(458) 评论(0) 推荐(0)