1 EXTRA简介
互联网的快速发展和经济的全球化使得软件已深入、广泛地渗透到人类社会的各个方面,软件系统的应用规模和复杂程度迅速扩大。同时,社会对软件的需求也与曰俱增。当前,软件生产能力己难以满足社会对软件的巨大需求,软件产业迫切需要更优良的技术与支撑环境,以提高生产能力,适应社会发展的需要。
借此契机,Extra构件平台基于对web技术的高度概括,将零件、生产线和装配运行的概念付诸实践,为各行业目前的web应用开发提供高效、快速的web应用快速开发平台。
Extra构件平台是国际上第一个基于构件为核心的开发平台,同时Extra还是目前最快的web应用开发平台。Extra基于软件构件化、标准化、人性化、智能化;开发低成本、高效化、短周期;人员低要求。
Extra构件平台能够适应软件的不断变化,使软件开发做到所改即所见,是软件开发随需应变,从而使企业的IT系统更加具有生命力。
2 EXTRA开发效果
3 EXTRA特点
1. 项目开发高效化,快速开发,短周期,提高软件开发速度500%,缩短项目开发周期50%-70%,大大降低软价开发成本,同时软件开发人员数量可以减半!
2. 完全基于B/S技术,继承C/S优点,零客户端,解决目前.net和J2ee体系下面的开发工具的缺陷
3. 融合XML技术,用户不许懂XML,就可以借助我们的开发平台,开发出XML文件
4. 构件化,完全由构件组成的第一个开发平台,国内首创!
5. 标准化,界面层和应用层以及业务层和数据库层完全分开,特别适合团队和大型项目的开发
6. 开发,智能化的界面设计而无需编写复杂的代码,设计创建复杂的交互式web应用页面快速、简便
7. 独到的结构设计,系统具有更灵活的伸缩性
8. Extra继承并改善了以事件为基础的程序开发,使用户从C/S到B/S的迁移更加平滑和简单
4 EXTRA体系结构
5 Extra开发页面分析
Extra3.0(java版本)是基于构件技术,xml驱动的,下面的jsp页面无需编写一行代码,就可以实现非常复杂的表单,下面的有些功能,难以使用静态图片表示,这种开发方式,非.net和j2ee开发方式所能够比拟的。如下图:
6 Extra Dataset与.Net Dataset对比
.Net由于dataset运行在server端的原因,在client端无法实现rich client, 即使实现,也是由应用开发商自己实现,需要编写上千行的代码来控制复杂的表单,这是因为,当client的表单达到c/s结构下面的复杂程度时,Microsoft建议采用WinForm,因为.Net 适用于开发thin client方式的应用程序,所有的数据管理都是靠dataset和datasetreader来进行管理,同时.Net的组件都是基于server端的,而对于client端的组件,只能够是非数据组件,数据组件都是server端的,这样如果在客户端对数据控件进行管理,没有一个对象来进行管理,需要用户自己来处理,这个工作量可想而知。
Extra的dataset生命周期存在于server端和client端,对于server端的管理,不仅涵盖了.Net下面的所有功能,而且其它扩展功能远远超过.Net,通过我们的开发手册,您会发现所有的extra对象都运行在一种模式下面,即s/c,包括server/client,两种方式,这样就增强了client端的数据处理能力。Extra的构件基于大型项目的需求,将各种组件进行封装。同时扩展了html的属性,如:<INPUT id="dropdown_3" attrib="editor" dataset="dataset_employee" datafield="birthday" dropdown_mode="date">, 这是.Net和J2ee下面没有的。Rich client是我们的一大特色,同时也是zero client。
由于web技术的页面刷新,导致用户和系统之间交互的效率大大降低,这势必影响到信息化应用效果,针对这种局面,Extra通过独特的Client端逻辑,在很大程度上减少页面的刷新次数,减少Client与Server的频繁通信。从而最大可能的降低页面刷新的频率,使的用户和应用系统的交互效率得到提高,对于应用中的数据主从绑定、页面之间的绑定,特别在大型基于web技术的ERP、SCM、CRM等,大量页面元素的处理时,尽显其无比优势。性能处理,采用分批下载技术,和特殊刷新机制。页面执行效果远胜于.Net
7 Extra的基本构件
虽然企业Web应用的形式多种多样,但其实各种应用之间仍然存在着许多共性。Extra正是抽象出这种共性而形成的一套产品。Extra包含了下面的一系列构件,这组构件不但使用简单而且能够满足几乎所有的Web应用的开发要求。
Dataset(记录集)
记录集是一种用于存储数据的非可视化对象。它提供了一系列方便使用的接口和功能,Extra的Dataset包含了下面的各项功能:
提供对数据库中数据的访问接口。
提供灵活的数据提交机制,方便的将对数据的修改更新回数据库。
提供对数据字典的支持。
提供各种记录级和字段级的数据校验规则。
支持对大量数据的智能分批下载。
支持记录集间的主从绑定、子记录实时下载。
支持对记录的精确定位、模糊定位、过滤和排序。
支持对StoredProcedure的调用。
提供各种用户事件接口,以便用户自定义各种校验和提交规则。
Table(数据表格)
可与记录集进行绑定,用于现实和编辑记录集中的数据。数据表格拥有下列的主要功能:
提供对各种数据的多样化显示,自动辨别数据类型并选择相应的现实方式。允许用户自定义数据显示方式。
支持数据编辑功能。允许用户自定义编辑方式。
支持各种常用热键。
支持对统计栏的定义。
提供各种用户事件接口,以便用户自定义各种表格特性。
图表 1 数据表格的运行效果图
Editor (编辑器)
图表 2 各种下拉框编辑器
可与记录集中的字段进行绑定,用于显示和编辑记录集中当前记录的字段值。编辑器的主要功能如下:
提供各种表现形式,如:单行文本编辑框、多行文本编辑框、复选框、列表等。
支持数据校验规则。
支持mapValue。(mapValue是指利用值与显示值间的对照表,确定显示内容的技术。例如:根据逻辑值0和1显示“男”和“女”)
支持各种下拉选单。如:静态下拉选单、mapValue选单、日历选单、SQL数据选单、模糊查询选单、记录集选单、自定义选单等。
DataPliot (数据导航条)
图表 3 数据导航工具条
数据导航条是一组可以对记录集中的记录和数据进行操作的按钮。导航条实现的功能包括:移动当前记录的一组按钮、用于对数据翻页的按钮、用于支持数据编辑的一组按钮。
DataLabel (数据标签)
可与记录集中的字段进行绑定,用于显示记录集中当前记录的字段值。同时,DataLabel也提供了用户自定义接口,用户可根据自己的需要确定DataLabel的数据显示方式。
FieldLabel (字段标签)
可与记录集中的字段进行绑定,用于显示记录集字段标题。FieldLabel不但提供了用户自定义接口,而且可以根据绑定字段的属性自动确定不同的表现形式。例如:当该字段是非空字段时,FieldLabel会自动以不同的颜色提示用户。
Tree (树状列表)
用于实现树状的数据展现形式。Extra的树状列表为了方便用户展示记录集中的数据,显现了许多特别设计的功能。Tree实现的功能包括:
可以与多个记录集进行绑定并自动以树状的形式体现出来。
支持对树结点的添加、删除和编辑。
支持节点图标。包括常态图标、展开图标等在不同状态时自动切换图标的功能。
支持右键点选和各种常用热键。
提供完整的用户事件接口,使得对树德苏的使用可以更加灵活。
图表 4 强大的树状列表
TabPage (标签页)
图表 5 标签页效果图
用于实现类似普通视窗窗口中的标签业的构件。
Button (按钮)
用于实现含有附加功能的按钮。此按钮可与菜单进行组合绑定,并支持类似复选框的按下功能。
Menu (菜单)
可与任何一个页面可视对象进行组合,作为Popup时的菜单使用,又可与按钮进行绑定作为普通菜单使用。
图表 6 按钮和菜单
8 附件一:传统CS结构的程序开发效果:
图片来源:
http://www.24ins.com
9 附件二:使用Extra 开发的BS结构的程序开发效果