錢玲如
摘 要本文論述的是一個基于INTERNET 的B/S模式下C語言網(wǎng)上作業(yè)系統(tǒng)的實現(xiàn)方法、思路及過程。本系統(tǒng)用ASP動態(tài)網(wǎng)頁的形式實現(xiàn),系統(tǒng)前臺界面美觀,設置多級用戶權限分類登錄,可分為教師、學生、管理員三類用戶;后臺功能強大,操作簡單,滿足系統(tǒng)維護需要。本系統(tǒng)很好地完成了C語言的教與學,使得教師可以在線布置作業(yè)、批改作業(yè)、對學生成績進行統(tǒng)計、在線答疑;學生亦可以實現(xiàn)在線瀏覽作業(yè)、提交作業(yè)、在線疑問等功能。另外,系統(tǒng)在線直接調(diào)用TC程序運行服務器端C語言作業(yè),并調(diào)試運行得到結(jié)果,是本系統(tǒng)最大的特色;系統(tǒng)還可以完成學生成績的數(shù)據(jù)統(tǒng)計,供教師參考,以適當修正授課進度,以方便學生調(diào)整學習的進度。
關鍵詞 ASP系統(tǒng);作業(yè)批改;TC調(diào)用;數(shù)據(jù)統(tǒng)計
中圖分類號G434 文獻標識碼A文章編號1673-9671-(2009)112-0056-02
隨著信息技術的高速發(fā)展,計算機的應用越來越普及和廣泛,所以目前社會上各個學校提交作業(yè)的形式也由原來的手工謄寫改革成了上交電子文檔,但是目前學校作業(yè)管理一般都采用以下兩種方法:
1)將作業(yè)存在U盤、光盤等介質(zhì)上。
2)存放到教師電腦上的一個共享目錄內(nèi)。
用前一種方法作業(yè)收繳麻煩、不便管理;第二種方法要好一些,但學生可以隨意查看、更改作業(yè),老師在幫學生修改作業(yè)時,也很容易搞亂哪些是改過,哪些沒改過;這些都使教師對學生作業(yè)的管理產(chǎn)生很大的麻煩。
這就必然要求有更好方法來實現(xiàn)對作業(yè)的管理,我的C語言網(wǎng)上作業(yè)系統(tǒng)就在這樣的情況下應孕而生了。它的應用不僅是在C語言這一門課程中。在現(xiàn)代化教育技術模式下,計算機在學校已相當普及。在這樣的環(huán)境下,許多學校對學生的部分作業(yè)提出了更高要求,例如要求學生作業(yè)能夠長期保存到計算機中以利于學校將來教學的重復利用等等,就要求教師能夠在任何聯(lián)網(wǎng)的計算機上進行在線作業(yè)的布置、批改、成績統(tǒng)計、成績?yōu)g覽等,要求學生能夠查詢自己上交的作業(yè),其它相關人員也可以利用計算機通過互聯(lián)網(wǎng)對學生作業(yè)情況進行了解與查詢。這是未來教育發(fā)展的趨勢,也確實是一個行之有效的辦法,值得去推廣。
本文的創(chuàng)新之處有以下兩個方面:
1)實現(xiàn)普通作業(yè)管理之外,對某個學生的全部作業(yè)的平均分以及對某一次作業(yè)全部學生的平均分進行了適當?shù)慕y(tǒng)計,以此來掌握學生的學習情況,教師就可根據(jù)數(shù)據(jù)進行分析適當調(diào)整授課速度和難度。
2)對學生上交C語言程序直接在線運行,查看程序結(jié)果,直接根據(jù)程序結(jié)果給學生評分,避免書面程序作業(yè)批改時的錯誤。
1系統(tǒng)概述
本系統(tǒng)采用B/S模式建立C語言網(wǎng)上作業(yè)系統(tǒng),主要目的是能提供給學生提交作業(yè)、教師在線批改作業(yè)的網(wǎng)絡環(huán)境。
1)學生能完成在線注冊,查看作業(yè),提交作業(yè),瀏覽、修改、刪除、上傳、下載作業(yè),更主要的學生自己能隨時統(tǒng)計自己作業(yè)提交的次數(shù),成績的總分及平均分,從而能快捷有效地調(diào)整自己某一階段的學習步伐。
2)教師能在線布置作業(yè)、批改作業(yè)(直接調(diào)試運行學生C語言原程序,得到結(jié)果),可以對學生的成績進行階段性的統(tǒng)計,查看學生留言及在線回答學生的提問等。
2可行性分析
在設計該系統(tǒng)的初期,我作了大量的調(diào)查和規(guī)劃工作,對該系統(tǒng)的開發(fā)可行性作了細致全面的分析,主要是從以下三個方面來分析的。
2.1技術可行性
本系統(tǒng)采用的是B/S模式,開發(fā)工具使用ASP和Dreamweaver MX,數(shù)據(jù)庫使用SQL Server 2000,所以開發(fā)技術比較成熟,基本排除了開發(fā)工具操作和使用上的困難。但是開發(fā)本系統(tǒng)最主要需要解決的技術困難是:教師在批改學生提交C語言原程序時,能在系統(tǒng)中直接調(diào)用TC調(diào)試工具。
2.2經(jīng)濟可行性
這個C語言網(wǎng)上作業(yè)系統(tǒng),是適用于大中專院校,在硬件要求上只需提供一臺Web服務器,開支和花費并不大,所以從經(jīng)濟上分析開發(fā)該系統(tǒng)是完全可行的。
2.3操作可行性
該系統(tǒng)操作采用可視化界面,集中采用網(wǎng)頁的形式,對普通用戶來說僅需掌握一般的計算機操作知識就可,況且該系統(tǒng)是專門為大中專院校C語言教學而開發(fā)的,所以在該系統(tǒng)操作上不論是學生還是教師都應該不存在障礙。
3關鍵設計說明
3.1后臺部分
1)本系統(tǒng)分為前臺和后臺兩個主要模塊,用戶分為三類,分別是教師、學生、管理員,其中教師相當于普通管理員能發(fā)布作業(yè)、查看學生的作業(yè)信息等。管理員稱為超級管理員,可以進行前臺和后臺雙重管理,但是在前臺和后臺的管理中,為了避免登錄的沖突性,在設計時分別采用session()屬性和cookies()屬性。
2)后臺管理中涉及到公告管理、圖書管理、下載管理、鏈接管理、用戶管理、學生管理,其中用戶管理包括對管理員和教師的管理。
3)該系統(tǒng)設置學生在注冊后不允許馬上登錄,必須要等待管理員批準后方可登錄。所以在設計學生表時,設計了字段“stu_status”默認初始值為“c”其含義是:若未被批準禁止訪問。但當管理員批準后“stu_status”的值為“o”,意味著允許訪問。
3.2教師批改作業(yè)管理
在實現(xiàn)批改作業(yè)功能時,采用分頁列表形式,每頁顯示20條記錄,并且可以羅列出全部學生提交的作業(yè),也可單獨羅列出某個學生提交的作業(yè),對批改過的作業(yè)和未批改過的作業(yè)作出相應的標記,方便教師批改。
在這項功能中能體現(xiàn)本系統(tǒng)的一個特色:教師除了能直接批閱提交的文本作業(yè)給出成績和批語外,還可以直接運行查看學生提交的C語言原程序。其實現(xiàn)的具體方法是:
1)調(diào)用run.asp程序。
<%
response.write"文件下載"
Dim Stream
Dim Contents
Dim FileName
Dim FileExt
Const adTypeBinary = 1
FileName =Request("FileName")
FileName=replace(FileName,"works/","")
if FileName = "" Then
Response.Write "無效文件名."
Response.End
End if
' 下載這個文件
Response.Clear
Response.ContentType = "application/octet-stream"
Response.AddHeader "content-disposition", "attachment; filename=" & FileName
Set Stream = server.CreateObject("ADODB.Stream")
Stream.Type = adTypeBinary
Stream.Open
Stream.LoadFromFile Server.MapPath(FileName)
While Not Stream.EOS
Response.BinaryWrite Stream.Read(1024 * 64)
Wend
Stream.Close
Set Stream = Nothing
Response.Flush
Response.End
%>
2)在本地機上設置C語言的打開方式為TC。具體操作為:工具-〉文件夾選項-〉文件類型,將 *.c的文件打開方式設置為用TC。
所以當教師在點擊瀏覽附件時系統(tǒng)可以自動在TC的環(huán)境下自動運行C語言原文件,這一點正好符合本系統(tǒng)設計的初衷,也是本系統(tǒng)的特色所在。
3)在線答疑。采用分頁顯示的列表,每頁顯示20條記錄,主要是完成教師回答學生的疑問,所以在設計時采用論壇的形式,教師可以對學生提出的疑問使用“固頂”,從而能保證重要的消息在列表的前面。
4)數(shù)據(jù)統(tǒng)計。該系統(tǒng)的另一個創(chuàng)新之處是能對學生提交的作業(yè)進行成績統(tǒng)計。比如可以統(tǒng)計學生應該提交作業(yè)的次數(shù),以及實際提交作業(yè)的次數(shù),成績的平均分,還可以按學生的學號對學生進行相應的數(shù)據(jù)查詢。在進行數(shù)據(jù)統(tǒng)計時,對數(shù)據(jù)庫中的多張表進行了必要的聯(lián)系,比如要查詢某個學生的成績,必須先對數(shù)據(jù)庫中的student表進行查詢,然后再查詢answer表和readtb表(教師批改作業(yè)表),從而將answer表中的answer_id和readtb表中的read_answer_id建立聯(lián)系,查詢readtb表中的read_result字段(成績字段)。
4結(jié)語
經(jīng)測試,本系統(tǒng)很好地完成了設計之初的需要,使得教師可以在線布置作業(yè)、批改作業(yè)、對學生成績進行統(tǒng)計、在線答疑;學生亦可以實現(xiàn)在線瀏覽作業(yè)、提交作業(yè)、在線疑問等功能。重要的是,老師可在任一臺聯(lián)網(wǎng)的機器上在線直接調(diào)用TC程序運行服務器端C語言作業(yè),并調(diào)試運行得到結(jié)果,既提高了工作效率,又提高了批改的準確率。借鑒這個經(jīng)驗可以將本“作業(yè)系統(tǒng)”推廣到其它程序語言的教學中去。
參考文獻
[1](美)Konrad King編著(杜大鵬等譯).SQL編程實用大全[M].北京:中國水利水電出版社,2003.
[2] Waymire,Richard,Sawtell,Rick.Sams Teach Yourself Microsoft SQL Server 2000 in 21 Days.Macmillan Computer Pub,2002,11:1-96.
[3]羅運模,王珊 等編著,周立柱審校.SQL Server 數(shù)據(jù)庫系統(tǒng)基礎[M].北京:高等教育出版社,2003.
[4]光軍 編著.動態(tài)網(wǎng)站設計編程技法[M].北京:北京航空航天大學出版社,2001.
[5]鄧文淵,陳蕙貞,陳俊榮 編著.ASP與網(wǎng)絡數(shù)據(jù)庫技術[M].北京:中國鐵道出社,2003.
[6]閆靜,鐘斌 等編著.Dreamweaver MX2004與ASP動態(tài)網(wǎng)頁[M].北京:機械工業(yè)出版社,2004.
[7]林盛雄,程永靈 編著.網(wǎng)頁設計與制作[M].北京:冶金工業(yè)出版社,2003.
[8]郭瑞軍,李杰,初曉璐 等編著.ASP數(shù)據(jù)庫開發(fā)實例精粹[M].北京:電子工業(yè)出版社,2005.