快速开发平台的两种实现模式(转载)
2011-07-11 22:28
429 查看
从目前国内主流的开发平台看,主要有两种实现模式:引擎模式及生成源代码模式。引擎模式比较有代表性的是方正飞鸿平台(http://www.founderfix.com),生成源代码模式比较有名是的普元平台(http://www.primeton.com)
首先说一下引擎模式,大家可能对报表工具都比较熟悉,目前见到的所有报表工具都是属于引擎模式的。也就是说,通过报表设计器设计出报表模板,发布到报表引擎中,在运行时,你向报表引擎里传递相关的参数,如报表条件,报表引擎负责查询数据库,加工数据,然后以各种方式展现出来。在这个过程中是不需要开发人员编写代码的,这就是引擎模式。
开发平台也是类似,也就是说,利用开发平台开发业务系统时,不需要编码,只需通过WEB页面进行参数定制即可,这些参数存放在系统数据库或XML文件中。系统运行时,由引擎调用这些参数进行页面展现及业务处理。
引擎模式是一种先进的模式,被广泛用于组件的编写中。
基于引擎模式的开发平台,目前见到的并不多,主要原因是这类平发平台本身实现要求的技术难度较大。方正飞鸿平台(http://www.founderfix.com)是这类平台比较具代表性的一个成功的产品。
说引擎模式开发平台本身实现难度较大,主要是因为,开发平台不同于报表工具那样功能单一,作为一个开发平台,除了报表引擎,还需要有自定义表单引擎,WEB组件引擎,流程引擎,业务逻辑引擎等等,要能方便客户利用它定义出一个复杂业务系统。所以就需要充分考虑实现一个复杂业务系统可能需要的开发功能,进行高度抽象,并且对编程算法要求也相当高。
再说生成源代码方式。这种方式主要通过一个桌面式设计器来定义业务模块,附助生成源代码框架,然后用户可以在生成的源代码的基础上编写、修改自己的源代码,实现业务逻辑,包括生成、修改JSP页面。
所以生成源代码模式也可认为是一种代码生成器。
相对于生成源代码模式,引擎模式具有很大的优势:
由于不生成源代码,所以对开发人员的技术水平要求比较低,开发人员即使不懂JAVA,也可以方便快速开发,基本上懂sql就可以开发。
由于开发时,开发人员完全基于浏览器访问服务器进行参数定制,所以对于团队开发特别适合,特别是远程协作开发。
系统上线后,可以在线维护,也可以在线定制新的模块(如查询,编辑模块),不需重新编码,编译,发布。
相对于生成源代码类的开发平台,最大优势是方便升级,基于引擎的开发平台,由于参数是存在数据库中的,开发平台升级时,只需通过升级程序将这些数据升级处理一下即可,用户不需要做任何修改,即可以享有新版的所有功能。而基于生成源代码的,实现方式是:设计->定制业务模块->生成源代码框架 ->用户手工添加自己的代码。比如生成JSP后,用户需要在JSP基础上进行更改,这样就造成以后很难升级,因为新版的开发平台,生成JSP模板一般是要变的,比如增加很多功能,用户除非重新修改JSP文件,才能享有新增的功能。
当然引擎模式,也有它的不足,即处理一些引擎没有提供模板的特殊界面及复杂业务逻辑时不如生成源代码方式平台方便,因为对于生成源代码的,开发人员可以随意对生在的源代码任意修改,实现复杂业务。因为基于引擎的开发平台,还要有良好的可扩展接口,可以让开发人员通过编程方式实现一些复杂的界面及业务逻辑。这一点,方正飞鸿平台(http://www.founderfix.com)就做的不错。
首先说一下引擎模式,大家可能对报表工具都比较熟悉,目前见到的所有报表工具都是属于引擎模式的。也就是说,通过报表设计器设计出报表模板,发布到报表引擎中,在运行时,你向报表引擎里传递相关的参数,如报表条件,报表引擎负责查询数据库,加工数据,然后以各种方式展现出来。在这个过程中是不需要开发人员编写代码的,这就是引擎模式。
开发平台也是类似,也就是说,利用开发平台开发业务系统时,不需要编码,只需通过WEB页面进行参数定制即可,这些参数存放在系统数据库或XML文件中。系统运行时,由引擎调用这些参数进行页面展现及业务处理。
引擎模式是一种先进的模式,被广泛用于组件的编写中。
基于引擎模式的开发平台,目前见到的并不多,主要原因是这类平发平台本身实现要求的技术难度较大。方正飞鸿平台(http://www.founderfix.com)是这类平台比较具代表性的一个成功的产品。
说引擎模式开发平台本身实现难度较大,主要是因为,开发平台不同于报表工具那样功能单一,作为一个开发平台,除了报表引擎,还需要有自定义表单引擎,WEB组件引擎,流程引擎,业务逻辑引擎等等,要能方便客户利用它定义出一个复杂业务系统。所以就需要充分考虑实现一个复杂业务系统可能需要的开发功能,进行高度抽象,并且对编程算法要求也相当高。
再说生成源代码方式。这种方式主要通过一个桌面式设计器来定义业务模块,附助生成源代码框架,然后用户可以在生成的源代码的基础上编写、修改自己的源代码,实现业务逻辑,包括生成、修改JSP页面。
所以生成源代码模式也可认为是一种代码生成器。
相对于生成源代码模式,引擎模式具有很大的优势:
由于不生成源代码,所以对开发人员的技术水平要求比较低,开发人员即使不懂JAVA,也可以方便快速开发,基本上懂sql就可以开发。
由于开发时,开发人员完全基于浏览器访问服务器进行参数定制,所以对于团队开发特别适合,特别是远程协作开发。
系统上线后,可以在线维护,也可以在线定制新的模块(如查询,编辑模块),不需重新编码,编译,发布。
相对于生成源代码类的开发平台,最大优势是方便升级,基于引擎的开发平台,由于参数是存在数据库中的,开发平台升级时,只需通过升级程序将这些数据升级处理一下即可,用户不需要做任何修改,即可以享有新版的所有功能。而基于生成源代码的,实现方式是:设计->定制业务模块->生成源代码框架 ->用户手工添加自己的代码。比如生成JSP后,用户需要在JSP基础上进行更改,这样就造成以后很难升级,因为新版的开发平台,生成JSP模板一般是要变的,比如增加很多功能,用户除非重新修改JSP文件,才能享有新增的功能。
当然引擎模式,也有它的不足,即处理一些引擎没有提供模板的特殊界面及复杂业务逻辑时不如生成源代码方式平台方便,因为对于生成源代码的,开发人员可以随意对生在的源代码任意修改,实现复杂业务。因为基于引擎的开发平台,还要有良好的可扩展接口,可以让开发人员通过编程方式实现一些复杂的界面及业务逻辑。这一点,方正飞鸿平台(http://www.founderfix.com)就做的不错。
相关文章推荐
- 开发平台的两种实现模式
- 开发平台的两种实现模式
- 快速开发工具的两种实现模式
- 快速开发工具的两种实现模式
- 【COCOS2DX-LUA 脚本开发之十二】Hybrid模式-利用AssetsManager实现在线更新脚本文件lua、js、图片等资源(免去平台审核周期)
- .Net语言 APP开发平台——Smobiler学习日志:如何快速实现手机上的资源上传功能
- .Net语言 APP开发平台——Smobiler学习日志:如何快速实现地图定位时的地点微调功能
- .Net语言 APP开发平台——Smobiler学习日志:如何快速实现手机上的资源上传功能
- 【COCOS2DX-LUA 脚本开发之十二】Hybrid模式-利用AssetsManager实现在线更新脚本文件lua、js、图片等资源(免去平台审核周期)
- .Net语言 APP开发平台——Smobiler学习日志:如何快速实现按钮组功能
- .Net语言 APP开发平台——Smobiler学习日志:快速实现应用中的图片、声音等文件上传功能
- 实现基于ASP.NET MVC快速开发平台
- Silverlight企业应用快速开发平台框架设计(二)分析-平台实现重点是什么,要怎么做?
- 开发手记之实现web.config的快速配置(转载)
- .Net语言 APP开发平台——Smobiler学习日志:如何快速实现类似于微信的悬浮显示二维码效果
- 【COCOS2DX-LUA 脚本开发之十二】Hybrid模式-利用AssetsManager实现在线更新脚本文件lua、js、图片等资源(免去平台审核周期)
- C#.NET 大型通用信息化系统集成快速开发平台 4.0 版本 - 省市区数据权限的实现效果
- asp.net导出excel-一行代码实现excel、xml、pdf、word、html、csv等7种格式文件导出功能而且美观-SNF快速开发平台
- 文件批量上传-统一附件管理器-在线预览文件(有互联网和没有两种)--SNF快速开发平台3.0
- 【COCOS2DX-LUA 脚本开发之十二】Hybrid模式-利用AssetsManager实现在线更新脚本文件lua、js、图片等资源(免去平台审核周期)