基于c#在線教育平臺論文_第1頁
已閱讀1頁,還剩94頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p>  本科生畢業(yè)論文(設計)</p><p>  題 目 移動在線教育平臺</p><p>  學 院 此處填寫學院名全稱</p><p>  專 業(yè) 此處填寫專業(yè)名全稱</p><p>  學生姓名 此處填寫學生姓名</p>

2、;<p>  學 號 年級 2012</p><p>  指導教師 此處填寫指導教師姓名</p><p><b>  移動在線教育平臺</b></p><p>  [摘要] 如今,以計算機和計算機網絡技術為主的信息技術在教育教學的各方面都得到廣泛的應用,在線考試也已經不是什么新鮮事。由于移動在

3、線教育平臺快速高效,減少了大量人力、 物力的投入,消除了人為因素的影響,易于實現(xiàn)考試的客觀 公正,所以已經得到廣泛的應用。它不僅大大提高了考試的 效率,而且徹底革新考試模式,采用電子化的考試手段代替 紙質的日??荚嚪绞?,采用機器閱卷取代人工閱卷。</p><p>  本系統(tǒng)是以Microsoft Visual Studio 2012為主要開發(fā)工具,用ASP.NET技術構建前臺頁面,以SQL Server 2012

4、 數(shù)據(jù)庫作為后臺支持,該系統(tǒng)具有操作簡單、界面友善、靈活性好、系統(tǒng)安全性高、運行穩(wěn)定等特點。</p><p>  本論文對網絡環(huán)境下在線系統(tǒng)的組成、運行機制、應用技術和具體實現(xiàn)進行了深人的研究,并介紹了整個系統(tǒng)的總體規(guī)劃、設計思想及具體實現(xiàn)過程,努力促使移動在線教育平臺得以真正的實施。對移動在線教育平臺的研究背景做相關描述,同時對于ASP.NET,SQL Server 2012等相關理論做了必要的分析和介紹。最后

5、,總結了系統(tǒng)的特點和優(yōu)勢及不足之處,并對未來的發(fā)展和應用前景做了展望。</p><p>  [主題詞] ASP.NET、在線、數(shù)據(jù)庫</p><p>  Online Examination System</p><p>  Student: Adviser: </p><p>  [Abstract] Today, compu

6、ter and computer network technology based information technology in all aspects of education and teaching have been widely used online test has also nothing new. Since the mobile online education platform quickly and eff

7、iciently, reducing a lot of manpower, material resources, eliminating the influence of human factors, easy to implement objective and fair examination, it has been widely used. It not only greatly improve the efficiency

8、of the examination, examination and o</p><p>  The system is based on Microsoft Visual Studio 2012 as the main development tool to build front page with ASP.NET technology to SQL Server 2012 database as a ba

9、ckground support, the system is simple, friendly interface, good flexibility, high system safety, stable.</p><p>  In this thesis, the network environment online system components, operation mechanism, appli

10、cation technology and concrete realization of the depth of research, and introduced the overall planning of the entire system, design and implementation process, and strive to promote mobile online education platform to

11、be true implementation. Background on mobile online education platform to do the relevant description, while for ASP.NET, SQL Server 2012 and other related theories do the necessary analys</p><p>  [Keywords

12、] ASP.NET, online education, database</p><p><b>  目錄</b></p><p><b>  第一章 緒論5</b></p><p>  1.1課題研究的背景和意義5</p><p>  1.2國內外相關發(fā)展動態(tài)6</p>&

13、lt;p>  1.2.1在線教育系統(tǒng)國外發(fā)展情況6</p><p>  1.2.2在線教育系統(tǒng)國內發(fā)展情況7</p><p>  1.3 系統(tǒng)研究和可行性分析7</p><p>  1.3.1 系統(tǒng)研究7</p><p>  1.3.2 可行性分析8</p><p>  1.4 本文組織結構說明

14、9</p><p>  第二章 開發(fā)環(huán)境、語言和相關技術介紹9</p><p>  2.1 .NET框架10</p><p>  2.1.1 .NET開發(fā)平臺與J2EE平臺比較10</p><p>  2.1.2 ASP.Net技術原理11</p><p>  2.1.3 ADO.NET技術簡介12<

15、/p><p>  2.1.4 .NET平臺開發(fā)語言-C# 4.012</p><p>  2.2 NET Framework 概述13</p><p>  2.5本章小結16</p><p>  第三章 系統(tǒng)總體設計16</p><p>  3.1系統(tǒng)架構設計16</p><p>  3.

16、2功能需求17</p><p>  3.3運行環(huán)境分析19</p><p>  3.3.1 開發(fā)環(huán)境19</p><p>  3.3.2 系統(tǒng)性能19</p><p>  3.4數(shù)據(jù)庫設計19</p><p>  3.4.1 數(shù)據(jù)庫邏輯結構設計20</p><p>  3.4.2 數(shù)

17、據(jù)庫物理結構設計20</p><p>  3.5本章小結25</p><p>  第四章 在線教育系統(tǒng)的詳細設計及實現(xiàn)25</p><p>  4.1管理員模塊功能實現(xiàn)25</p><p>  4.1.1 登錄模塊實現(xiàn)25</p><p>  4.1.2 學生信息管理27</p><p&

18、gt;  4.1.3 教師信息管理28</p><p>  4.2教師模塊功能實現(xiàn)29</p><p>  4.2.1 網絡答疑29</p><p>  4.2.2 課件管理32</p><p>  4.2.3 試卷管理32</p><p>  4.2.4 題庫管理34</p><p&g

19、t;  4.3學生模塊功能實現(xiàn)36</p><p>  4.2.1 網絡答疑36</p><p>  4.3.2 在線自測36</p><p>  4.4本章小結38</p><p><b>  結論和展望38</b></p><p><b>  結論38</b>

20、</p><p><b>  展望38</b></p><p><b>  致 謝39</b></p><p><b>  參考文獻40</b></p><p><b>  第一章 緒論</b></p><p>  1.

