亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Flex下的RIA開發(fā)

        2009-04-29 00:00:00王正容
        中小學信息技術教育 2009年3期

        目前的網(wǎng)絡教育應用多集中于Web開發(fā),由于Html語言本身的局限性,數(shù)據(jù)和數(shù)據(jù)的顯示往往捆綁在一起,特別是在基于表格的布局方式中,無法在Web中使用面向?qū)ο蟮某绦蛟O計思想,一個細小的改動往往會導致程序大部分代碼的重新編寫,程序的可擴展性和可維護性較低。同時,由于Html是一種描述性語言,要實現(xiàn)良好的用戶體驗,往往涉及大量繁瑣的Html和Script程序的編寫。本文對校園網(wǎng)絡應用開發(fā)中涉及的開發(fā)模式進行分析,并對RIA的開發(fā)技術Flex進行介紹。

        一、C/S結(jié)構

        C/S結(jié)構是出現(xiàn)較早的網(wǎng)絡應用開發(fā)技術。客戶端和服務器端之間通過套接字進行通信,根據(jù)傳輸層使用的協(xié)議,可分為UDP套接字和TCP套接字。其中UDP是不可靠的通信,常用于多媒體通信,而TCP提供可靠的傳輸,通常用于數(shù)據(jù)的傳輸。在該模式中,服務器和客戶端的軟件都由用戶自己編寫,包括套接字的建立、程序的內(nèi)存管理、異常處理等,開發(fā)技術上要求較高,投入較大,且在程序的健壯性上難以保障。C/S模式相對而言是較底層的開發(fā),因此在開發(fā)上,有較高的開發(fā)靈活性,可自定義應用層的協(xié)議、各種安全技術,為開發(fā)人員提供了較大的空間。因此C/S模式往往應用在安全性較高的復雜應用系統(tǒng)中。

        二、B/S結(jié)構

        瀏覽器/服務器模式是目前使用率最高的開發(fā)模式。其客戶端由瀏覽器(如IE)提供,服務器端通常為動態(tài)網(wǎng)頁技術,如PHP、Jsp、Asp.Net,服務器端對編寫的腳本語句進行解釋,形成Html文件發(fā)送給客戶端的瀏覽器,瀏覽器對Html進行解釋和顯示。

        其結(jié)構如下圖:

        由于HTML為解釋性語言,瀏覽器中所有的Html腳本及Script都以明文的方式存在,因此用戶可以查看到相關的腳本,應用程序的安全性較低。比如在網(wǎng)絡考試系統(tǒng)中,對考試時間、用戶的操作限制等,在實現(xiàn)上具有較大的難度。目前常見的解決方法是編寫COM組件通過瀏覽器調(diào)用,但由于COM的編寫又提高了程序編寫的復雜度。

        另外,由于Http協(xié)議是一種“拉”的協(xié)議,并且是無連接的,用戶的更新以頁面為單位,并且兩次請求之間是獨立的,頁面之間的數(shù)據(jù)傳輸雖然可以通過Session和Cookie技術實現(xiàn),但在程序的結(jié)構上容易造成混亂,因此在開發(fā)大型的應用程序時,B/S結(jié)構并不是好的選擇。

        三、RIA及Flex技術

        富網(wǎng)絡應用系統(tǒng)是針對B/S和C/S結(jié)構的不足提出的下一代開發(fā)模式,目標在于提高客戶端的用戶體驗。

        由以上可知,在C/S模式中,客戶端應用程序不依賴于其他軟件,可以任意訪問客戶端主機的任何資源,對網(wǎng)絡的通信可以任意控制,因此可以提供較好的用戶體驗。但由于C/S開發(fā)模式的門檻相對較高,影響了C/S模式的使用。B/S模式的應用依賴于瀏覽器的功能和Html的局限性,往往難以提供好的用戶體驗。用戶任何一次網(wǎng)絡通信,都是對整個頁面的重新請求,即便是相同的內(nèi)容,仍然需要重新傳輸一次,因而會導致較長的等待時間。其次,由于Html為標記語言,在動態(tài)效果的演示上存在較大的難度。比如,在電子白板的制作中,要求各個客戶端同步顯示白板的內(nèi)容,這對服務器端和客戶端的程序編寫都是一個相當繁雜的勞動。

        RIA的目標為使用一種開發(fā)技術,使客戶端的開發(fā)具有B/S結(jié)構的快捷和簡單,同時具有C/S結(jié)構的用戶體驗。

        目前RIA存在多種開發(fā)技術,如java applet、Flex、Avalon。由于java applet開發(fā)較煩瑣,在Flash出現(xiàn)后,java applet已使用得較少。下面僅對Flex進行介紹。

        Flex文件最終被編譯成一個.swf文件,也就是Flash文件,該文件以插件的方式運行在瀏覽器中,所有的數(shù)據(jù)通訊和顯示都在該Flash文件中完成,因此在表示層開發(fā)和數(shù)據(jù)通信上較傳統(tǒng)的Web開發(fā)有了較大的改進。

        1.數(shù)據(jù)通信

        RIA首先要解決的是網(wǎng)絡的通信問題。Http傳輸?shù)膯挝皇钦麄€頁面,也就是整個頁面的刷新。在Flex中,為了減少數(shù)據(jù)的通信量,將刷新限制在局部,而不是整個頁面。通信方式有如下三種。

        Socket:在服務器端可通過其他編程語言實現(xiàn)監(jiān)聽套接字,在客戶端通過建立套接字和服務器建立連接。套接字屬于相對底層的網(wǎng)絡通信開發(fā),適合于實時通信領域,比如聊天室等。

        Web Service:它是一個向外界暴露出能夠通過web進行調(diào)用的API集合,在客戶端可以通過調(diào)用這些API實現(xiàn)某些功能。

        Http Service:使用最為廣泛的通信方式。通過其可以發(fā)送Http的Get和Post方法。服務器以XML的形式將數(shù)據(jù)文件發(fā)送給客戶端。這種通信方式和傳統(tǒng)的B/S開發(fā)模式接近,不同的是,服務器只負責XML數(shù)據(jù)提供,而具體的數(shù)據(jù)顯示則由Flex完成。

        2.用戶界面層

        為了程序的可擴展性和可維護性,通常的應用系統(tǒng)在開發(fā)模式上都采用三層的結(jié)構:用戶界面層,商業(yè)邏輯層,數(shù)據(jù)庫層。在該模型中,由于Flex的actionscript提供了面向?qū)ο蟮某绦蛟O計編寫方法,可以很容易地實現(xiàn)邏輯層的功能,而數(shù)據(jù)層則可以通過相關的數(shù)據(jù)庫來提供支持,比如通過Http Service請求PHP文件獲取XML數(shù)據(jù)。

        在用戶界面層上,F(xiàn)lex以Mxml的方式提供了一組類似于VB的控件,并使用了事件驅(qū)動的程序編寫方法。

        通過以上兩點,F(xiàn)lex編寫的網(wǎng)絡應用極大地提高了用戶體驗。由于Flex對數(shù)據(jù)和腳本經(jīng)過編譯形成.swf文件,在一定程度上提高了程序的安全性。

        C/S模式提供了一種靈活的開發(fā)模式,開發(fā)人員發(fā)揮的空間較大,但開發(fā)難度高。B/S模式則是一種快速的開發(fā)方法,提供便捷的開發(fā)模式和發(fā)布方式,但由于瀏覽器和Html的種種限制,限制了其應用范疇。RIA則是二者的折中,在保持開發(fā)靈活性的同時提供開發(fā)的便捷性。雖然Flash player出于安全性考慮,無法訪問系統(tǒng)的所有資源,導致Flex在用戶體驗方面仍然存在極限性,但其實現(xiàn)了Web功能的極大擴展,為網(wǎng)絡的教育應用開發(fā)提供了新的開發(fā)技術。

        (作者單位:重慶市渝北區(qū)電化教育中心)

        国产高清av在线播放| av毛片一区二区少妇颜射| 日本免费一区二区在线| 狠狠躁夜夜躁av网站中文字幕| 亚洲第一页视频在线观看| 高h小月被几个老头调教 | 99久久精品国产片| 日本熟妇人妻xxxx| 洗澡被公强奷30分钟视频| 国产精品高潮av有码久久| 日韩av在线不卡一区二区三区| 亚洲丰满熟女乱一区二区三区 | 成人试看120秒体验区| 国产免费又色又爽又黄软件| 人妻中文字幕不卡精品| av在线播放亚洲天堂| а√天堂资源官网在线资源| 亚洲第一成人网站| 国产激情视频免费观看| 国内嫩模自拍诱惑免费视频| а√资源新版在线天堂| 夜夜爽一区二区三区精品| 国产女同一区二区在线| 一区二区免费中文字幕| 精品一区二区三区芒果| 亚洲色丰满少妇高潮18p| 日韩女人毛片在线播放| 91国内偷拍精品对白| 挺进邻居丰满少妇的身体| 精品久久久久久国产| 中文字幕日韩人妻在线| 一区二区三区最新中文字幕| 饥渴的熟妇张开腿呻吟视频| 亚洲av日韩av一卡二卡| 日本女优久久精品久久| 国产精品成人3p一区二区三区| 中文字幕福利视频| 蜜桃色av一区二区三区麻豆| 亚洲人成人无码www| 精品久久久久久中文字幕大豆网 | 精品国产亚洲亚洲国产|