使用delphi 开发多层应用(三)Delphi常用多层框架介绍

    目前在delphi 开发多层应用的框架基本上集中在以下几种,每种开发框架都有自己的优缺点,没有最好的,大家可以根据

自己的实际需求选择相应框架,我把我本人在使用几种框架的体会与大家分享一下。如有不对之处,可以拍砖。  

   1. DELPHI 自身提供的DataSnap

      从delphi 3 开始,delphi 自身就开始支持多层开发,后期的版本逐步加强三层开发功能,在delphi 6 以后,

把这一功能叫Datasnap,并且每个都有很多变化,包括DBExpress 的数据库访问、服务器的开发、传输协议都

在最新的delphi XE以后都大大加强了。下面是Datasnap 的架构图

 

同时在最新的delphi XE2 里面,增加了对移动操作系统的支持,直接生成

常见的移动操作系统的访问应用服务器的能力,包括iOS,Android,BlackBerry 等。在数据传输方面使用了开放的JSON

格式,最大限度增加与其他语言的互操作性,开发者不需要购买第三方控件就可以开发出来强有力的多层系统。但是这个框架也存在

一些缺点和问题:

        1).只能在最新的delphi 版本上开发,以前的版本无法使用,尤其是很多同学喜欢的D7;

        2).版本之间的变化比较大,升级到新版本后代码都要有所修改;

        3).服务器目前只支持windows 和mac OS X ,暂时不支持其他平台;

        4).系统自身相对比较封闭,不能充分利用第三方控件,最大限度挖掘系统的潜力;

        5).更新速度慢,基本上是跟随每个delphi 新版本发布才更新。

2.  RemObjects SDK 和Data Abstract 

    RemObjects SDK 和Data Abstract 在delphi 多层开发框架里面是鼎鼎有名, RemObjects SDK 用来

实现多层服务及访问,而Data Abstract 主要解决数据库的访问,由于RemObjects SDK 是Data Abstract

的一部分,因此购买时只要买Data Abstract就可以了。Data Abstract 除了有delphi 版外,还是.NET、

JAVA 和XCODE版。Data Abstrac 提供可视化的中间层数据访问设计,提供数据模式,提供脚本描述逻辑,

可以不夸张的讲,多层数据库中间层需要的功能,它基本上都有了。下面是Data Abstrac的工作原理图:

  

      这套框架最大的优点就是功能非常多,非常强,但是最大的问题是价格太高了,单个平台的版本

购买价格为899美元,以后每年的续订价为499 美元。同时由于他的功能太多了,以至于我们都有可能

迷失在他的功能海洋里面;),一般出现问题后,基本上自己没办法修改。最后一个问题是,它现在的重点放在了.NET

和JAVA, 很多语法和实现方式非常像C#, 呵呵,这一点应该不算是问题,只不过是让我有点不爽。哈哈!

 

3.kbmMW

     kbmMW 是一套短小精悍的delphi 多层框架,配合它的kbmMemTable 很容易设计出来多层数据库应用服务器,

  所有的功能都在一个包里。同时提供了客户端C,C#,JAVA,PHP 的支持。它支持负载平衡、失效恢复和代理。同时支持

 发布/订阅 模式的消息传输方式,大大提高了多层的效率.下面是kbmMW 的支持服务类型:

   

 kbmMW  基本上能够满足多层开发的各种需要,更新速度也比较快,我本人也是在使用remobjects  后转到kbmMW 上的,

当然这套框架也是有问题的,第一,可视化界面设计的非常丑,看看上面的图你就知道了。第二,使用这个框架对开发者有

一定的要求,因为它的配置都是需要自己定制的,经验不足的话,会出现一些怪问题。我最初时就是因为连他都安装不到IDE 放弃的,

最后从remobjects转过来时,慢慢研究了一天才搞清楚(呵呵,我自己的水平也太臭了)。

 

4.RealThinClient SDK

  虽然 RealThinClient SDK 也算是一套多层开发框架,但是严格意义上又有一些区别,首先 RealThinClient SDK 主要是使用

HTTP 协议实现数据传输的,其次对多层数据库这一块基本上没有直接支持,很多地方需要开发者自己写代码实现数据库功能。

但是这套框架最大的特点是效率比较高,非常稳定。它的远程函数实现也比较漂亮,减少了很多手工的错误,赞一个。

用它做动态webserve,也是一个不错的选择。因此多层系统数据库访问不是非常多的话,推荐使用。

下图为RealThinClient SDK 自带的webserver  的 demo运行图:

 

 

以上是目前delphi 开发多层系统的框架的简单介绍,需要更多了解的,可以到官方网站进行详细的了解。

另外 ,1、2、3 框架服务器使用的是indy 控件来实现网络传输的,RealThinClient SDK 是自己封装

Sock 来实现网络传输的。同时后三个都可以运行在D7 后的各个主要的delphi 版本。大家可以根据自己的

具体情况选择。

 

 

 

 

 

转载于:https://www.cnblogs.com/xalion/archive/2012/01/18/2325418.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一款轻量级的Delphi通用系统UI框架,基于MlSkin皮肤组件构建 功能特性(Feature): 框架UI界面设计简洁、轻量、时尚和风格统一,代码一看就懂,容易上手和维护 框架代码部分采用模块化设计,代码之间的耦合度低,旧工程项目的代码可以方便快速的部署迁移到此框架框架包含了一个模拟程序启动时初始化加载窗体界面 框架包含了一个实用的用户登录窗体界面 主界面使用了多标签样式来加载显示子窗体,标签支持单独关闭和拖动位置 在主界面左侧使用了多级功能列表的导航栏,有图标显示,可收缩和展开,都在一个独立窗体中易维护 包含了一个简洁大方的常规列表效果演示子窗体 包含了一个列表内容中有圆形头像、彩字和按钮的特殊效果的演示子窗体 包含了一些常用的按钮,部分按钮上支持角标显示,复制到其它窗体就可以直接使用 包含了一些常用的文本编辑框,基本上也是复制到其它窗体就能使用 包含了一些各类风格的文本标签、复选框、单选框、下拉框和简易列表的效果演示界面 包含了一个进度条加载任务的演示界面,里面还有几类不同风格的进度条的展示 包含了一套系统选项设置窗体(由多个子窗体组成),里面有一个通用的选项管理类代码可供参考使用 更多功能还会继续加入进去,已购买的用户可享受不限时间、不限次数的免费升级

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值