21、1課題研究的背景和意義</p><p>  隨著網絡技術的飛速發(fā)展,現(xiàn)在很多國外的大學和社會其他部門都已經開設了移動教育平臺,通過計算機網絡實現(xiàn)遠程教育和培訓?,F(xiàn)在,計算機硬件技術的發(fā)展已經達到了相當高的水平。但是,遠程教育軟件的開發(fā)目前還處于起步階段,隨著這項技術的不斷深入發(fā)展,就要求有更好、更完善的軟件系統(tǒng)應用到遠程教育當中去,這就給軟件設計人員提出了更高的設計要求。 移動教育平臺包括很多環(huán)節(jié),例如教

22、學系統(tǒng)、答疑系統(tǒng)和考試系統(tǒng)等等。其中很重要的一個環(huán)節(jié)就是在線考試系統(tǒng),同時它也是最難實現(xiàn)的環(huán)節(jié)。在我國,雖然遠程教育已經蓬勃地發(fā)展起來,但是目前學校與社會上的各種考試大都采用傳統(tǒng)的考試方式,在此方式下,組織一次考試至少要經過五個步驟,即人工出題、考生考試、人工閱卷、成績評估和試卷分析。顯然,隨著考試類型的不斷增加及考試要求的不斷提高,教師的工作量將會越來越大,并且其工作將是一件十分煩瑣和非常容易出錯的事情,可以說傳統(tǒng)的考試方式已經不能適

23、應現(xiàn)代化考試的需要。隨著計算機應用的迅猛發(fā)展,網絡應用不斷擴大,如遠程教育和虛擬大學的出現(xiàn)等等,且這些應用正逐步深入到千家萬戶[1]。人們迫切要求利用這些技術來進行在線考試,以減輕教師的工</p><p>  目前,基于.NET的移動在線教育平臺面向的主要是社會上的培訓認證考試(如微軟的各種認證考試)和遠程教育的考試。一個成功的基于客戶端的考試,需要一個好的網絡環(huán)境,一個好的考試平臺和一個好的題庫。但一個真正的智

24、能化的基于.NET在線教育系統(tǒng)的實現(xiàn)是—個復雜的過程,考試平臺和題庫的研究要依靠軟件開發(fā)專家、被測學科專家和精通考試理論和命題的專家三者的合作。因而對于有極大市場的社會認證考試,必然會走上專業(yè)化的道路。</p><p>  1.2國內外相關發(fā)展動態(tài)</p><p>  1.2.1在線教育系統(tǒng)國外發(fā)展情況</p><p>  計算機考試系統(tǒng)的實現(xiàn),將教師從繁瑣的出題、

25、監(jiān)考、閱卷、試卷分析和成績統(tǒng)計的傳統(tǒng)考試中解脫出來,充分體現(xiàn)了準確、客觀、公正、快速、簡捷等特點。20世紀70年代,美國考試委員會著手進行計算機模擬考試的研究工作,并于1983年編制出有效的模擬考試系統(tǒng),當時的名稱是計算機輔助考試系統(tǒng)。1990年8月,美國加利福尼亞、得克薩斯等十個州創(chuàng)建各州以及各高等院校相互認可的學位證書以及相應的教學體系,從而正式拉開網絡遠程考試的序幕。著名的考試機構有美國思而文學習系統(tǒng)有限公司。它是一家從事教育和計

26、算機化考試服務的專業(yè)公司,在世界的6大洲140多個國家和地區(qū)有2200多個考試中心,可用25種語言提供近百個不同類型,一千多種考試,每年全球參加計算機化考試的人數(shù)約400萬。當今大部分的授證機構均委托思而文公司為其進行測試、評估。最出名的網絡教育案例,當屬美國政府舉辦的TOFEL考試,目前在全球范圍內,均可以通過國際互聯(lián)網進行TOFEL培訓與考試,大大減少了美國政府對于此項考試的開支,并能更快速、準確地為期望進入美國學習的學生服務。目前

27、美國約有80所大學允許學生通過網絡考試獲得學位,另外,加拿大、英國等其它西方國</p><p>  1.2.2在線教育系統(tǒng)國內發(fā)展情況</p><p>  與西方發(fā)達國家的突飛猛進相比,國內的計算機考試技術研究工作開展的相對較晚,但國內在網絡遠程教學研究工作發(fā)展相當迅速。目前各高等院校如清華大學、北京大學、上海復旦大學、同濟大學、西安交通大學、華南理工大學、北京醫(yī)科大學和湖南大學等高校己陸

28、續(xù)在網上設立了自己的考試系統(tǒng),并開展相關研究。國家信息產業(yè)部也開發(fā)了辦公自動化證書CEAC遠程考試系統(tǒng)、紅旗Linux遠程考試系統(tǒng)。</p><p>  通過對國內外計算機考試系統(tǒng)的考察和試用,我們發(fā)現(xiàn)它們具備以下特點:(1)C/S結構和B/S結構并存,但基本都可以在網絡上使用;(2)大都提供自動組卷和自動評卷功能,但水平參差不齊;(3)考核軟件使用仿真模擬環(huán)境和調用真實環(huán)境兩者都有;(4)均采用了開放式試題庫,

29、擴充比較容易;(5)對題庫的分析管理部分都比較重,都提供了最基本的功能。</p><p>  1.3 系統(tǒng)研究和可行性分析</p><p>  1.3.1 系統(tǒng)研究</p><p>  在線教育系統(tǒng),屬于采用C/S架構的信息管理系統(tǒng)。這樣的系統(tǒng)能夠很好的在校園網中架設和實現(xiàn)。對于學校來說,系統(tǒng)管理人員如果需要在幾百甚至上千部電腦之間來回奔跑,效率和工作量是可想而

