Flash大型ActionScript编程编程经验之谈
2008-04-02 10:53:30来源:互联网 阅读 ()
用action script RIA研发也有很久了。主要谈谈对flash RIA架构的数据交互的经验和想法。
最开始的时候,是使用的flash xml的方式进行交互。这种方式 是现在常见的,但是过于低级。 研发小于50个表的系统时候 还能够忍受。但是 假如研发大型的系统。每次 数据交互的时候都要写对应的 加标签和解析标签的,写了xml2Table效果也不大好。太繁琐了。感觉研发完全成了体力劳动。
后来,开始了flash remoting和 axis web services的研发,终于让体力劳动结束了。但是 感觉 flash remoting的效率高一些[二进制数据]。在系统开放性和系统效率 之间我选择了系统效率。
更有一个原因是axis在jbuilder下发布很方便。但是eclipse下没有找到那么好的插件,手工部署。而我又对jbuilder不感冒。所以青睐remoting的简单。
在于客户端的数据交互的时候,最开始,remoting提供了一个RecordSet,DataGlue,能够通过此 绑定在 mm的各种控件上,这样做似乎研发效率很高,也是mm推崇的方式。 但是研发时也碰到了问题:
1 mm的v2控件是十足的体积杀手[swf体积快速变大]。
2 本着mm提供的dataSet,需要 服务器端提供一个不占连接的 DataSet, 这个DataSet应该是类似asp.net提供的那些
DataTable,而且能够兼容xml格式的DataSet, 而jdbc中常见的只有一个不争气的resultSet,rowset也不尽人意。以前我就打算自己研发一个这样的dataset,但是在sun上说jdbc4.0马上就出来了。我就忍了。可是2年过去了还是没出来。
后来我的解决办法是:
1 我们team自己研发了一套控件来替代mm的控件。
2 自己写了DataTable,xml2Table,Xml2Object等DataSet类来交互。
这个时候,但是自己写的DataSet并没有 得到太大的应用。因为我们马上采用了hibernate。在客户端,我们也写了对应的POJO的 AS类。因此,客户端面对的是对象,不是Table,Array,Item这些东西了。在这种方式下,终于解决了困扰已久的问题,服务器端和客户端基本上都是完全的OO,整个一个C/S的研发方式。大型的程式 都能够系统地研发了。
我们的最终架构:
flash: MVC (M: AS DAO ;V: UIObject;C[system logic])
java: remote inferface business logic ORM DB
当然,因为速度上的考虑。有些地方没有像hibernate纯OO。还是用了比较脏的方式。当然项目研发就是这样。平衡胜于完美,可能以后会用ibatis吧。
再说一句,我对 Laszlo和flex一点都不看好,他让web研发又回到了jsp 时代.总体来说,struts,webwork不会马上应用到flash ria的。而且从longhorn的角度来说,以后没有c/s和b/s,只有c/s就是b/s了。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash