基於COM/DCOM組件技術的Web-based多媒體教學軟件的設計

摘要  本文通過分析COMDCOM組件技術以及Web-based交互式多媒體教學軟件的特點,提出了基於組件技術的Web-based多媒體教學軟件模型,並着重討論了COMDCOM技術在實現Web-based多媒體教學軟件中的多媒體信息整合、時基媒體同步控制、教學策略管理中的應用,最後簡單介紹了利用COMDCOM技術對多媒體教學光盤的Web化。

【關鍵詞 組件技術;COMDCOMActiveX;多媒體

 

組件技術是近年發展起來的一種優秀的軟件重用技術。採用組件開發軟件就像搭積木一樣容易,組件是具有某種特定功能的軟件模塊,它幾乎可以完成任何任務。目前,主要的組件技術有COMDCOMCORBAJavaBean幾種。隨着網絡技術的發展,組件技術在應用程序開發和Web信息發佈中得到廣泛的應用。同時,也爲Web-based交互式多媒體教學軟件的開發提供了一個嶄新的技術手段,尤其是在實現Web多媒體信息整合、時基媒體的同步控制、教學交互等方面。可以說,組件技術在網絡中的應用是對面向靜態媒體爲主的HTML置標語言的一個有力的補充,也是開發高質量的Web-based交互式多媒體教學軟件優選的解決方案。考慮到國內計算機教育應用的特點及水平,下面以微軟的COMDCOM組件技術爲基礎,探討其在Web-based多媒體教學軟件開發中的應用。

一、COMDCOM組件技術

COMDCOM組件技術是由Microsoft公司與DEC公司於1995年提出的,COM代表Component Object Model(組件對象模型),而COM代表Distributed Component Object Model(分佈式組件對象模型)。COM模型用於異質網絡和操作系統中創建、使用和加入可重複使用的組件對象,理論上,這些組件對象可以互相通訊與交互,而與它們的語言、分佈及原始平臺無關。COM規程包括一套標準API、一個標準的接口集以及COM用於支持分佈式計算的網絡協議。而CO模型則是一套用於分佈式環境中的COM對象,在DCOM環境中,位於一個網絡上的COM對象能與位於另一個網絡上的COM對象進行通信。爲了便於理解,可以把COM看作是某種(軟件)打包技術,即把它看作是使軟件的不同部分按照一定的面向對象的形式,組合成可以交互的過程和一組支持庫。COM對象可以用C++、JavaVB等任意一種語言編寫,並可以DLL或作爲不同過程工作的執行文件的形式來實現。使用COM對象的客戶端,無需關心對象是用什麼語言寫的,也無需關心它是以DLL、還是以另外的過程來執行的。

ActiveX則是Microsoft遵循COMDCOM規程而開發的用於Internet的一種對象鏈接與嵌人技術(OLE)。ActiveX是從複合文檔技術OLE成長起來的。OLE最初發布的版本,只是瞄準複合文檔,但在後續版本OLE2中,導入了COMCOM是應OLE設計者的需求而誕生的。其基本的出發點是想讓某個軟件通過一個通用的機構爲另一個軟件提供服務。對於Web-based應用而言,它提供了使組件嵌入到Web頁面以擴展交互功能的應用機制。

二、Web-based多媒體教學軟件的結構及特點

爲了對Web-based交互式多媒體教學軟件的結構及特點有一個清晰的認識,首先分析一下傳統教學軟件和多媒體教學光盤的結構特點。在這裏所說的傳統教學軟件主要是指CAI發展初期用高級語言編寫的基於字符界面的框面式CAI教學軟件。傳統教學軟件和多媒體教學軟件在結構上基本上是封閉式的。一個軟件主要由教學內容、教學策略管理邏輯及用戶界面幾個部分封裝而成,軟件的用戶對象面向個人,以實現個別化教學爲主,師生間無法實現通訊,如圖1所示。

jiyu-COM1.gif <?XML:NAMESPACE PREFIX = O />

1  傳統教學軟件和多媒體教學光盤的結構