30、知的,但C/S架構的系統(tǒng)只需要在客戶端上安裝運行就行了,根本不需要做任何的維護。無論用戶的規(guī)模有多大,有多少分支機構都不會增加任何維護升級的工作量,所有的操作只需要針對服務器進行;如果是異地,只需要把服務器連接專網即可,實現(xiàn)遠程維護、升級和共享。</p><p>  1.3.2 可行性分析</p><p>  可行性研究的目的,就是用最小的代價在盡可能短的時間內確定問題是否能夠解決。要達

31、到這個目的,必須分析幾種主要的可能解法的利弊,從而判斷原定的系統(tǒng)規(guī)模和目標是否現(xiàn)實,系統(tǒng)完成后所能帶來的效益是否大到值得投資開發(fā)這個系統(tǒng)的程度。因此,可行性研究實質上是對進行了一次較大壓縮簡化后的系統(tǒng)進行分析和設計的過程,也就是在較高層次上以較抽象的方式進行的系統(tǒng)分析和設計的過程。</p><p>  系統(tǒng)的可行性分析主要包括經濟上的可行性,技術上的可行性,操作上的可行性和法律上的可行性。</p>

32、<p><b>  經濟可行性</b></p><p>  目標系統(tǒng)開發(fā)經濟需求的比較低,加上具有成熟的軟硬件環(huán)境,所以在軟硬件的支出上十分有限。而且,目標系統(tǒng)并是十分的復雜,開發(fā)的周期較短,人員經濟支出有限。當系統(tǒng)開發(fā)成后,通過測試和、試運行和實際應用后,將很大程度上提高電影院網上訂票管理的科學性和高效性,在為學校帶來便利的同時,也為系統(tǒng)的進一步推廣、創(chuàng)新創(chuàng)造了條件,這帶來的經濟

33、回報將遠超過支出,并且最重要的一點是通過該系統(tǒng)的開發(fā),可以使我們進一步理解軟件工程思想和軟件開發(fā)流程,為從事軟件開發(fā)工作打下很好的基礎,從長遠利益來考慮,本課題的設計開發(fā)還是具有相當大的經濟可行性的。</p><p><b>  技術可行性</b></p><p>  本系統(tǒng)使用.NET技術進行開發(fā),.NET Framework4.0框架作為微軟公司已經比較成熟的產品

34、,現(xiàn)在有越來越多的企業(yè)及技術人員選擇它作為開發(fā)平臺。因此,在技術上.NET是完全可以勝任這個平臺的開發(fā)[1]。</p><p>  本系統(tǒng)實現(xiàn)基與客戶端的發(fā)布、查詢的功能;由多個模塊組成。每個模塊由一組業(yè)面及相關程序組成,完成相對獨立的任務。此外還涉及到數(shù)據(jù)庫數(shù)據(jù)的訪問,對數(shù)據(jù)庫數(shù)據(jù)的操作等。而ASP.NET技術具有以下特點:</p><p> ?、貯SP.NET使用CLR語言(C#)編

35、寫的編譯代碼[2]。</p><p> ?、贏SP.NET頁面是由服務器端控件組成的。</p><p>  ③ASP.NET包含一種稱為WEB服務的新技術。</p><p> ?、蹵SP.NET是MICSOFT的.NET框架的一部分。</p><p>  ⑤ASP.NET包含了頁面和數(shù)據(jù)緩存機制,使用它可以很容易地明顯提高應用的性能</

36、p><p>  所以,該系統(tǒng)在技術上是可行的。</p><p><b>  操作可行性</b></p><p>  使用該系統(tǒng)的大多數(shù)是學校管理系統(tǒng)管理人員和老師,由于他們所接受的高等教育及工作的需要,對他們來說,操作本系統(tǒng)將會十分的簡便。系統(tǒng)是基于客戶端的工作界面,管理人員無論通過局域網還是互聯(lián)網,用戶只需在自己的計算機上安裝客戶端訪問本系統(tǒng)即可

37、,同時所有的操作都是基于客戶端的操作方式,如:鏈接、按鈕、文本框等等。所有的操作通過客戶端完成,用戶不需培訓,只要稍微提示一下即可。因此,在操作使用上,本系統(tǒng)簡單、方便,易于使用戶接受,因而是十分可行的[3]。</p><p><b> ?、确煽尚行?lt;/b></p><p>  由于本系統(tǒng)是在相關法律法規(guī)下實施完成的,所以不存在任何法律問題,在法律上是完全可行的。&

38、lt;/p><p>  綜合考慮經濟、技術、操作和法律等方面的因素,該在線教育系統(tǒng)的開發(fā)工作可以立即開始進行。</p><p>  1.4 本文組織結構說明</p><p>  本文詳細介紹了基于客戶端的移動在線教育系統(tǒng)的設計、開發(fā)的全過程。從開始到程序設計的實現(xiàn),將在一下的幾章中予以介紹:</p><p>  第1章 緒論,這一章主要是對本次

39、畢業(yè)設計所開發(fā)的系統(tǒng)進行問題的定義,通過問題的定義明白需要做些什么,并且對開發(fā)內容簡單的介紹了一下;同時本章還對課題的研究背景與研究意義進行分析,對開發(fā)本系統(tǒng)的可行性分析還有對論文各章內容的簡要介紹。</p><p>  第2章開發(fā)環(huán)境、語言和相關技術介紹,主要是對本次開發(fā)涉及到的理論知識和用到的開發(fā)工具做相關闡述。</p><p>  第3章 系統(tǒng)分析與總體設計,主要介紹了本系統(tǒng)需要實現(xiàn)

40、的功能模塊和本系統(tǒng)的數(shù)據(jù)庫設計、頁面的詳細設計等。</p><p>  第4章 在線教育系統(tǒng)的詳細設計,主要介紹了系統(tǒng)實現(xiàn)的核心模塊和所涉及到的核心代碼。</p><p>  最后,總結與展望,總結了本次設計過程中遇到的技術難點并做相關分析,對本系統(tǒng)尚未完善的地方作出下一步打算。</p><p>  最后:參考文獻、聲明、致謝和附錄。</p><

41、p>  第二章 開發(fā)環(huán)境、語言和相關技術介紹</p><p>  在確定系統(tǒng)的開發(fā)前景、意義、目標之后,就是選擇好開發(fā)工具以及運用相關的技術來開發(fā)系統(tǒng)。在模式上,我們選擇C/S架構的操作模式,這樣可以方便學生的考試和管理員的對試題題庫的管理,使得用戶在安裝客戶端軟件后,只要打開客戶端即可登錄系統(tǒng)做相關操作。</p><p>  2.1 .NET框架</p><p&

42、gt;  2.1.1 .NET開發(fā)平臺與J2EE平臺比較</p><p>  與J2EE平臺相比,微軟的.Net平臺堪稱為新一代的互聯(lián)網平臺。對于技術開發(fā)人員來說,.Net平臺的兩大特性是非常卓越的,首先是其所提供的公共語言運行時,也就是公用語言運行平臺,另一方面就是龐大而全面的統(tǒng)一編程類。其架構下圖2.2所示[4]。</p><p>  圖2.2 .Net技術架構</p>

43、<p>  C#語言是微軟公司針對.Net平臺才推出來的一門新語言,作為.Net平臺的第一語言,它幾乎集中了所有關于軟件開發(fā)和軟件工程研究的最新成果。其不但繼承了C++、Java等面向對象的強大功能特性,同時還是繼承了VB、Delphi等編程語言的可視化快速開發(fā)功能,其是當前第一個完全面向組件的語言。</p><p>  .Net平臺中的程序設計主要分為以下四個方面:Web Forms、Windows

44、 Forms、Web Service及Windows Service,該平臺主要使用Web Service中的ASP.Net技術設計實現(xiàn)。.Net應用體系結構如圖2.3所示[5]。</p><p>  圖2.3 .Net應用體系結構</p><p>  2.1.2 ASP.Net技術原理</p><p>  ASP.net 是一種建立在通用語言上的程序構架,能被用

45、于一臺Web服務器來建立強大的Web應用程序。ASP.net提供許多比現(xiàn)在的Web開發(fā)模式強大的的優(yōu)勢。</p><p> ?。?)執(zhí)行效率的大幅提高 </p><p>  ASP.net是把基于通用語言的程序在服務器上運行。不像以前的ASP即時解釋程序,而是將程序在服務器端首次運行時進行編譯,這樣的執(zhí)行效果,當然比一條一條的解釋強很多。ASP.Net動態(tài)編譯過程如圖2.4所示。</

