摘 要:網(wǎng)絡(luò)教學(xué)平臺是精品課程設(shè)計中極其重要的環(huán)節(jié),可實現(xiàn)精品課程中各種教學(xué)資源的共享,為教學(xué)資源應(yīng)用于教學(xué)提供良好環(huán)境。本文在對教學(xué)資源進行研討的基礎(chǔ)上,采用目前最流行的Java相關(guān)技術(shù),設(shè)計和開發(fā)了功能齊備、安全穩(wěn)定的網(wǎng)絡(luò)教學(xué)平臺。該平臺在教學(xué)中發(fā)揮了其作用。
關(guān)鍵詞:精品課程;網(wǎng)絡(luò)教學(xué)平臺;JSP;Servlet
中圖分類號:TP311.52 文獻標(biāo)志碼:A
Design and Realization of the Online Learning Platform Based on
Java Superior Class
HE Xiang-guang
(The Vocational College of Bin Zhou,Bin ZhouShandong 256603,China)
Abstract:The online learning platform is an important key role in design of a superior class,which can realize share of teching resource and provide the good environment for applying teching resource to teching.This paper exploited an safe and stable online learning platform based on the discussion of teching resource ,which adopted fashionable Jave thchnology.This platform play an important key role in teching.
Key words: superior;online learing platform;JSP;servlet
教育部《精品課程評審指標(biāo)》對網(wǎng)絡(luò)教學(xué)環(huán)境提出具體要求:“網(wǎng)絡(luò)教學(xué)資源建設(shè)已經(jīng)初具規(guī)模,并能經(jīng)常保持更新,具備運行機制良好的硬件環(huán)境,選編、制作了系列軟件資源。能滿足本課程的教學(xué)需要,在教學(xué)中確實發(fā)揮了作用”[1]??梢姡W(wǎng)絡(luò)教學(xué)平臺的建設(shè)是展示課程設(shè)計思想、體現(xiàn)和應(yīng)用各種教學(xué)資源以及保障資源安全的關(guān)鍵,是精品課程充分發(fā)揮示范性和輻射推廣作用的窗口。我院的《Java程序設(shè)計》課程于2008年被評選為山東省精品課程,目前正在努力爭創(chuàng)國家級的精品課程。結(jié)合該課程的建設(shè)過程,談?wù)勗诰W(wǎng)絡(luò)教學(xué)平臺設(shè)計方面的一些體會。
1 系統(tǒng)總體功能分析
如何將建設(shè)的精品課程服務(wù)于教學(xué),在教學(xué)中發(fā)揮其作用。以《Java程序設(shè)計》課程為例說明。
依據(jù)本課程培養(yǎng)目標(biāo),分析學(xué)生通過本課程的學(xué)習(xí)應(yīng)達到的職業(yè)能力,要具備這些職業(yè)能力,必須靈活定制學(xué)生的學(xué)習(xí)資源,這些資源要以生動豐富多彩的文字、圖表、圖像、動畫、游戲、影片和錄像片等各中各樣的形式直觀地呈現(xiàn)在學(xué)生的面前,使學(xué)生視聽并舉,加深、加快感知和理解,為學(xué)生創(chuàng)設(shè)生動的學(xué)習(xí)情境。而網(wǎng)絡(luò)教學(xué)平臺為資源的展示與應(yīng)用提供了有力支撐,為學(xué)生提供最大限度的自主學(xué)習(xí)的空間,為學(xué)生之間、師生之間及院校之間的交流提供了便利。如下圖:
1.1 教學(xué)錄像
精心錄制主講教師的實時授課過程,供學(xué)生觀看,以便于學(xué)生更好的把握教學(xué)內(nèi)容。
1.2 電子教案
依據(jù)課程標(biāo)準(zhǔn),在了解學(xué)生基本情況的基礎(chǔ)上,結(jié)合教師多年積累的教學(xué)經(jīng)驗和形成的教學(xué)風(fēng)格,充分發(fā)揮教師個性、特點和才華,編寫出具有自身特色的電子教案,以方便學(xué)生的預(yù)習(xí)和復(fù)習(xí)、教師之間的交流。
1.3 多媒體課件
運用了Powerpoint、Flash及Photoshop等工具開發(fā)本課程全部教學(xué)內(nèi)容的多媒體課件,生動形象地展示了各個案例和實訓(xùn)項目。
1.4 虛擬開發(fā)
給學(xué)生提供虛擬開發(fā)環(huán)境,將企業(yè)真實項目的整個開發(fā)流程展現(xiàn)給學(xué)生,學(xué)生以游戲闖關(guān)的形式完成項目開發(fā)。
1.5 網(wǎng)絡(luò)課程
以生動形象的文字及視頻、動畫等形式展現(xiàn)課程內(nèi)容中重點、難點。
1.6 視頻動畫庫
以視頻、動畫等形式展示Java環(huán)境的安裝、部署,常用開發(fā)工具的使用技巧及項目開發(fā)的流程等。
1.7 課程作業(yè)
教師可在網(wǎng)上發(fā)布、批改及刪除作業(yè),學(xué)生可在線完成作業(yè)或下載完成作業(yè),將解答上傳。
1.8 單元自測
將每個單元的重點和難點以各種題型展現(xiàn)給學(xué)生,供學(xué)生自測。
1.9 在線考試
設(shè)置試題庫,題型有選擇題、判斷題、填空題、程序分析題及程序設(shè)計題等多種類型。教師可調(diào)用試題庫生成試卷,對試題類型、數(shù)量及試卷本身進行添加、刪除等管理,實現(xiàn)網(wǎng)上對學(xué)生綜合測試。
1.10 職業(yè)認(rèn)證試題庫
匯總歷年的職業(yè)資格認(rèn)證真題,如:SCJP認(rèn)證試題、全國計算機技術(shù)與軟件專業(yè)技術(shù)資格(水平)考試試題等,為學(xué)生考取職業(yè)認(rèn)證提供實戰(zhàn)環(huán)境。
1.11 討論區(qū)
實現(xiàn)老師與學(xué)生、學(xué)生與學(xué)生之間在線交流。老師可以提供一系列課程相關(guān)案例或項目,引導(dǎo)學(xué)生討論交流,增加對課程內(nèi)容的深入理解,提高學(xué)習(xí)的興趣。
2 系統(tǒng)關(guān)鍵技術(shù)分析
2.1 軟件體系結(jié)構(gòu)概述
目前存在Client/Server(客戶/服務(wù)器)和Brower/Server(瀏覽器/服務(wù)器結(jié)構(gòu))兩種主流網(wǎng)絡(luò)開發(fā)模式。Client/Server模式是以局域網(wǎng)為基礎(chǔ)的環(huán)境下展開應(yīng)用,受到地域的限制。Brower/Server模式是通過Internet進行通信,主要由瀏覽器、Web服務(wù)器、數(shù)據(jù)庫服務(wù)器三個層次組成,其本質(zhì)上是一種特殊的客戶/服務(wù)器結(jié)構(gòu),因其客戶端簡化為只講單一HTML語言的客戶軟件,因而簡化了客戶端系統(tǒng)的管理和使用,可以使管理和維護集中在服務(wù)器端。在這種結(jié)構(gòu)下,用戶工作界面是通過WWW瀏覽器來實現(xiàn),代替形形色色的各種應(yīng)用軟件。Web服務(wù)器負(fù)責(zé)接受HTTP查詢、修改等請求,然后根據(jù)請求條件到數(shù)據(jù)庫服務(wù)器獲取相關(guān)數(shù)據(jù),再將結(jié)果翻譯成HTML和各種頁面描述語言,傳送回提出請求的瀏覽器[2-3]。
本系統(tǒng)是以Internet網(wǎng)絡(luò)為使用平臺設(shè)計和開發(fā)精品課中的各種學(xué)習(xí)資源,這就決定了網(wǎng)絡(luò)教學(xué)平臺是基于Brower/Server架構(gòu)的。
2.2 系統(tǒng)實現(xiàn)技術(shù)
網(wǎng)絡(luò)教學(xué)平臺采用Brower/Server架構(gòu),實現(xiàn)的技術(shù)有ASP(Active Server Pages)、PHP(Hypertext Preprocessor)或JSP(Java Server Pages)。ASP是一個Web服務(wù)器端的開發(fā)環(huán)境,可以產(chǎn)生和運行動態(tài)的、高性能的Web服務(wù)應(yīng)用程序,但只能在Windows平臺下使用;PHP是一種跨平臺服務(wù)器端的嵌入式腳本語言,支持目前絕大多數(shù)數(shù)據(jù)庫,并使Web開發(fā)者能快速地寫出動態(tài)生成頁面;JSP是在Java基礎(chǔ)下實現(xiàn)動態(tài)頁面的開發(fā),解決了目前ASP和PHP的一個通病——腳本級執(zhí)行,采用了編譯后運行方式,大大提高了其執(zhí)行效率。
在綜合考慮穩(wěn)定性、安全性及與平臺無關(guān)等眾多因素情況下,本系統(tǒng)的實現(xiàn)基于了Java技術(shù),即采用了JSP、Servlet及JavaBean等相關(guān)技術(shù)。如下圖所示:
2.2.1 Java語言
Java是一種跨平臺的語言,在任何平臺上,只要有JVM(Java Virtual Machine),就能在不同平臺上執(zhí)行同一個Java程序。因為Java源代碼不是為一個特殊的平臺編譯的,而是在編譯后生成一種稱為字節(jié)碼(byte code)的特殊格式,這種格式是與平臺無關(guān)的。
2.2.2 視圖
視圖用于組織模型的內(nèi)容,它從模型那里獲得數(shù)據(jù)并指定這些數(shù)據(jù)如何表現(xiàn),即用戶看到并與之交互的界面。
網(wǎng)絡(luò)教學(xué)平臺給用戶提供的界面主要是JSP技術(shù)實現(xiàn),再應(yīng)用Flash、Photoshop及3D等工具實現(xiàn)用戶界面的美化和管理。JSP(Java Server Page)是由Sun公司推出的動態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn),它提供了在HTML代碼中混合程序代碼,由語言引擎進行解釋執(zhí)行的能力。嵌入JSP中的是成熟強大的Java代碼,客戶端請求JSP頁面時,代碼被首先轉(zhuǎn)換成Java源文件,再編譯成支持HTTP、FTP等網(wǎng)絡(luò)協(xié)議的Class文件(即Servlet),并由Java虛擬機執(zhí)行。這種編譯操作僅在對JSP頁面的第一次請求時發(fā)生,雖然首次調(diào)用需要幾秒的編譯加載時間,但后續(xù)請求只需調(diào)用服務(wù)器端緩存的Servlet就可以了,比每次請求都要解釋執(zhí)行的ASP代碼要快。
2.2.3 模型
模型代表應(yīng)用程序的數(shù)據(jù)和用于控制訪問和修改這些數(shù)據(jù)的業(yè)務(wù)規(guī)則,包括對業(yè)務(wù)數(shù)據(jù)的存取、加工、綜合等。當(dāng)模型發(fā)生改變時,它會通知視圖,并且為視圖提供查詢模型相關(guān)狀態(tài)的能力。同時,它也為控制器提供訪問封裝在模型內(nèi)部的應(yīng)用程序功能的能力。
網(wǎng)絡(luò)教學(xué)平臺采用JavaBeans技術(shù)實現(xiàn)模型的功能,JavaBeans是一種基于Java的軟件組件,可用來執(zhí)行復(fù)雜的計算任務(wù),例如:把常用的數(shù)據(jù)庫功能,如打開數(shù)據(jù)庫、關(guān)閉數(shù)據(jù)庫、執(zhí)行查詢等都封裝在一個JavaBeans中,只需要在每一個相關(guān)的JSP文件中聲明一下該Bean,并定義它的作用范圍,就可直接引用該Bean中的屬性、方法。JavaBeans可以很好的實現(xiàn)業(yè)務(wù)邏輯和前臺的分離,使得系統(tǒng)具有更好的健壯性和靈活性。與在線考試數(shù)據(jù)庫中數(shù)據(jù)表BbsUser對應(yīng)的一個JavaBeans類示例:
public class BbsUser{
private String username;
public String getUserName(){
return this.userName;
}
public void setUserName(String userName){
this.userName=username;
}
}
2.2.4 控制器
控制器用來管理用戶與視圖發(fā)生的交互,負(fù)責(zé)用戶界面和模型之間的流程控制,它只把用戶的信息傳遞給模型,告訴模型做什么,選擇符合要求的視圖返回給用戶。因此,一個模型可能對應(yīng)多個視圖,一個視圖可能對應(yīng)多個模型。
網(wǎng)絡(luò)教學(xué)平臺采用Servlet技術(shù)實現(xiàn)控制器功能,Servlet是運行在服務(wù)器上的小服務(wù)程序,在用戶通過網(wǎng)絡(luò)與服務(wù)器建立HTTP連接后,它接收客戶端發(fā)來的請求并對它們進行處理,然后生成響應(yīng)的HTML文件,并將它們發(fā)送給客戶端。Servlet本身就是一個Java類,是運行在請求/響應(yīng)模式的服務(wù)器上的模塊,是用Java代碼編寫的服務(wù)器端程序,可以訪問Java全部的高級特性,如數(shù)據(jù)庫連接、網(wǎng)絡(luò)有關(guān)的特性、面向?qū)ο筇匦院蛯Χ嗑€程處理的內(nèi)嵌支持等。
2.2.5 數(shù)據(jù)庫
Microsoft SQL Server2000能提供超大型系統(tǒng)所需的數(shù)據(jù)庫服務(wù),可在多個用戶之間有效地分配可用資源。它不僅是一個巨大的數(shù)據(jù)容器,更是一個非常強大的數(shù)據(jù)處理工具,而且可以很好的與JSP合作,因此是本系統(tǒng)數(shù)據(jù)庫服務(wù)器的理想選擇。
網(wǎng)絡(luò)教學(xué)平臺的課程作業(yè)、單元自測、在線考試、職業(yè)認(rèn)證試題庫及討論區(qū)等運用SQL Server2000對數(shù)據(jù)進行管理。
通過工廠類建立Servlet與SQL Server2000數(shù)據(jù)庫連接示例:
public interface ConnectionFactory {
public Connection getConnection();
}
public class DefaultConnectionFactory implements ConnectionFactory{
public Connection getConnection(){
//與數(shù)據(jù)庫的連接代碼
}
}
3 結(jié)束語
本文對精品課建設(shè)中的各種教學(xué)資源進行了分析和匯總,提出了運用Java的相關(guān)技術(shù)設(shè)計和開發(fā)網(wǎng)絡(luò)教學(xué)平臺,可很好地實現(xiàn)用戶界面和數(shù)據(jù)處理的分離,為精品課程中的各種教學(xué)資源服務(wù)教學(xué)提供了安全和穩(wěn)定的平臺。山東省精品課程《Java程序設(shè)計》網(wǎng)址:http://jpkc.edubzvc.com.cn/jingpin.htm。
參考文獻
[1] 國家精品課程評估指標(biāo)(2006)[DB/OL]. http:/ /www.moe.gov.cn/edoas/website18/ level3.jsp?tablename=1196infoid=19309.
[2]張吉才. Java Web應(yīng)用開發(fā)教程[M] . 北京:科學(xué)出版社,2006.
[3]李超燕. 數(shù)據(jù)庫原理及應(yīng)用教程[M] . 科學(xué)出版社,2004.