儘管藉助於一些多媒體教學網絡,實現了教學信息的廣播,但限於網絡帶寬的原因,在這種教學環境下的教學信息傳播以單向爲主,缺乏真實的交互環境,難以實現師生間的雙向交互。目前,大部分學校在網絡環境下應用這類教學軟件的主要形式也只是以課堂演播爲主,如進行一些電子板書、操作演示、情景創設和過程觀察等。這類軟件在設計上大多沒有考慮到網絡應用的問題,如向學生提供網絡通訊的操作界面等。Web-based交互式多媒體教學軟件主要是由HTML語言描述,通過JavaJavascriptBrowser Plug-insActiveX等技術來實現交互功能的網絡教學軟件。這類教學軟件較好地實現了教學信息的網絡通訊和學習者間的學習通訊問題,在網絡環境下具有良好的自適應性。其結構如圖2所示。

Web-based交互式多媒體教學軟件在結構上與傳統的教學軟件不同,軟件吵的教學內容、教學策略邏輯、交互界面幾個部分可以分佈在不同的主機上,具有分佈處理的能力,它們相互間通過TCPIP協議進行通訊。學習者根據自身的需要,可對教學內容與教學策略邏輯進行挑選與重組,以實現學習的個性化。並且,學習者在學習的過程中可以通過E-mailBBS、電子白板等手段很方便地與教師或其他同學進行討論與協作。

jiyu-COM2.gif 

2  Web-based交互式多媒體教學軟件的結構

三、基於COMDCOMWeb-based多媒體教學軟件的軟件模型及特點

根據Web-based交互式多媒體教學軟件和COMDCOM組件技術的特點,可建立圖3的軟件模型視圖。在這一模型中,Web-based交互式多媒體教學軟件在邏輯視圖上可劃分爲三層:教學內容層、教學策略管理層和學習者交互層。其中:

1)教學內容層包括集成了各種媒體信息的Web資源;

2)教學策略管理層包括教學管理邏輯代碼,由組件來實現,組件間的通訊則通過接口實現;

3)軟件可在支持TCPIP協議的Intranet/Internet下運行,交互界面以Web瀏覽器爲基礎;

4)教學內容、教學策略管理、交互界面各層間通過網絡進行通訊、相互調用;

5)教學內容和教學策略管理邏輯代碼可分佈於網絡的不同主機;

6)教學內容層的Web資源和教學策略邏輯代碼層的組件是一種可供共享與重用的對象;

7)軟件可根據不同的教學目的在教學內容層與教學策略邏輯代碼層進行軟件的重組,有很強的適應性;

8)由於DCOM組件具有分佈處理能力,基於這一模型構建的軟件能在低配置的機器環境(即“瘦”型客戶機)雖運行,所以特別適合基於校園網、Internet的各種遠程教學、協同學習。

jiyu-COM3.gif 

3  基於COMDCOMWeb-based多媒體教學軟件的結構視圖

四、Web-based多媒體教學軟件的技術實現

COMDCOM組件技術是從微軟件的OLE發展起來的一種軟件重用技術,採用的是面向對象的廣泛,支持面向對象的各種特性。對擁有OLE基礎的人而言,掌握COMDCOM並不難,特別是微軟提供了一個極好的工具――活動樣板庫ATLActive Template Library),可用來創建DCOMCOM對象。通過ATL COM AppWizardVisual C++可生成大多數後臺處理代碼,如代理和存根模塊代碼,創建必的要COM類。通過ATL Object Wizard,你可以選擇要插入的COM對象類型,配置對象的屬性,如線程模型、界面類型,然後由該Wizard根據你的配置生成C++代碼。,Microsoft的開發工具是高度可視化和高度自動化的。許多工作都是自動完成的,因此不用知道多少具體的技術細節就能很容易地進行開發。特別是隨着ActiveX控件的推廣,ActiveX控件的開發工具也逐日增多。由於ActiveX不依賴於語言,所以常見的可視化開發工具基本上都能構築、配備ActiveX控件。最常用的有VisualC++、DelphiVisual BasicVisual J++等。

下面就如何利用COMDCOM組件實現Web-based多媒體教學軟件中的多媒體信息整合、時基媒體同步控制、教學策略管理等功能作一探討。

1.多媒體信息整合。儘管HTML提供了一些針對在WEB頁內嵌入多媒體對象的符號,如HREFIMGEMBED等,但相對一個交互式的多媒體教學軟件而言,這些符號所能支持的多媒體對象是遠不能滿足要求的。如果通過ActiveX技術,便可以大大增強WEB對不同類型的多媒體信息的整合能力。例如,通過ActiveMovie控件在Web中嵌入一段MPEG電影:

OBJECT ID”ActiveMovie”WIDTH160 HEIGHT=120 CLASSID= “CLSID:05589FA1 –C356—11CE—BF01—00AA0055595A”

<PARAM NAME=”FileName” VALUE=”myMPEG. Mpg”>

<PARAM NAME=”AutoStart” VALUE=”1”>

<PARAM NAME=”ShowControls” VALUE=”1”>

<PARAM NAME=”ShowDisplay” VALUE=”0”>

</OBJECT>

又如,使用ShockwaveActiveX控件把Director交互電影嵌入到HTML文檔中:

<OBJECT classid=”clsid: 166BIBCA—3F9C—11CF—8075—444553540000”

codebase =http://downloal.macromedia.com/pub/shockwave/cabs/direetor/sw.cab#version =6,0,0,0ID=credits WIDTH=496HEIGHT=308.

<PARAM NAMEsrc VALUE=”Movies/test.dcr”>

</OBJECT>

2.時基媒體的同步控制。由於HTML是一種面向靜態媒體的置標語言,依靠TML語言本身是無法使Web上的多媒體達到同步化的。儘管環球網協會W3C已在19986月發佈了同步化多媒體集成語言SMIL,但在目前SMIL還沒有得到廣泛支持的情況下,要實現與時間有着強烈依賴關係的時基媒體的同步控制,例如要在Web上同步回放圖、文、聲、像各種媒體元素,還得依靠現有的編程技術來完成。藉助於組件技術,可以把時基媒體的回放程序編譯成一個AcitveX播放器,然後通過把這一播放器控件嵌入到Web中從而實現對時基媒體信息的控制。

3.教學策略管理。通過組件技術,可以對學習者的學習信息進行跟蹤記憶、實施學籍管理、提供學習路徑及建議、進行教學評價等教學策略管理。其基本思想是:通過VCVBDELPHI等可視化編程環境,把複雜的教學策略管理代碼封閉成ActiveX控件,然後把它嵌入到web中,通過這些控件來採集學習者的學習信息,並把採集到的數據如學習內容、學習進度、評價效果等保存到數據庫中,通過對這些數據的進一步分析處理,動態響應學習者的交互操作,並建立起學習者的學習模型,從而實現教學的智能化和學習的個性化。

五、多媒體教學光盤的Web

多媒體教學光盤具有豐富的多媒體信息、複雜的教學策略管理代碼。所以,要實現多媒體教學光盤的Web化要解決:(1)多媒體信息的Web整合;(2)教學策略管理代碼的ActiveX組件化;(3)多媒體素材的壓縮處理等幾個方面。多媒體信息的Web整合,可以通過FrontPageHotdog等網頁製作工具完成,其中HTML不直接支持的媒體可以通過插件、ActiveX(針對IE)等技術實現,如要在網頁中整合Director交互動畫,可通過Macromedia Director Movie ControlDirector電影整合到網頁中去;教學策略邏輯代碼可通過流行的可視化編輯工具如VBVC++、DELPHI等重寫,然後生成ActiveX控件,最後嵌入到網頁中去,從而實現教學策略控制;而多媒體素材的壓縮處理,可以採用Shockwave for DirectorShockwave for AudioFlash Movie等技術對現有素材的加工處理,然後通過支持壓縮素材回放的ActiveX Player實現其在Browser中的回放。值得一提的是,Windows98已在系統中內置了Shockwave for DirectorFlash Movie兩種交互動畫的ActiveX回放組件,大大方便了Web-based交互式多媒體教學軟件的製作。

六、結束語

在以組件式軟件(ComponentWare)爲導向的軟件開發大潮中,COMDCOM組件技術良好的技術繼承性、衆多的構築工具、對網絡通訊的徹底支持爲開發靈活、功能強大的Web-based交互式多媒體教學軟件提供了強有力的技術手段。日益信息化、網絡化的社會呼喚智能化與網絡化的教學軟件,在教學軟件邁向網絡化與智能化的過程中,COMDCOM組件技術將以軟件技術的DNA這一形式推動着教學軟件開發技術的飛速發展。

發佈了18 篇原創文章 · 獲贊 3 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章