46、p><p> ?。?)世界級的工具支持 </p><p>  ASP.net構架是可以用Microsoft(R)公司最新的產品 Visual Studio.net開發(fā)環(huán)境進行開發(fā),WYSIWYG(What You See Is What You Get所見即為所得)的編輯。這些僅是ASP.net強大化軟件支持的一小部分[6]。 </p><p> ?。?)強大性和適應性

47、 </p><p>  因為ASP.net是基于通用語言的編譯運行的程序,所以它的強大性和適應性,可以使它運行在Web應用軟件開發(fā)者的幾乎全部的平臺上。通用語言的基本庫,消息機制,數(shù)據(jù)接口的處理都能無縫的整合到ASP.net的Web應用中。ASP.net同時也是language-independent語言獨立化的,所以,你可以選擇一種最適合你的語言來編寫你的程序,或者把你的程序用很多種語言來寫,現(xiàn)在已經支持的有C

48、#(C++和Java的結合體),VB.net,Jscript。將來,這樣的多種程序語言協(xié)同工作的能力保護您現(xiàn)在的基于COM+開發(fā)的程序,能夠完整的移植向ASP.net。</p><p>  圖2.4 ASP.NET 動態(tài)編譯</p><p>  (4)簡單性和易學性 </p><p>  ASP.net是運行一些很平常的任務如表單的提交客戶端的身份驗證、分布系統(tǒng)和

49、網站配置變得非常簡單。例如ASP.net頁面構架允許你建立你自己的用戶分界面,使其不同于常見的VB-Like界面。另外,通用語言簡化開發(fā)使把代碼結合成軟件簡單的就像裝配電腦。 </p><p><b>  (5)安全性 </b></p><p>  基于Windows認證技術和應用程序配置,你可以確保你的源程序是絕對安全的。</p><p> 

50、 2.1.3 ADO.NET技術簡介 </p><p>  ADO.NET是由.NET framework為與數(shù)據(jù)庫中的數(shù)據(jù)進行交互而提供的一組對象類的名稱。我們知道,面向對象編程的有關主要優(yōu)點是可以把各種復雜的功能封裝在一個自包含的單元中,接著要處理的就是—個定義好的接口中,它由一些方法和屬性組成[7]。</p><p>  ADO.NET可以與許多類型的對象交互,不僅有存儲在數(shù)據(jù)庫中的

51、數(shù)據(jù),還有存儲在電子郵件服務器、文本文件、應用程序文檔(例如Excel電子表格)和XML中的數(shù)掂。下面是可以連接的數(shù)據(jù)源列表:</p><p>  ☉企業(yè)級的RDBMS,例如Oracle, Microsoft SQL Server, IBM DB2</p><p>  ☉桌面數(shù)據(jù)庫,例如Access</p><p>  ☉文件和目錄系統(tǒng),例如Windows FAT

52、32</p><p>  ☉用逗號分隔開的文本文件,或長度固定的文本文件</p><p>  ☉非數(shù)據(jù)庫文件,例如Excel電子表格</p><p><b>  ☉基于XML的數(shù)據(jù)</b></p><p>  其優(yōu)點是上面的列表不是固定的。ADO.NET連接的結構是可以為目前還沒有想像出來的數(shù)據(jù)源格式編寫供應程序、驅動程

53、序和適配器。ADO.NET允許從源中選擇相當抽象的數(shù)據(jù)。數(shù)據(jù)庫管理員只需授予使用數(shù)據(jù)的一個視圖的權限接口。即使沒有訪問數(shù)據(jù)源其它內容的權限,也可以使用ADO.NET把數(shù)據(jù)放在ASP.NET頁面上。</p><p>  2.1.4 .NET平臺開發(fā)語言-C# 4.0</p><p>  C# (C sharp) 是微軟對這一問題的解決方案。C#是一種最新的、面向對象的編程語言。它使得程序員可

