信息发布软件,b2b软件,广告发布软件
标题: Delphi程序点与面的结合应用你不能错过这次交集的机会 [打印本页]
作者: 群发软件 时间: 2017-8-15 01:29
标题: Delphi程序点与面的结合应用你不能错过这次交集的机会
本帖最后由 群发软件 于 2017-8-15 01:32 编辑
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 版本。大家可以根据自己的
具体情况选择。
随着Internet/intranet的发展,多层应用和分布式瘦客户数据库应用程序逐渐得到广泛应用。在多层应用的开发方式中,Delphi提供了Midas构件,第三方提供了Asta 、Midware等。经过使用,相比较而言,Asta所提供的构件易学易用方便灵巧,客户端程序无须任何数据库引擎或动态连结库即可方便的实现多层应用,且客户、服务器可实现实时信息传输。可以说,Asta为普通程序员提供了无须专门培训即可成为复杂多层应用程序开发高手的简单途径。
1. 认识Asta
象普通的Delphi构件一样,在Delphi环境下安装Asta即可看到该页标上有AstaClientSocket 、AstaClienDataset 、AstaServerSocket 、AstaDataSet 等构件,其中关键是AstaClientSocket 、AstaClienDataset 、AstaServerSocket。其中,AstaClient由一个AstaClientSocket 和至少一个AstaClienDataset 组成。AstaServer的核心是AstaServerSocket。Database可以是现在流行的任何数据库产品,如Sybase 、Informix 、MS-SQLserver等。
2. 如何实现多层应用
Asta本身带有两个例子服务器程序,一个是BDEserver,另一个是ODBCserver。这两个服务器程序设计的很完善,稍加改造(汉化)即可直接使用。我们使用BDE服务器。 本例以Paradox本地数据库为例,说明如何开发客户端软件。
2.1 运行BDE服务器程序,出现数据连结窗口,弹开组合框选择别名BDEDEMOS,确定。
2.2 进入Delphi环境,建立新应用netapp.dpr,窗体上分别放置AstaClientSocket1、AstaClienDataset1。AstaClientSocket1的Adress属性填入服务器程序所在机器的IP地址。若服务器程序在同一台机器上,则IP地址默认为127.0.0.1。Port属性与服务器程序端口一致(若服务器程序未作改动此值为9000,当然也可选用其他数值)。AstaClienDataset1的属性与一般数据表Ttable相同,首先选择DataBasename属性,然后选取tablename。最后把Active 设为true(相当于执行了SQL语句:Select * from [tablename])。本例中tablename选取employee.db。
3. 把结果表现出来
同一般数据库应用程序一样,在窗体上放入Datasource1,其Dataset属性设为AstaClientSocket1,放入DBGrid,其Datasource设为 Datasource1,则简单客户程序就完成了。
运行此程序即可看到数据表格。此客户端程序无须任何动态库即可在客户端运行,是完全的瘦客户。需要注意的是,AstaClientSocket的ConnectAction属性有多种选择,分别规定了客户端到服务器端的连结状况,大家可分别试试看有何结果。至于安全性设置、实时信息传递,可参阅随机帮助文件。
作者: ufo50200 时间: 2017-8-17 23:34
,真心的说
作者: huangge 时间: 2017-8-18 05:39
话能买这么多模板挺好的。
作者: huaxue98 时间: 2017-8-19 10:42
服务要好,会继续合作的!
作者: jh134724 时间: 2017-8-20 15:04
要的功能全部测试完毕。非常要强调的是感谢技术指导的耐心。行业模块一定要加大研发力
作者: brt02 时间: 2017-8-21 17:06
,服务热情,完美解决了问题,非常感谢~
作者: 123 时间: 2017-8-22 14:37
计的不错。
作者: 西充 时间: 2017-8-22 20:28
您的帮助,优质服务,五星级别
作者: nidalma001 时间: 2017-8-23 00:39
7號跟77號都很幫忙。我們一直在努力
作者: nidalma001 时间: 2017-8-27 11:55
非常到位,很不错的卖家。帮我远程搞定。非常感谢
作者: 乱世扶稣 时间: 2017-8-30 16:45
店家非常热情不懂的耐心解答好非常满意
作者: lnzhanghao 时间: 2017-8-30 23:22
非常好,与卖家描述的完全一致,非常满意卖家的服务太棒了
作者: qiaozong01 时间: 2017-9-1 08:38
学习了,谢谢分享、、、
作者: x201323 时间: 2017-9-2 08:23
情,设计的非常棒,很负责任,挺满意,下次装修在来你们家哦
作者: jzgsjt 时间: 2017-9-3 04:37
速度真快,插件很丰富,值得推荐。
作者: jh134724 时间: 2017-9-4 15:39
此一游,记住我的名字。嗯,谢谢老板。。
作者: weipinzongmeng 时间: 2017-9-4 17:19
么懂就来这里,客服技术好热诚
作者: anleeycn 时间: 2017-9-7 23:33
好,物流快
作者: jh134724 时间: 2017-9-8 13:01
模板物超所值!!!!!
作者: a5206662 时间: 2017-9-9 11:58
的效果非常好买家也非常耐心还有专门的技术员全程教操作非常满意的一次购物祝卖家生意兴隆
欢迎光临 信息发布软件,b2b软件,广告发布软件 (http://postbbs.com/) |
Powered by Discuz! X3.2 |