GForms开发平台

1.
开发平台概述


1.1. 产品概述


GForms开发平台让开发人员甚至非技术人员在短短几分钟内创建全功能的展现服务,让开发团队更加适应客户和市场的需求,从而提高客户服务和速度实现收益。

GForms提供展现服务可视化开发、部署、运行平台:

  • 1、开发平台:开发平台基于开放的、深受广大开发人员喜欢的Eclipse研发,可以与svn、cvs等版本控制器结合实现版本管理。通过使用GForms设计器能够快速构建和部署全功能的Web窗体应用程序。

  • 2、运行时:运行时包含各类GForms展现服务的转换处理,把xforms文件转换为html文件,也就是说运行时其实gforms文件是一个静态的html文件。静态文件就意味着客户端不用每次都到后端请求gforms文件,而可能缓存到用户浏览器中,不用每次都动态的去构建展现页面,提高响应效率及用户体验;

1.2. 我们使用的开放标准

云计算带来了全新的业务模式及商业机会,而云计算的核心是服务、集成,所以开放标准、开放架构非常重要。

同时我们认为未来的企业业务系统将更多的以SaaS云计算模式诞生,只有基于开放的标准才能保证企业业务系统能够迁移到云环境中,并产生增值。

开发平台所使用到的开发标准及开发技术如下图所示:

其中,Restful、AJAX及JSON为开发的技术或架构,其他的均为开放的标准。

我们的GForms开发平台完全实现了XForms
1.1标准,并为了加快业务系统的开发,我们还额外提供了更多的控件类型,如图、树等复合控件,同时为了方便展现服务开发及编程,我们额外还为编程包装了一些的强大工具组件,如对话框、向导等。

1.3. XForms标准

XForms是W3C组织所推荐的下一代在线展现服务标准(早在2003年10月14日就被W3C推荐),它吸取了W3C标准诸如:XML
Schema, XPath和基于XML的事件,XForms试图突破当前HTML的一些限制。

HTML标准存在的缺点:

  • 面向展现,混合数据和展现

  • 没有类型的,直接就提交到服务器

  • 严重依赖脚本(复杂展现脚本占到90%)

  • 设备单一

  • 弱数据模型,无法与现有的服务交互

难以管理,很难看到返回什么

XForms标准的体系架构如下图所示:

左边的图为标准的基本体系架构,从中可以看出XForms标准完全的实现了展现页面中的模型与展现的分离,右边图更加给出了数据通过submit操作提交到后端的数据格式为XML,并且得到的也是XML。

注:我们的GForms其实支持的格式不仅是XML,还支持JSON。

2.
开发平台功能介绍


2.1. 系统架构


为了不破坏开发人员的开发习惯,如现有的开发工具、技术体系及应用运行环境,GForms开发平台设计器基于Eclipse研发,同时开发人员可以沿用既有技术体系(如后端服务实现、前端样式渲染/展现逻辑控制,甚至可以直接使用jsp、html等技术),GForms应用其实就是一个web应用,最终会被部署到Web或J2EE服务器,如Tomcat、weblogic、websphere
application server中。

GForms开发平台使用开放的技术架构:设计器基于Eclipse,运行时基于J2EE,如下图所示:

2.2. GForms设计器


GForms设计器时创建及编辑表单的图形设计工具,提供可视化、拖拽式、直接预览的引人入胜的开发环境。

GForms设计器完全实现了xforms标准,是可视化的、拖拽的,非常简单容易上手的开发高效工具。

整个GForms设计器包括:

  • 控件面板:存放GForms所直接支持的、可拖拽的控件。

  • 视图:各种配置视图,如控件属性视图、XForms核心模块(数据模型、模型实例、提交、绑定、动作等)视图及web服务视图。

  • 视图配置属性:配置视图中各个元素的属性信息。

2.3. 控件类型

GForms提供41个开箱即用控件:17个基础控件、8个复合控件、11个扩展控件、6个图形控件及web服务控件,同时还提供对话框、向导、tooltip等通用组件。

同时为了方便展现服务开发及编程,我们额外还为编程包装了一些的强大工具组件,如对话框、向导、tooltip等。