54、以快速地編寫各種基于Microsoft .NET平臺的應用程序,Microsoft .NET提供了一系列的工具和服務來最大程度地開發(fā)利用計算與通訊領域。 </p><p>  正是由于C#面向對象的卓越設計,使它成為構建各類組件的理想之選——無論是高級的商業(yè)對象還是系統(tǒng)級的應用程序。使用簡單的C#語言結構,這些組件可以方便的轉化為XML 網絡服務,從而使它們可以由任何語言在任何操作系統(tǒng)上通過Internet進行調

55、用。 </p><p>  最重要的是,C#使得C++程序員可以高效的開發(fā)程序,而絕不損失C/C++原有的強大的功能。因為這種繼承關系,C#與C/C++具有極大的相似性,熟悉類似語言的開發(fā)者可以很快的轉向C#[8]。</p><p>  2.2 NET Framework 概述</p><p>  .NET Framework 是支持生成和運行下一代應用程序和 XM

56、L Web Services 的內部 Windows 組件。.NET Framework 旨在實現(xiàn)下列目標: </p><p>  提供一個一致的面向對象的編程環(huán)境,而無論對象代碼是在本地存儲和執(zhí)行,還是在本地執(zhí)行但在 Internet 上分布,或者是在遠程執(zhí)行的。</p><p>  提供一個將軟件部署和版本控制沖突最小化的代碼執(zhí)行環(huán)境。</p><p>  提供

57、一個可提高代碼(包括由未知的或不完全受信任的第三方創(chuàng)建的代碼)執(zhí)行安全性的代碼執(zhí)行環(huán)境。</p><p>  提供一個可消除腳本環(huán)境或解釋環(huán)境的性能問題的代碼執(zhí)行環(huán)境。</p><p>  使開發(fā)人員的經驗在面對類型大不相同的應用程序(如基于 Windows 的應用程序和基于 Web 的應用程序)時保持一致。</p><p>  按照工業(yè)標準生成所有通信,以確?;?/p>

58、.NET Framework的代碼可與任何其他代碼集成[11]。</p><p>  .NET Framework 具有兩個主要組件:公共語言運行庫和 .NET Framework 類庫。公共語言運行庫是 .NET Framework 的基礎。您可以將運行庫看作一個在執(zhí)行時管理代碼的代理,它提供內存管理、線程管理和遠程處理等核心服務,并且還強制實施嚴格的類型安全以及可提高安全性和可靠性的其他形式的代碼準確性。事實

59、上,代碼管理的概念是運行庫的基本原則。以運行庫為目標的代碼稱為托管代碼,而不以運行庫為目標的代碼稱為非托管代碼。.NET Framework 的另一個主要組件是類庫,它是一個綜合性的面向對象的可重用類型集合,您可以使用它開發(fā)多種應用程序,這些應用程序包括傳統(tǒng)的命令行或圖形用戶界面 (GUI) 應用程序,也包括基于 ASP.NET 所提供的最新創(chuàng)新的應用程序(如 Web 窗體和 XML Web Services)。</p>

60、<p>  .NET Framework 可由非托管組件承載,這些組件將公共語言運行庫加載到它們的進程中并啟動托管代碼的執(zhí)行,從而創(chuàng)建一個可以同時利用托管和非托管功能的軟件環(huán)境。.NET Framework 不但提供若干個運行庫宿主,而且還支持第三方運行庫宿主的開發(fā)。</p><p>  例如,ASP.NET 承載運行庫為托管代碼提供可伸縮的服務器端環(huán)境。ASP.NET 直接使用運行庫以啟用 ASP.N

61、ET 應用程序和 XML Web Services。</p><p>  公共語言運行庫的功能:公共語言運行庫管理內存、線程執(zhí)行、代碼執(zhí)行、代碼安全驗證、編譯以及其他系統(tǒng)服務。這些功能是在公共語言運行庫上運行的托管代碼所固有的。</p><p>  至于安全性,取決于包括托管組件的來源(如 Internet、企業(yè)網絡或本地計算機)在內的一些因素,托管組件被賦予不同程度的信任。這意味著即使用

62、在同一活動應用程序中,托管組件既可能能夠執(zhí)行文件訪問操作、注冊表訪問操作或其他須小心使用的功能,也可能不能夠執(zhí)行這些功能。</p><p>  運行庫強制實施代碼訪問安全。例如,用戶可以相信嵌入在網頁中的可執(zhí)行文件能夠在屏幕上播放動畫或唱歌,但不能訪問他們的個人數(shù)據(jù)、文件系統(tǒng)或網絡。這樣,運行庫的安全性功能就使通過 Internet 部署的合法軟件能夠具有特別豐富的功能。</p><p>

63、  運行庫還通過實現(xiàn)稱為通用類型系統(tǒng) (CTS) 的嚴格類型驗證和代碼驗證基礎結構來加強代碼可靠性。CTS 確保所有托管代碼都是可以自我描述的。各種 Microsoft 和第三方語言編譯器生成符合 CTS 的托管代碼。這意味著托管代碼可在嚴格實施類型保真和類型安全的同時使用其他托管類型和實例[12]。</p><p>  此外,運行庫的托管環(huán)境還消除了許多常見的軟件問題。例如,運行庫自動處理對象布局并管理對對象的

64、引用,在不再使用它們時將它們釋放。這種自動內存管理解決了兩個最常見的應用程序錯誤:內存泄漏和無效內存引用。</p><p>  運行庫還提高了開發(fā)人員的工作效率。例如,程序員可以用他們選擇的開發(fā)語言編寫應用程序,卻仍能充分利用其他開發(fā)人員用其他語言編寫的運行庫、類庫和組件。任何選擇以運行庫為目標的編譯器供應商都可以這樣做。以 .NET Framework 為目標的語言編譯器使得用該語言編寫的現(xiàn)有代碼可以使用 .N

