Flash大型ActionScript編程編程經驗之談

來源:互聯網
上載者:User
編程   用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了。



相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。