基础控件与一个模型实例节点绑定,包括输入框、输出框、按钮、密码、标签、文本域、复选框、复选框列表、单选框列表、组合框、列表、日期、图片、上传、iframe、富文本及值域

复合控件:与模型实例的多个节点绑定,可以含有其他任意控件,包括按钮组、分组、分组框、表格、树、页签、重复容器、工件查看器

扩展控件:GForms对标准进行扩展的控件,使用场景相对较少,包括日历、评分、代码片段、进度条、web链接、颜色选择器、fieldset、滑动条、横向菜单、下载、上下文菜单等

图形控件几乎支持所有的图形类型,系列图、XY图形、雷达图、饼图、漏斗图、仪表盘

Web服务:使用后端提供的web服务,根据wsdl文件或web服务URL创建web服务展现


2.4. 控件建模

每个控件都提供丰富的配置项以满足不同的业务场景。

不同控件有不同的配置项,如文本域控件,可以配置文本域自身属性、事件、操作、格式化及高级属性等。

控件与模型实例的关联是通过控件的引用配置实现的,配置的值为xpath表达式,可以通过“选择”按钮弹出XPath编辑器。

2.5. GForms XPath编辑器

GForms平台提供XPath编辑器,辅助开发人员开发xpath表达式。

我们提供的XPath编辑器支持XPath1.0、XForms 1.1、GForms
1.0标准。

分为三个区域:选择区域、编辑器区域及问题显示区域。

其中,选择区域:

模型实例树:包含所有的模型实例数据节点,包括属性及元素,如果需要选择某个节点请双击或拖拽到编辑器区域即可。

函数树:包含所有的xforms1.0及xforms1.1所支持的所有xpath,每个函数具体使用说明请参考相关xpath手册。

操作符树:xpath所支持的操作。

设计器中的UI控件与模型实例是通过xpath进行关联的,我们为了降低xpath表达式开发难度,我们提供了一个可视化的xpath编辑器;

通过双击或拖拽上面3棵树中的节点到中间区域自动生成xpath表达式,同时,开发人员可以手动调整xpath表达式,如果编辑xpath的过程中存在问题,则会在问题区域给出错误提示。

2.6. 典型控件

本节列举几个常用的复杂控件,让用户加深对GForms开发平台的了解。

2.6.1. 树控件

研发时参考了JQuery
Ztree等流行的树实现,但是我们更加灵活,因为我们对后端服务没有任何格式要求,真正实现数据与展现分离,同时支持XML及json。

树的设计态如上图所示,点击预览后的效果图如下所示:

GForms提供的树控件具备如下特点:

  • 支持动态加载;

  • 支持JSON、XML数据格式;

  • 支持checkbox、radio;

  • 支持展现配置:连线、图片;

  • API及事件处理;

  • 对后端服务没有格式要求

2.6.2. 表格控件

GForms提供的表格满足各类应用场景需求,对比目前比较流行的jquery
flexgrid,我们提供了xml、json两种数据结构、支持数据在线填写、支持表格列锁定等重要功能。

表格的设计态如上图所示,点击预览后的效果图如下所示:

GForms提供的表格控件具备如下特点:

  • xml、json

  • 列冻结、右键菜单

  • 2种分页机制、ajax

  • 完善的API及事件处理

  • 表格列上下文菜单

  • 自定义toolbar

  • 展现表格及编辑表格

  • 列支持18种控件类型

  • 支持button group

2.6.3. 图形控件

在GForms中图形更加简单易用,支持json、xml格式,同时GForms开发平台所提供的图形区分为6种大类型,而每种类型图形支持100多项配置,足以应答各种业务场景。

一些图形样例如下所示:

2.7. XForms核心模块

XForms中的核心模块是展现服务的模型及控制部分,是控制中心,是减少或消除手动编码的核心所在。

>模型视图:管理展现服务中所有的数据模型、模型实例、绑定、提交及动作等。

>模型实例视图:在该视图中维护模型实例XML结构(其实还支持JSON格式)。

>绑定配置:用于定义数据的约束,包括只读、依赖关系、值计算公式、数据类型(介绍GForms所支持的数据类型:xsd+xforms数据类型+自定义类型):

>提交:是展现服务与后端服务数据交换的纽带,支持rest
api接口调用。