65、ET Framework 的功能,這大大減輕了現(xiàn)有應用程序的遷移過程的工作負擔。</p><p>  盡管運行庫是為未來的軟件設計的,但是它也支持現(xiàn)在和以前的軟件。托管和非托管代碼之間的互操作性使開發(fā)人員能夠繼續(xù)使用所需的 COM 組件和 DLL。</p><p>  運行庫旨在增強性能。盡管公共語言運行庫提供許多標準運行庫服務,但是它從不解釋托管代碼。一種稱為實時 (JIT) 編譯的功能

66、使所有托管代碼能夠以它在其上執(zhí)行的系統(tǒng)的本機語言運行。同時,內存管理器排除了出現(xiàn)零碎內存的可能性,并增大了內存引用區(qū)域以進一步提高性能[13]。</p><p>  最后,運行庫可由高性能的服務器端應用程序(如 Microsoft SQL Server 和 Internet 信息服務 (IIS))承載。此基礎結構使您在享受支持運行庫宿主的行業(yè)最佳企業(yè)服務器的優(yōu)越性能的同時,能夠使用托管代碼編寫業(yè)務邏輯。<

67、;/p><p>  NET Framework 類庫:.NET Framework 類庫是一個與公共語言運行庫緊密集成的可重用的類型集合。該類庫是面向對象的,并提供您自己的托管代碼可從中導出功能的類型。這不但使 .NET Framework 類型易于使用,而且還減少了學習 .NET Framework 的新功能所需要的時間。此外,第三方組件可與 .NET Framework 中的類無縫集成。</p>&

68、lt;p>  例如,.NET Framework 集合類實現(xiàn)一組可用于開發(fā)您自己的集合類的接口。您的集合類將與 .NET Framework 中的類無縫地混合。</p><p>  正如您對面向對象的類庫所希望的那樣,.NET Framework 類型使您能夠完成一系列常見編程任務(包括諸如字符串管理、數(shù)據(jù)收集、數(shù)據(jù)庫連接以及文件訪問等任務)。除這些常見任務之外,類庫還包括支持多種專用開發(fā)方案的類型。例如,

69、可使用 .NET Framework 開發(fā)下列類型的應用程序和服務: </p><p><b>  控制臺應用程序。</b></p><p>  Windows GUI 應用程序(Windows 窗體)。</p><p>  ASP.NET 應用程序。</p><p>  XML Web Services。</p&

70、gt;<p>  Windows 服務[14]。</p><p>  例如,Windows 窗體類是一組綜合性的可重用的類型,它們大大簡化了 Windows GUI 的開發(fā)。如果要編寫 ASP.NET Web 窗體應用程序,可使用 Web 窗體類。</p><p>  ASP.NET 是使開發(fā)人員能夠使用 .NET Framework 開發(fā)基于 Web 的應用程序的宿主環(huán)境。

71、但是,ASP.NET 不止是一個運行庫宿主;它是使用托管代碼開發(fā)網站和通過 Internet 分布的對象的完整結構。Web 窗體和 XML Web Services 都將 IIS 和 ASP.NET 用作應用程序的發(fā)布機制,并且兩者在 .NET Framework 中都具有支持類集合。</p><p>  XML Web Services 作為基于 Web 的技術的重要發(fā)展,是類似于常見網站的分布式服務器端應用程

72、序組件。但是,與基于 Web 的應用程序不同,XML Web Services 組件不具有 UI 并且不以瀏覽器(如 Internet Explorer 和 Netscape Navigator)為目標。XML Web Services 由旨在供其他應用程序使用的可重用的軟件組件組成,所謂的其他應用程序包括:傳統(tǒng)的客戶端應用程序,基于 Web 的應用程序,甚至是其他 XML Web Services。因此,XML Web Service

73、s 技術正迅速地將應用程序開發(fā)和部署推向高度分布式 Internet 環(huán)境[15]。</p><p>  如果您使用過 ASP 技術的早期版本,很快就會注意到 ASP.NET 和 Web 窗體提供的改進。例如,您可以用支持 .NET Framework 的任何語言開發(fā) Web 窗體頁。此外,您的代碼不再需要與 HTTP 文本共享同一個文件(盡管如果您愿意,代碼還可以繼續(xù)這樣做)。Web 窗體頁用本機語言執(zhí)行,這是

74、因為與所有其他托管應用程序一樣,它們充分利用運行庫。與此相對照,非托管 ASP 頁始終被寫成腳本并解釋。ASP.NET 頁比非托管 ASP 頁更快、更實用并且更易于開發(fā),這是因為它們像所有托管應用程序一樣與運行庫進行交互。</p><p>  .NET Framework 還提供類和工具的集合來幫助開發(fā)和使用 XML Web Services 應用程序。XML Web Services 是基于 SOAP(一種遠程

75、過程調用協(xié)議)、XML(一種可擴展的數(shù)據(jù)格式)和 WSDL(Web 服務描述語言)這些標準生成的?;谶@些標準生成 .NET Framework 的目的是為了提高與非 Microsoft 解決方案的互操作性。</p><p><b>  2.5本章小結</b></p><p>  本章主要介紹了系統(tǒng)開發(fā)工具以及相關技術進行概述,主要針對微軟的.NET技術平臺和相關AS

76、P.NET, ADO.NET等開發(fā)技術進行了分析。從目前來看,Web應用系統(tǒng)常用的開發(fā)技術主要分為兩大陣營,一個是基于Java技術的J2EE標準,另一種就是微軟的.NET平臺。嚴格的講,兩種技術各有所長,本質上是相似的,只是具體實現(xiàn)的技術不同。一般來說,J2EE經過多年實踐,技術成熟,性能優(yōu)異。.NET出現(xiàn)較晚,對一些新的技術支持較好,并且具有適合快速開發(fā)的特點。依據(jù)應用環(huán)境不同,我認為如果是Windows平臺,則應該選擇.NET,目前

