Flash大型ActionScript编程编程经验之谈

2008-04-02 10:53:30来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折


  用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
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: RGB颜色action自定义教程(3)—颜色渐变篇

下一篇: Flash动画制作技巧之如何掌控逐帧动画