>动作:标准的16个动作+自定义的1个操作。可以直接通过配置使用,降低编程难度、消除重复编码。

2.8. web service支持

GForms开发平台直接对soap/http web
service提供支持,可以通过web服务的WSDL文件或web服务的URL来启动web服务开发支持。

第一步:选择或录入web 服务地址

第二步:选择需要构建的服务、端口及操作

当向导完成后,可以在web服务视图中对引入的web服务进行可视化管理。

通过从web服务视图中拖拽节点到设计器区域,上下web服务UI的构造。

2.9. 应用发布

可以提高应用调试效率,减少文件手动拷贝的繁琐工作,展现服务及GForms工程其他任意文件,包括jar包等的任何变化都会同步更新到远程的服务器上,实现快速调试。

3.
开发平台特点


非侵入式的开发平台、通过建模大幅减少编码、降低后期维护工作量:

  • 简单易用、可视化、模型驱动展现服务开发

  • 数据支持XML、JSON

  • 直接支持图形、表格、树等复杂控件,同时编程方式支持向导、对话框、提示等控件。

  • 支持在任何标准的J2EE中部署:Tomcat、weblogic、IBM WAS

  • 跨浏览器运行:IE8及以上、chrome、firefox、safari

  • 展现样式可以被轻松定制

  • 大量可用的API及事件处理

  • 提供大量资料文件,并提供功能相对完善的GFormsDemo应用供技术人员开发参考

  • 计算公式基于xpath表达式:可以用来轻松创建动态的 Web 2.0
    的表单界面,可以自定义验证器、计算器、表单提交动作和事件处理等。

4.
开发平台优势


GForms开发平台提供了一种富有吸引力、交互式的用户体验,能够快速、轻松地创建出功能丰富的展现服务,并且在质量控制方面既降低了成本,又提高了效率。

GForms开发平台优势如上图所示,主要有四方面的优势:

1. 展现服务可视化

随着云计算的发展,IT从业人员的形态将发生巨变,可能任何人都可以通过云计算平台开发自己的应用并产生收入,所以一个简单、快捷的开发平台非常关键。

我们提供可视化的拖拽式开发环境、提供配置化的展现开发,能消除开发人员之间的技术差异、理解差异,特别是能够快速响应需求变化、提高后续系统维护性。

可视化降低后期维护成本,在项目研发,特别是产品研发中,随着版本的增多,后期调整展现服务非常困难,开发人员总有“还不如重新做”的想法。

2. 展现服务理念

云计算的核心之一是服务,在云计算中,其实任何东西都可能成为服务,如大家所熟知的存储服务、计算服务、IP服务、web服务等,其实展现也是一种服务类型,是是可以成为交易的商品类型。

同时展现服务理念,能够让实现展现与后端业务服务的松耦合。

3. 模型驱动:

我们提供可视化模型驱动的展现开发,能够大幅度降低硬编码量,保守估计能够减少60%的硬编码工作量,编码量减少就意味着可维护性好。

4. 基于开放标准及开发技术

开发标准及技术意味着产品的成熟度高,有广泛的行业认可,同时也可以屏蔽私有标准的封闭性,GForms基于开放标准及开发技术,技术人员认可并且提高可维护性。

云计算带来了全新的业务模式及商业机会,而云计算的核心是服务、集成,所以标准、开放架构非常重要。

同时我们认为未来的企业业务系统将更多的以SaaS云计算模式诞生,只有基于开放的标准才能保证企业业务系统能够迁移到云环境中,并产生增值。

5.
我们的规划


目前只是一个开始,我们还在持续的研发、创新、完善中,GForms开发平台是我们的GPaaS发布的第一版版本,该版本主要提供展现服务开发、测试、部署及运行。

我们提供的GPaaS平台,初期是以application
development/application life cycle management (AD/ALM)
PaaS方式提供,为合作伙伴提供开发技术服务,支持合作伙伴开发出更多基于开放标准的应用。后期将与基础实施服务供应商合作伙伴一起实现aPaaS,并与广泛的合作伙伴一起打造PaaS运营生态链。

5.1. GPaaS平台设计及规划

