没有合适的资源?快使用搜索试试~ 我知道了~
RemObject+SDK+快速入门
4星 · 超过85%的资源 需积分: 3 18 下载量 118 浏览量
2015-01-20
09:44:59
上传
评论
收藏 921KB DOC 举报
温馨提示
试读
32页
RemObject+SDK+快速入门,帮助delphi新手有效地学习应用RemObject和SDK。
资源推荐
资源详情
资源评论
Introdution RemObject SDK
文/黄忠成 EMail:code6421@pchome.com.tw
前言
DELPHI 的 3rd-Party 组件数量之多,远超过其它的开发工具,其用途之广可说创下前所未
有的记录。这也为 DELPHI 程序设计师省下许多重新制造轮子的时间,令系统开发速度倍
增,同时减少了因实作码增加而使错误率升高。可惜的是 VCL 组件似乎都有着一个通病,
就是缺少完整的说明档!许多 VCL 组件甚至连范例都少的可怜,幸运的是 VCL 组件有个不
成文的惯例,那就是多数都会附上完整的原始码,这一点可以稍减其说明档不足的现象。
即便如此,说明档不足依旧对使用者造成相当大的困扰,时间就是金钱,在设计者探索原
始码时,时间也一点点的流失了。本文所介绍的 RemObjects SDK(以下简称 RO) 也不能例
外,由于这套组件的开发者只有两位,因此说明档一直都是相当短缺,有些地方甚至还有
描述错误的情形,但这些缺点却无法掩盖其崭新的创意与高延展性的设计概念,这也是本
文为何会出现在读者眼前的主要原因,RO 是笔者看过 VCL 组件中唯一令笔者感到惊艳的,
当然! 这只是笔者个人的感觉,对读者不见得是如此,不过多了解一样东西,于汝何损 ??
因此,细细品尝吧!!
PS:本文省略了讨论 Web Services 的基本知识部份,如果读者对于 Web Services 不熟悉,可
参阅笔者的另几篇文章。
参考文章
电子商务新纪元
电子商务新纪元 - 失落的章节
Interface Designing
如何取得 RO?
读者可至 http://www.remobjects.com 取得测试版本,正式版本的定价是 229 EUR,未来的
Enterprise 版 本 的 定 价 是 603.90 EUR , 这 两 个 版 本 都 附 上 了 完 整 的 原 始 码 , 目 前
RemObjects Enterprise SDK 版本尚在 Beta 中,此版本拥有许多新功能,除了加强的 RO 2.0
之外还有抽象化数据存取的 Data Abstract 组件组,协助除错的 Debug Server 工具,以及完
全使用 C# 写成的 RO.NET Client SDK。
PS:测试版本仅能运行于 DELPHI IDE 中,读者可利用 Project Group 来辅助运行 Server 端与
Client 端的程序。
PS2: RO 1.x 支持 DELPHI 5 、6、 7 Professional(DataSnap 部份需 Enterprise),Kylix 3 for
DELPHI。
What’s RemObjects SDK
随着各家厂商的强力背书与推销,Web Services 俨然成为未来分布式系统开发的主流架构,
但是 Web Services 至今仍然存在一些问题,其中有些是属于规格的问题,有些则是先天上
的限制,许多使用 Web Services 开发系统的人都会有一个困扰,那就是效率不高,其原因
很简单,XML 本身属于纯文字型态,加上必须依赖 XML Parser 剖析 XML 文件,在传输
与解译上都是造成效率不彰的原因,这是 Web Services 的先天限制,也是为了兼容性所付
出的代价。当然! 如果网络频宽够大,计算机速度够快,这些都不是问题。但事实是目前
的频宽与计算机速度还不足以胜任,这使得 Web Services 的应用面缩减不少,因此许多的
Web Servcies 开发工具都会提供将 SOAP 讯息压缩的解决方案,藉此减少网络传输时间。
另一个问题则是 Web Services 必须依赖网络通讯协议,以现今的情况来看是以 HTTP 或
TCP 两种网络通讯协议为主流,假如客户想将系统安装于一台计算机上(不管是何理由,或
许是因为节省金钱),Web Services 还是需要一个占用 Port,就实务上来看这并不是什么大
问题,但如果可以不占用 Port 岂不更好?? RO 就是这样一套组件,首先! RO 支持两种讯息
标准,一个是 SOAP(也就是 Web Services)、另一个则是 Binary(二进制讯息),支持 SOAP
可让其它支持 Web Services 的开发工具经由 SOAP 连上 RO Server,支持 Binary 可以让 RO
Client 以更快的速度与 RO Server 沟通,这比起将 SOAP 压缩后传递的效率高上许多,更令
人兴奋的是 RO 允许设计者混用这两种讯息协议,也就是说只须撰写一个 Server 并放上这
两个讯息组件,这一个 Server 就可以同时服务使用 SOAP 与 Binary 讯息的 Client 端。有趣
吗 ?? 更 有 趣 的 事 情 还 在 后 面 , RO 支 持 HTTP 、 TCP 、 Windows
Message、DLL、UDP(2.0)、MSMQ(RO Enterprise) 多种通讯协议,并且允许设计者混用这
些 协 议 (DLL 是 例 外 ) , 简 单 的 说 ! 就 是 写 一 个 Server 同 时 允 许 Client 端 以
HTTP、TCP、Windows Message、UDP、MSMQ 方式连结,再加上之前所提的两种讯息标
准,这个 Server 是不是更有趣了呢??呵!还没讲完呢,RO 不但具备这些特色,同时也允许
设计者撰写自己的讯息协议与通讯协议,其步骤也不复杂,这些都是 RO 出色的主要原因。
另 外 RO 也 支 持 Kylix 3 for DELPHI , 这 代 表 着 使 用 RO 可 撰 写 Linux
Server/Client , Windows Server/Client , 日 后 的 RO Client SDK.NET 支 援 .NET
Framework、Mono、Ractor,及 Compact Framework,你能想象这种情况吗??
PS: TCP 与 Windows Message 同时只能支持一种讯息格式,如 SOAP 或是 Binary,原因是
这两种协议并没有类似 URL 的概念,HTTP 则无此限制,另外 RO Enterprise SDK 将会支持.
NET Binary(.NET Remoting) 与 RO Binary 两种格式。
初试 RemObjects SDK
谈了这么多空话,现在是时候试试 RO 的能力了,这一节中以一个简单的计算器为范例
(唔!!这是 RO 送的,不要都不行….),在安装完 RO 后组件盘上会出现 RemObjects SDK 页,
如下图所示:
其中分为五类,见下表:
组件 功能 类别
TROBinMessagw , TROSOAP
Message
讯息组件,用来处理讯息。 讯息类
TROIndyHTTPServer,
TROIndyTCPServer,
TROBPDXHTTPServer,
TROBPDXTCPServer,
TROWinMessageServer
Server 端 组 件 , 用 来 接 收 讯
息 , 支 持
HTTP、TCP、Window Message
与 DLL(DLL 不需要组件,只需
export 一个 function 即可)
Server 类
TROIndyHTTPChannel,TROI
ndyTCPChannel,
TROBPDXHTTPChannel,
TROBPDXTCPChannel,
TROWinInetHTTPChannel,
TRODLLChannel
Client 端组件,用来送出讯息
到 Server 端 , 支 持
HTTP , TCP , Windows
Message 与 DLL。
Client 类
TRODataSnapConnection , TR
ODataSnapProviderPublisher
支持 DataSnap 运作的组件,是
的,RemObjects SDK 允许使用
DataSnap 运行于其上。
DataSnap 支援
TROWebBrokerServer
Web Broker 支持,允许任何架
构于 Web Broker 之上的网页程
序 直 接 挂 载 RemObjects SDK
Server。
Web 支援
表中所提及的组件除 BPDX(这是一组 Internet 组件,名为 DXSock,与 Indy 有相同功能,
但在效率与稳定性上都比 Indy 强,不过在易用性上却远不及 Indy,而且她属于商业型组件,
不过当读者购买 RO 后不须额外付费就可使用这套组件)、WebBrokerServer、DLLxxx 之外,
其它都会在本文中运用到。
在对这些组件有一个概略的认识后,现在就可以开始撰写一个简单的程序了,首先请开启
New Dialogs 对话盒,切换到 RemObjects SDK 这一页,其内有几个 Wizard 可协助设计者快
速的产生骨架程序:
下表是这几个 Wizard 的简单说明:
Wizard
说明
Apache 2 Shared Module Server Project
建 立 Apache 2 Shared Module 的 Server 程
序。
Apache Shared Module Server Project
建立 Apache 1.x Shared Module 的 Server 程
序。
DLL Server Project
建立 DLL 的 Server 程序。
ISAPI/NSAPI Server Project
建立 ISAPI、NSAPI 的 Server 程序。
RemObjects DataSnap Server Module
建 立 一 个 支 持 DataSnap 操 作 的
TRODataSnapDataModule。
Windows Executable Server Project
建立一个可独立执行的 Server。
表中除了 RemObjects DataSnap Server Module 之外,其它都是用来建立一个新 RO Server 项
目,这里请选择最简单的 Windows Executable Server Project,按下 OK 后会开启下面这个窗
口:
下表是这个窗口的字段说明:
字段 说明
Project Name
专案名称。
Service Library Name
Library 名称,在 RO 1.x 中这个参数的用途不大。
Service Name
Web Service 的名称。
Server Class
通讯协议,见 Server 类组件。
Message Class
讯息协议,见 Client 类组件。
Project Directory
项目存放的目录。
输入信息后按下 OK 就完成了骨架程序的建立工作了,这个程序已包含所有必须
用到的组件,接下来只需启动位于主选单上的 RemObjects->Service Builder 工具定义 Web
Services 的方法即可完成 Server 端的程序:
剩余31页未读,继续阅读
资源评论
- quida2017-09-07还可以,只是有点旧
凉茶君
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 农村信用社联合社计算机信息系统投产与变更管理办.docx
- 农村信用社联合社计算机信息系统数据管理办法.docx
- 利用SPSS作临床效度分析线上计算网站介绍-医学研究部统计谘.(医学PPT课件).ppt
- 利用Zabbix监控mysqldump定时备份数据库状态.docx
- 利用计算机解决问题的基本过程.doc
- 化工铁路通信工程总结.doc
- 北京大学网络教育软件工程作业.docx
- 医药公司(连锁店)计算机操作规程未新系统的自行按照旧制修改-新系统过制的编号加修模版.doc
- 医药公司(连锁店)计算机系统操作规程模版.doc
- 医药连锁门店计算机系统的操作和管理程序未新系统的自行按照旧制修改-新系统过制的编号加修模版.docx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功