<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Flex項目技術架構前的假想

    Posted on 2008-01-30 09:08 久城 閱讀(4285) 評論(4)  編輯  收藏 所屬分類: Flex&ActionScript
    最近接觸一個Flex項目,我一個新員工,接觸不到架構,只能在這里假想。

    背景:
    外包項目,已完成系統設計,畫面(所有mxml的Demo)基本完成。

    40多人,分8個小組作業。每一個小組一個組長,每兩個小組一個試樣負責人。上面還有幾層領導分別負責不同的工作,管事兒的是部長。

    作業內容包括詳細設計,編碼和測試。

    我的問題:
    項目進行十分緩慢,最大的問題就是技術框架未定。由于大家都是第一次做Flex的項目,沒有什么經驗,對于一個新手來說,要想做好詳細設計,首先要有編碼的概念,但是現在,我沒有。
    面對分到的模塊,我不知道數據是如何封裝的,是如何傳遞的,數據如何處理,在哪里處理,更重要的是,如何與數據庫交互。這些問題沒有確定,對于一個Flex新手而言,真的很困難。

    與后臺交互的分析:
    這里要感謝cimmicola對我的講解!

    1. 下策  直接采用flex的httpservice,服務器端手動的拼裝xml,或者使用webservice。然后在客戶端手動的解析xml。這是這幾天做Demo時的做法,我相信這樣項目最終不會這樣做的。這樣做,對Flex新手而言,開發的復雜程度較低,但是工程化程度也很低。

    2. 中策  使用自己的框架,已經帶有序列化消息轉發層,(不知道有沒有,但感覺這樣一個大公司應該會有),比如可以將java對象序列化成xml數據或者json,這樣可以直接通過httpservice來請求服務器端數據,避免自己拼裝xml。這樣的框架目前開源的也有很多,其中把java對象序列化成json數據的方法有很多人都寫過,在學習Extjs的時候,就用到過。以前一直不理解java為什么要序列化,現在才真正體會到一點點。

    3. 上策  使用hessian或者remoteobject。講講兩者的區別。hessian和ro都是基于二進制的序列化協議。即將服務器端數據對象,比如 java".net"php等轉化到某個2進制的數據,從而在客戶端再次反序列化成as 數據對象。并且這兩種方式都能直接暴露服務器端方法(通過配置),因此可以看作是直接請求遠程對象的方法那樣使用,當然這個過程仍然是異步的。因此他們的 好處就是,請求容易,服務端實現容易,傳輸速度快,數據量大,客戶端直接識別這樣的好處。hessian是開源組織的通訊協議,起源很早,而且實現的語言很多,甚至包含C++,ruby等。他并不是為flash而生的。java上的實現是以servlet形式實現的,因此他是以繼承自他的servlet這樣的框架規范,來控制你的返回值的序列化,從某種含義說,他仍然算是傳統web框架。因為開源,因此可以對他框架可以靈活修改。
    ro是基于adobe的amf通訊協議,當然現在也開源了,實現ro的有很多服務,比如最常聽說到的LCDS,或者他的開源簡化版BlazeDS,amfPhp,webrob等等。LCDS 是java實現,也是官方出品,自然功能最強大了,他的ro部分(這只是LCDS最基礎的功能)類似spring的aop,直接對配置的java類進行切 入,因此對于設計模式來說,他打破了傳統的web請求模式,純粹通過訪問一個messagebroker這個servlet來訪問java類。因此如果不 太容易接受新架構或者對新架構不能靈活改變的話,會有些麻煩,比如說,他獲取不到傳統request對象。當然這也是可以完全通過改造程序框架得到解決 的。

    最后
    項目還在進行中,我還在緩慢的學習Flex的過程中。
    可以感覺到領導們都很忙,而最底層的人卻很清閑,包括我,還有時間在這里寫BLOG呢。
    很想幫上忙,卻幫不上什么,只希望這個項目的技術框架早一些定下來。


    歡迎來訪!^.^!
    本BLOG僅用于個人學習交流!
    目的在于記錄個人成長.
    所有文字均屬于個人理解.
    如有錯誤,望多多指教!不勝感激!

    Feedback

    # re: Flex項目技術架構前的假想  回復  更多評論   

    2008-01-30 13:21 by 魚中魚
    在安裝Flex builder 的時候需要apach conifgura文件是怎么回事?

    怎么操作?

    麻煩了

    wangqianyfz@163.com

    # re: Flex項目技術架構前的假想  回復  更多評論   

    2008-01-30 13:36 by 咖啡屋的鼠標
    我的上一個項目就是用的第一種方法,然后用AS寫了一個底層通訊的類,總的來說代碼是比較清晰的,唯一的問題是前后臺的數據傳遞,Flex端不管是解析XML(偉大的E4X!)還是使用JSON對象都很方便,可是后臺就不太方便了。mapping那塊很麻煩,還對重構不太友好。或許可以考慮寫一個CodeGen來輔助。

    我個人是傾向第三種解決方案。試用了一下BlazeDS還是不錯的,省掉了很多麻煩。不過沒有在真實項目用過還不知道在細節上會不會有嚴重的問題。如果采用這種方式,我覺得像寫Servlet一樣寫一些門面類,讓Flex通過門面來訪問是比較穩妥的一個方案,不要暴露太多后臺的類給前臺。

    寫模塊的時候mxml寫view,as寫model和controller(必要的時候as也可以寫點view,因為編譯速度快),盡量減少代碼行數,不要寫沒用的類結構。較大而且獨立性比較強的模塊就用Module,Module直接寫在mxml中是沒用的,得使用ModuleLoader。

    # re: Flex項目技術架構前的假想  回復  更多評論   

    2008-01-30 13:46 by 久城
    @魚中魚
    沒遇到過這種情況,不知道你裝的是什么版本,如果你安裝的是FLEX BUILDER 3 BETA3的STANDALONE版本的話,一定不會有這個現象的。建議下載重新安裝一下試試。
    @咖啡屋的鼠標
    多謝指點!:)你也可以說是老手了,我還在不停的寫DEMO呢。別人也推薦我用BlazeDS,都說很好很強大,但最終項目用什么還是領導們說了算嘿嘿。目前項目view層的模塊化實現的挺好,如你所說的,mxml寫view,as寫model和controller,但是畫面的邏輯還是寫在view里。

    # re: Flex項目技術架構前的假想  回復  更多評論   

    2008-01-30 16:54 by 地球玩家
    框架有問題?!進www.cnflex.org看看吧

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     

    Copyright © 久城

    主站蜘蛛池模板: 黑人粗长大战亚洲女2021国产精品成人免费视频 | 亚州**色毛片免费观看| 久久久久亚洲AV无码专区首JN | 亚洲卡一卡2卡三卡4卡无卡三| 国产男女爽爽爽免费视频| 国产小视频在线观看免费| 爱情岛论坛亚洲品质自拍视频网站| 噜噜嘿在线视频免费观看| 国产专区一va亚洲v天堂| 日韩大片免费观看视频播放| 日本人成在线视频免费播放| 亚洲AV永久纯肉无码精品动漫| 亚洲色成人WWW永久在线观看| 67194成是人免费无码| 亚洲无码日韩精品第一页| 美女网站在线观看视频免费的| 丁香五月亚洲综合深深爱| 日韩精品无码一区二区三区免费| 国产成人精品免费直播| 国产AV无码专区亚洲AV蜜芽 | 亚洲日本VA中文字幕久久道具| 好先生在线观看免费播放| 亚洲大码熟女在线观看| 亚洲伊人久久成综合人影院| 最近免费中文字幕MV在线视频3| 日日夜夜精品免费视频| 西西人体大胆免费视频| 亚洲国产另类久久久精品黑人 | 97av免费视频| 一本色道久久88—综合亚洲精品| 日本不卡在线观看免费v| 久久久精品国产亚洲成人满18免费网站 | 国产精品久久久久久亚洲影视| 亚洲国产精品日韩专区AV| 在线亚洲午夜片AV大片| 免费福利在线视频| 亚洲日韩人妻第一页| 99热在线免费播放| 黄色免费网址在线观看| 亚洲国产精品久久久久婷婷老年 | 中国一级特黄高清免费的大片中国一级黄色片 |