应用开发平台所开发出来的应用全部基于开放标准及开发技术,之所以基于标准,是因为标准可以保证技术的可靠性及完备性,有更多的企业参与,也更能被广泛的开发人员所接受,同时,基于标准的服务更容易被广泛使用。

GPaaS平台整体上包括开发平台及运行时平台,其中:

一、开发平台

提供企业应用开发所需要的所有的开发工具,如展现服务开发工具GForms、业务流程建模工具、数据服务等。

二、运行时平台:

运行时基础组件提供运行时服务支持,包括各个服务引擎,如展现服务引擎、流程引擎、ESB引擎及服务引擎等。

运行时平台还提供运行时的管理平台,管理GPaaS平台的各类服务及云应用SaaS应用的运营情况。

同时,为了提供SaaS应用运营支撑,我们还提供云门户,供最终用户提供应用订阅及访问服务。

5.2. GForms开发平台版本规划

在即将发布的V1.1中,将提供与业务流程结合解决方案,开发人员根据该解决方案将轻松实现在业务流程中使用GForms作为流程人工任务的展现服务,并能实现展现服务于流程之间的数据流动。

当发布V1.2后,GForms将提供全方位的权限控制,精准控制展现服务的各个功能的授权。目前版本(V1.0)还不支持开发者自定义复合组件,通过提供复合组件定制,开发人员可以根据业务需要,定制与具体业务相关的复合组件,该复合组件可以添加到控件选择器中,可以被展现服务使用。

在V1.2中还将研发数据库发布为服务,为开发人员提供数据库服务建模,减少后端服务硬编码,可以轻松实现把数据库表发布为基于soap的web
service或rest风格web服务,简化数据库操作,大幅度降低开发人员开发工作量。

在V1.3中,我们将提供手机浏览支持、展现服务运行时国际化、GForms独立部署、代码动态构造GForms等重要功能:

1、手机浏览支持:基于GForms开发的展现服务可以不需要修改即可运行在智能终端,展现服务将根据智能终端的屏幕大小进行自调整。

2、展现服务运行时国际化:可以轻松的为展现服务提供包括控件label、js提示信息、配置信息等的全面运行时国际化支持。

3、GForms独立部署:GForms运行时独立部署,而业务web应用中不含有任何GForms文件,而只需要为业务web应用在运行时提供GForms的URL即可,GForms运行时提供XForms到html的转换、国际化、授权等服务。

4、代码动态构造GForms:某些场景下,需要动态的构造展现服务UI控件,在该需求下,“代码动态构造GForms”将变得很实用。

随着V3.0的发布,此时GForms开发平台已经基本达到GPaaS初期规划功能,后期版本将提供应用运营支撑。

6.
联系方式


www.ghpaas.com

电话: 13601178468

Email: [email protected]

时间: 2024-10-11 06:31:21

GForms开发平台的相关文章

全新的跨平台app软件开发工具——Lae软件开发平台

Lae是一款运行于windows的界面开发工具,具有所见即所得.开发跨平台.UI布局自由.机制简单.维护容易等诸多优点,可以开发同时运行在windows.Linux.MacOX.iOS.Android等系统平台的软件,windows桌面工具软件.管理软件.游戏界面;  linux系统桌面工具软件.管理软件.游戏界面; Mac OSX系统上桌面工具软件.管理软件.游戏界面:安卓系统的APP软件.2D游戏:iOS系统上的APP软件.2D游戏. 感兴趣的朋友请搜索知乎上的Lae软件开发平台介绍,或加入

Java EE开发平台随手记1

过完春节以来,一直在负责搭建公司的新Java EE开发平台,所谓新平台,其实并不是什么新技术,不过是将目前业界较为流行的框架整合在一起,做一些简单的封装和扩展,让开发人员更加易用. 和之前负责具体的项目开发不同,不能只是功能实现就可以,还需要考虑更多的非功能性需求,比如性能.安全性.易用性.可维护性.易扩展性.兼容性等等,因此有很多在实际项目中觉得方便易用的功能不得不因种种原因而舍弃:另一方面,也常常会偶尔有一些新想法.新构想,但因缺乏实践论证,也往往没有加入进来:此外,对于平台中已经添加的那些

Atitit.业务系统的新特性 开发平台 新特性的来源总结