77、學校使用的是Windows平臺,所以,本系統(tǒng)決定采用微軟的.NET平臺進行項目開發(fā)。</p><p>  第三章 系統(tǒng)總體設計</p><p><b>  3.1系統(tǒng)架構設計</b></p><p>  本系統(tǒng)定位學生在線學習和管理員對系統(tǒng)信息的維護工作以及教師試卷管理和在線答疑,具體來說系統(tǒng)的總體功能模塊包括以下幾個方面:</p>

78、<p><b>  管理員模塊</b></p><p>  管理員登錄進入系統(tǒng)之后可以對系統(tǒng)信息進行添加修改。</p><p><b>  教師模塊</b></p><p>  教師用戶登錄進入該系統(tǒng)后可以進行網絡答疑,題庫管理以及試卷管理等。</p><p><b>  學

79、生模塊 </b></p><p>  學生用戶登錄進入系統(tǒng)之后,可以進行課程學習,網絡答疑,在線自測,同時可以查看推薦的經典課程。</p><p><b>  3.2功能需求</b></p><p>  本系統(tǒng)由角色分可分為三類,即:學生用戶,教師用戶和管理員。根據(jù)調查研究,本系統(tǒng)教師用戶需實現(xiàn)的功能有:課程教學,網絡答疑,課件管理

80、,試卷管理和題庫管理。教師用戶的用例圖如圖1所示:</p><p><b>  圖1教師用戶用例圖</b></p><p><b>  圖2學生用戶用例圖</b></p><p>  圖3管理員用戶用例圖</p><p>  1、實用性:方便快捷,便于管理,調動學生學習積極性,提高教學質量。<

81、/p><p>  2、操作簡單:本系統(tǒng)適用于不同水平的使用者,要求系統(tǒng)不太復雜和繁瑣,以便系統(tǒng)操作盡可能簡單易行。</p><p>  3、適應性:應該能廣泛應用于該校學生,采用模塊化設計,用戶可以根據(jù)自身情況自行自合,合理使用該系統(tǒng)。</p><p>  4、安裝使用簡便:服務器端的安裝簡潔明了,客戶只要需安裝該軟件,只要能訪問Internet都可以使用該系統(tǒng)。<

82、;/p><p><b>  3.3運行環(huán)境分析</b></p><p>  3.3.1 開發(fā)環(huán)境</p><p>  在線教育系統(tǒng)開發(fā)與運行環(huán)境:</p><p>  1. 開發(fā)工具:Microsoft Visual Studio 2012</p><p>  2. 開發(fā)語言:ASP.NET C#&l

83、t;/p><p>  3. 數(shù)據(jù)庫軟件:SQL Server 2012</p><p>  4. 運行環(huán)境:Windows10</p><p>  3.3.2 系統(tǒng)性能</p><p>  1. 實用性:本系統(tǒng)要力求做到簡單實用,滿足各類用戶的實際需要,將實用性作為第一要素考慮,充分考慮各個模塊的實用性以及各模塊之間的銜接,統(tǒng)一的管理。</

84、p><p>  2. 可擴展性:系統(tǒng)的設計盡可能模塊化、軟件化,使得系統(tǒng)功能容易擴展。</p><p>  3. 健壯性:要能夠處理因用戶輸入錯誤或者系統(tǒng)異常而引發(fā)的問題。</p><p>  4. 安全性:系統(tǒng)要為不同種類的用戶設置不同的權限,避免造成數(shù)據(jù)庫數(shù)據(jù)的混亂,某些操作需要用戶登錄才能執(zhí)行,以保證系統(tǒng)的安全性。</p><p>  5.

85、 界面美觀:力求做到界面的美觀、友好和布局的合理。</p><p><b>  3.4數(shù)據(jù)庫設計</b></p><p>  后臺數(shù)據(jù)庫的設計是系統(tǒng)設計與實現(xiàn)的關鍵,該系統(tǒng)針對于課程的學習資源有限,學習形式單一的特點,考慮到學生人數(shù)眾多、以及數(shù)據(jù)庫的易用性,可靠性,該系統(tǒng)采用了SQL Server2012作為后臺數(shù)據(jù)庫的開發(fā)工具。</p><p&g

86、t;  3.4.1 數(shù)據(jù)庫邏輯結構設計</p><p>  根據(jù)本系統(tǒng)需求分析,系統(tǒng)所需的表名及對應字段如下:</p><p>  用戶信息表(教師ID,用戶名,密碼,角色權限,添加時間)</p><p>  用戶類型表(用戶類型ID,用戶類型名)</p><p>  用戶組信息表(用戶組ID,組名,組類型,刪除標志,添加日期)</p&

87、gt;<p>  修讀課程表(修讀課程ID,課程ID,任課教師ID,學期,學年,起始日期,結束日期)</p><p>  任課老師信息表(教師ID,性別,電話,郵箱,QQ,MSN)</p><p>  課程信息表(課程ID,課程名,課程表示,刪除標志)</p><p>  學生信息表(學生ID,學生姓名,班級ID,性別,電話,郵箱,QQ,MSN,政治面

88、貌,民族,籍貫,備注)</p><p>  自測結果信息表(測試ID,測試用戶ID,測評起始時間,測評結束時間,結果,課程ID)</p><p>  學院信息表(學院ID,學院名,描述)</p><p>  附件信息表(附件ID,附件名,路徑,附件類型,添加用戶的ID,添加時間,資源描述,下載次數(shù))</p><p>  教師授課信息表(教師I

89、D,課程ID)</p><p>  專業(yè)信息表(專業(yè)ID,專業(yè)名,添加時間)</p><p>  班級信息表(班級ID,班級名,添加時間)</p><p>  答疑信息表(問題ID,問題標題,問題內容,添加時間,學生ID,課程ID,教師ID,是否解決標志)</p><p>  答疑結果信息表(學生ID,內容,問題ID,問題添加時間)</