Atitit.业务系统的新特性 开发平台 新特性的来源总结 1.1. 语言新特性(java c# php js python lisp c++ oc swift ruby  go dart1 1.2. 流行lib.frmawork  新特性 jdk clr framework 新特性 (jq   Servlet2 1.3. Ide 新特性( eclipse vs netbea jetbrain2 1.4. Vm  新特性 clr  jvm(jvm好像没有独立的版本号,继承在jdk里面2 1.5.

飞凌百套OK335xS-2开发平台免费申请

AM335X是TI(德州仪器)推出的一款功能强大的ARM Cortex A8内核处理芯片.作为TI(德州仪器)的官方合作伙伴,飞凌嵌入式基于该芯片陆续开发生产了三款工业级开发平台:335xD,335xS和335xS-Ⅱ.而作为全系产品中最新推出的335xS-Ⅱ开发平台,一经问世,便因为其小巧的尺寸(104mm*81mm),国际认证的品质(通过CE.FCC双认证),最具竞争力的性价比(整套仅售298元),和强大的真工业级性能(-40℃~+85℃ 的运行温度及抗电磁干扰能力)而受到广大企业和工程师的

UI标签库专题十三:JEECG智能开发平台 ckfinder(ckfinder插件标签)

1. ckfinder(ckfinder插件标签) 1.1. 参数 属性名 类型 描述 是否必须 默认值 name string 属性名称 是 null value string 默认值 否 null width string 显示图片宽(上传类型为Images时) 否 null height string 显示图片高(上传类型为Images时) 否 null buttonClass string 按钮样式 否 null buttonValue string 按钮文本 否 null upload

jplogic 快速开发平台开发案例其一

jplogic v1.0开发陆续更新,意在和广大网友分享交流,通过寻求合作伙伴,交流群376447127.下面是jplogic的关于知识库模块的部分功能,如下进行功能展示: 知识库主界面: 新增知识类别: 新增文档: 调整类别结构: 附件明细操作: 文档信息查看:(将上传的各种文本文件转化成swf格式,便可以实现仿百度文库在线阅读功能) 海量知识库文档高级检索(数据库检索.索引检索(全文检索))等功能. jplogic 快速开发平台开发案例其一,布布扣,bubuko.com

开发指南专题八:JEECG微云快速开发平台数据字典

   开发指南专题八:JEECG微云快速开发平台数据字典的使用 1.标签中使用数据字典 数据字典为系统中可能用到的字典类型数据提供了使用的便利性和可维护性.以下拉框标签<t:dictSelect>为例进行讲解 1.1. 标签参数 属性名 类型 描述 是否必须 默认值 typeGroupCode string 字典分组编码 是 null field string 对应表单 是 null id string 唯一标识 否 null title string 显示文本 否 null defaul

阿里云携手AppCan推“聚无线”移动开发平台

互联网行业的O2O大战愈演愈烈,巨头纷纷加紧布局,从地图.团购.音乐.社交媒体.生活网站到移动端支付,线下商机与互联网的结合越来越紧密,大移动生态圈的雏形已窥见一斑.在战线的最前沿,入口之争尤为激烈,一方面巨头希望获得消费者的倾心,实现利润升级.另一方面,作为应用源头的开发者也是巨头们争抢的焦点.开发者的追捧是操作系统.开发平台.延伸服务等生存的基石,是打通行业上下游的关键. 3月31日,阿里云宣布联合AppCan.高德.友盟等厂商推出移动开发平台"聚无线",这是阿里巴巴首次在移动领域

麦点商城系统开发平台

麦点商城系统开发平台,麦点商城系统定制开发,麦点商城系统软件开发,麦点商城系统开发平台 麦点商城系统开发 麦点商城系统找[帆度]:134-2220-2839(谢凡) 麦点商城系统平台开发 麦点商城系统定制 麦点商城系统平台搭健 麦点商城系统软件开发 麦点商城系统APP开发 互联网出现之前,品牌厂商或者零售商需要通过不断地扩展门店来尽可能地接触目标消费人群,互联网的出现,打破了空间限制,使得人们可以足不出户就能够买到各种各样的商品.互联网时代的商业逻辑已经从抢占"空间资源"转换为抢占&q