90、p><p>  3.4.2 數(shù)據(jù)庫物理結構設計</p><p><b>  用戶信息表</b></p><p><b>  用戶類型表</b></p><p><b>  用戶組信息表</b></p><p><b>  修讀課程表</b&g

91、t;</p><p><b>  任課老師信息表</b></p><p><b>  課程信息表</b></p><p><b>  學生信息表</b></p><p><b>  自測結果信息表</b></p><p><b

92、>  學院信息表</b></p><p><b>  附件信息表</b></p><p><b>  教師授課信息表</b></p><p><b>  專業(yè)信息表</b></p><p><b>  班級信息表</b></p>

93、;<p><b>  答疑信息表</b></p><p><b>  答疑結果信息表</b></p><p><b>  3.5本章小結</b></p><p>  本章通過對系統(tǒng)的總體設計,構建了系統(tǒng)的數(shù)據(jù)庫以及各個功能模塊,下面將要對系統(tǒng)進行詳細設計。</p><

94、p>  第四章 在線教育系統(tǒng)的詳細設計及實現(xiàn)</p><p>  4.1管理員模塊功能實現(xiàn)</p><p>  4.1.1 登錄模塊實現(xiàn)</p><p>  登錄模塊主要實現(xiàn)的是管理員登錄時的身份驗證功能,只有登錄并成功通過驗證的用戶才可以進入系統(tǒng)并操作使用系統(tǒng)。</p><p><b>  頁面效果截圖</b>&

95、lt;/p><p>  圖4-1 管理員登錄</p><p><b>  主要代碼:</b></p><p>  private void btnLogin_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p&g

96、t;  string userName = txtUsername.Text.Trim();</p><p>  string password = txtPassword.Text.Trim();</p><p>  int nUserTypeID = 1;</p><p>  var nUserID = UserBLL.Login(userName, passw

97、ord, nUserTypeID);</p><p>  if (nUserID < 0)</p><p><b>  {</b></p><p>  nUserTypeID = 2;</p><p><b>  }</b></p><p>  nUserID = Us

98、erBLL.Login(userName, password, nUserTypeID);</p><p>  if (nUserID < 0)</p><p><b>  {</b></p><p>  nUserTypeID = 3;</p><p><b>  }</b></p&g

99、t;<p>  nUserID = UserBLL.Login(userName, password, nUserTypeID);</p><p>  //設置Session</p><p>  if (nUserID > 0)</p><p><b>  {</b></p><p>  UserIn

100、fo objUser = UserBLL.GetUserInfoByID(nUserID);</p><p>  if (objUser == null)</p><p><b>  {</b></p><p>  MessageBox.Show(this,"用戶名或密碼錯誤");</p><p>&

101、lt;b>  return;</b></p><p><b>  }</b></p><p>  LoginInfo loginInfo = new LoginInfo();</p><p>  loginInfo.UserID = nUserID;</p><p>  loginInfo.UserGr

102、oupID = objUser.UserGroupID;</p><p>  loginInfo.UserType = nUserTypeID;</p><p>  loginInfo.UserName = userName;</p><p>  if (nUserTypeID == 1)</p><p><b>  {</b

103、></p><p>  StudentForm studentForm = new StudentForm(loginInfo);</p><p>  this.Visible = false;</p><p>  studentForm.Show();</p><p><b>  }</b></p>

104、<p>  else if (nUserTypeID == 2)</p><p><b>  {</b></p><p>  TeacherForm teacherForm = new TeacherForm(loginInfo);</p><p>  this.Visible = false;</p><p&g

105、t;  teacherForm.Show();</p><p><b>  }</b></p><p>  else if (nUserTypeID == 3)</p><p><b>  {</b></p><p>  AdminForm adminForm = new AdminForm(log

106、inInfo);</p><p>  this.Visible = false;</p><p>  adminForm.Show();</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  else</b

107、></p><p><b>  {</b></p><p>  MessageBox.Show(this, "用戶名或密碼錯誤");</p><p><b>  }</b></p><p>  4.1.2 學生信息管理</p><p>  學生信息管

108、理是管理員進入系統(tǒng)時瀏覽的第一個菜單,在這里有所有學生的列表,學生的數(shù)據(jù)都是來自數(shù)據(jù)庫,管理員可對學生信息動態(tài)維護。</p><p><b>  截圖如下:</b></p><p>  圖4-2 學生信息管理</p><p><b>  主要代碼</b></p><p>  Student mod

109、el = new Student();</p><p>  model.ClassID = (int)cbClass.SelectedValue;</p><p>  model.UserGroupID = (int)cbGroup.SelectedValue;</p><p>  model.Email = "";</p><

110、;p>  model.HeadPic = "";</p><p>  model.IDCard = txtIdCard.Text.Trim();</p><p>  model.JiGuan = txtJiguan.Text.Trim();</p><p>  model.DeleteFlag = 0;</p><p&g

111、t;  model.LastLoginTime = DateTime.MinValue;</p><p>  model.MSN = "";</p><p>  model.Nation = txtMianzu.Text.Trim();</p><p>  model.Password = txtPass1.Text.Trim();</p&

112、gt;<p>  model.PubMianmao = txtPubMam.Text.Trim();</p><p>  model.QQ = "";</p><p>  model.RealName = txtRealName.Text.Trim();</p><p>  model.RegTime = DateTime.Now;

113、</p><p>  model.Remarks = "";</p><p>  model.Remember = 0;</p><p>  model.Sex = txtSex.Text.Trim();</p><p>  model.Sno = txtSno.Text.Trim();</p><p&

114、gt;  model.Tel = "";</p><p>  model.UserName = txtStuName.Text.Trim();</p><p>  StudentDAL objStudentDAL = StudentDALFactory.Create(ConfigUtil.GetDbProviderType());</p><p>

115、;  objStudentDAL.Initialize();</p><p>  if (!objStudentDAL.OpenConnection())</p><p><b>  {</b></p><p>  objStudentDAL.Dispose();</p><p><b>  return ;&

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論