【文章內(nèi)容簡(jiǎn)介】
被編譯,所以 的 性能得到了很大的提高。 ( 2) 程序代碼與頁(yè)面內(nèi)容的成功分離 通常的動(dòng)態(tài)網(wǎng)頁(yè)開(kāi)發(fā),往往是在一個(gè)網(wǎng)頁(yè)上混合多種腳本語(yǔ)言。比如在 HTML 腳本語(yǔ)言上可以嵌入 JavaScript 或 VBScript 等客戶(hù)端腳本語(yǔ)言,也可以同時(shí)嵌入 ASP 或JSP 等服務(wù)器端腳本語(yǔ)言。這種多語(yǔ)言混合的 Web 開(kāi)發(fā)模式通行已久,但是它的代碼可讀性很差,程序代碼同頁(yè)面內(nèi)容混合在一起,程序員要在多種語(yǔ)言的思維上頻繁切換,如果程序很復(fù)雜的話(huà),這種開(kāi)發(fā)模式非常不利于程序的開(kāi)發(fā),而且日后的維護(hù)也將成為大問(wèn)題。 6 Web 開(kāi)發(fā)技術(shù)為程序員提供了 一種非常好的開(kāi)發(fā)模式,即 Code Behind 技術(shù),它通過(guò) Web 控件將程序代碼與頁(yè)面內(nèi)容成功分離,從而使 的程序結(jié)構(gòu)異常清晰,開(kāi)發(fā)和維護(hù)的效率也得到了很大的提高。另外可以利用 Visual 集成環(huán)境下開(kāi)發(fā) 應(yīng)用程序,該環(huán)境不僅提供了強(qiáng)大的調(diào)試能力,而且還集成了“所見(jiàn)即所得”的 HTML 編輯器,為開(kāi)發(fā)人員開(kāi)發(fā) Web 頁(yè)提供了方便的圖形化支持。 ( 3) 引入服務(wù)器端控件 在 ASP 中,可以給頁(yè)面手動(dòng)添加 HTML 控件,對(duì)這些控件的響應(yīng)有兩種辦法。一種是在客戶(hù)端的腳本語(yǔ)言中響應(yīng)用戶(hù) 對(duì)這些控件的輸入,另一種是把該頁(yè)面提交給服務(wù)器。這兩種辦法都存在問(wèn)題,第一種辦法產(chǎn)生的問(wèn)題是不同的瀏覽器以不同的方式執(zhí)行客戶(hù)端腳本語(yǔ)言,我們很難編寫(xiě)在多種瀏覽器上都能良好運(yùn)行的復(fù)雜的 Web 頁(yè)面。第二種辦法存在的問(wèn)題是,如果我們把 Web 頁(yè)面重新提交給服務(wù)器,那么 Inter 的無(wú)狀態(tài)特性就會(huì)導(dǎo)致頁(yè)面上存儲(chǔ)在變量中的信息丟失,除非我們編寫(xiě)了復(fù)雜的代碼,把它們存儲(chǔ)在 HTML 元素或 URL 查詢(xún)字符串中。 通過(guò)服務(wù)器控件解決了上述問(wèn)題。服務(wù)器端控件會(huì)生成發(fā)送給瀏覽器的HTML 代碼,顯示控件,它們還能生成 隱藏的 HTML 元素來(lái)存儲(chǔ)它們當(dāng)前的狀態(tài)。在提交頁(yè)面時(shí),這些信息就會(huì)傳送回服務(wù)器,控件將自動(dòng)處理這些信息,改變 HTML,顯示控件。 c語(yǔ)言概述 一般分為兩種開(kāi)發(fā)語(yǔ)言, 即 和 C, 在本系統(tǒng)中,選擇 C作為開(kāi)發(fā)語(yǔ)言。 C 是由 C、 C++ 語(yǔ)言發(fā)展而來(lái)的,它在繼承 C、 C++ 語(yǔ)言強(qiáng)大功能的同時(shí)拋棄了它們的一些復(fù)雜特性,使 C 變得相對(duì)簡(jiǎn)單。 C 中沒(méi)有宏,沒(méi)有模板,不允許多重繼承,不再?gòu)?qiáng)調(diào)使用指針,幾乎拋棄了所有令讀者頭疼的特性。 C 在語(yǔ)法、思維方面也與 Java 有著很大 的相似性??傮w來(lái)講, C 具有以下優(yōu)點(diǎn)。 ( 1) 簡(jiǎn)潔的語(yǔ)法 在默認(rèn)的情況下, C 的代碼在 Microsoft .NET 框架提供的 可操縱 環(huán)境下運(yùn)行,不允許直接地進(jìn)行內(nèi)存操作。它所帶來(lái)的最大特色是沒(méi)有了指針。與此相關(guān)的是,那些在 C++ 中被使用的操作符 (如 ::、 → )已經(jīng)不再出現(xiàn)。 ( 2) 精心地面向?qū)ο笤O(shè)計(jì) C 語(yǔ)言是完全按照面向?qū)ο蟮乃枷雭?lái)設(shè)計(jì)的,因此它具有面向?qū)ο笏鶓?yīng)有的一切 7 特性:封裝、繼承和多態(tài)性。 C 語(yǔ)言只允許單繼承,即一個(gè)類(lèi)不會(huì)有多個(gè)基類(lèi),從而避免了類(lèi)型定義的混亂。在 C 語(yǔ)言中,每種 類(lèi)型都是一個(gè)對(duì)象,因此不存在全局函數(shù)、全局變量和全局常數(shù)等概念,所有常量、變量、屬性、方法、索引和事件等都必須封裝在類(lèi)中,從而使代碼具有更好的可讀性,也減少了發(fā)生命名沖突的可能。 在 C 的類(lèi)型系統(tǒng)中,每種類(lèi)型都可以看作一個(gè)對(duì)象。 C 提供了一個(gè)叫做裝箱(boxing)與拆箱 (unboxing)的機(jī)制來(lái)完成這種操作,而不給使用者帶來(lái)麻煩。 ( 3) 與 Web 緊密結(jié)合 Microsoft .NET 中新的應(yīng)用程序開(kāi)發(fā)模型意味著越來(lái)越多的解決方案需要與 Web標(biāo)準(zhǔn)相統(tǒng)一,如超文本標(biāo)記語(yǔ)言 (HyperText Markup Language, HTML)和 XML。由于有了 Web 服務(wù)框架的幫助,對(duì)程序員來(lái)說(shuō),網(wǎng)絡(luò)服務(wù)看起來(lái)就像是 C 的本地對(duì)象。程序員能夠利用已有的面向?qū)ο蟮闹R(shí)與技巧開(kāi)發(fā) Web 服務(wù)。僅需要使用簡(jiǎn)單的 C 語(yǔ)言結(jié)構(gòu), C 組件將能夠方便地為 Web 服務(wù),并允許它們通過(guò) Inter 被運(yùn)行在任何操作系統(tǒng)上的任何語(yǔ)言所調(diào)用。 ( 4) 完整的安全性與錯(cuò)誤處理 語(yǔ)言的安全性和錯(cuò)誤處理能力是衡量一種語(yǔ)言是否優(yōu)秀的重要依據(jù), C 語(yǔ)言可以避免很多軟件開(kāi)發(fā)中的常見(jiàn)錯(cuò)誤,并提供了包括類(lèi)型安全在內(nèi)的完整的安全性能。 在默認(rèn)情況 下,從 Inter 和 Intra 下載的代碼都不允許訪問(wèn)任何本地文件和資源, C 語(yǔ)言不允許使用未初始化的變量,并提供了邊界檢查與溢出檢查等功能。內(nèi)存管理中的垃圾回收機(jī)制也大大減輕了開(kāi)發(fā)人員的內(nèi)存管理負(fù)擔(dān)。 ( 5) 版本處理技術(shù) C 語(yǔ)言?xún)?nèi)置了版本控制功能,如對(duì)函數(shù)重載和接口的處理方式及特性支持等,從而保證方便地開(kāi)發(fā)和升級(jí)復(fù)雜的軟件。 ( 6) 靈活性與兼容性 在托管狀態(tài)下, C 語(yǔ)言不能使用指針,而是用委托 (delegate)來(lái)模擬指針的功能。兼容性是指 C 語(yǔ)言允許與具有 C 或 C++ 語(yǔ)言 風(fēng)格的需要傳遞指針型參數(shù)的 API 進(jìn)行交互操作,允許 C 語(yǔ)言組件與其他語(yǔ)言組件間的交互操作等。 SQL Server 數(shù)據(jù)庫(kù) 數(shù)據(jù)庫(kù)是數(shù)據(jù)管理的最新技術(shù),是計(jì)算機(jī)科學(xué)的分支。什么是數(shù)據(jù)庫(kù)呢?數(shù)據(jù)庫(kù)是 8 其中存儲(chǔ)的數(shù)據(jù)的集合。如果把 SQL Server 剛買(mǎi)來(lái)時(shí)的所有自帶的初始數(shù)據(jù)都刪掉,那它還是個(gè) SQL Server,就像你把 Word 里的內(nèi)容都刪掉,但 Word 還在那兒。一個(gè) SQL Server 可以同時(shí)開(kāi)多個(gè)數(shù)據(jù)庫(kù)服務(wù)器,每個(gè)數(shù)據(jù)庫(kù)服務(wù)器又可以擁有多個(gè)數(shù)據(jù)庫(kù)。目前較為常用的數(shù)據(jù)庫(kù)有 Access 數(shù)據(jù)庫(kù)、 MS SQL (Structured Query Language 結(jié)構(gòu)化查詢(xún)語(yǔ)言 ) 數(shù)據(jù)庫(kù)、 Oricle 數(shù)據(jù)庫(kù)等。而 SQL 數(shù)據(jù)庫(kù)是目前使用最廣的并且是標(biāo)準(zhǔn)的數(shù)據(jù)庫(kù)語(yǔ)言,它是一個(gè)數(shù)據(jù)庫(kù)平臺(tái),提供數(shù)據(jù)庫(kù)的從服務(wù)器到終端的完整的解決方案,其中數(shù)據(jù)庫(kù)服務(wù)器部分,是一個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng),用于建立、使用和維護(hù)數(shù)據(jù)庫(kù)。 SQL Server 的特點(diǎn): ( 1) 兼容性良好 由于今天 Windows 操作系統(tǒng)占領(lǐng)著主導(dǎo)地的位,選擇 SQL Server 一定會(huì)在兼容性方面取得一些優(yōu)勢(shì)。另外, SQL Server 2020 除了具有擴(kuò)展性, 可靠性以外,還具有可以迅速開(kāi)發(fā)新的因特網(wǎng)系統(tǒng)的功能。尤其是它可以直接存貯 XML 數(shù)據(jù),可以將搜索結(jié)果以 XML 格式輸出等特點(diǎn),有利于構(gòu)建了異構(gòu)系統(tǒng)的互操作性,奠定了面向互聯(lián)網(wǎng)的企業(yè)應(yīng)用和服務(wù)的基石。這些特點(diǎn)在 .NET 戰(zhàn)略中發(fā)揮著重要的作用。 ( 2) 相對(duì)于 的憂(yōu)越性 Microsoft SQL Server 2020 是在 SQL Server 的基礎(chǔ)上對(duì)性能、可靠性、質(zhì)量以及易用性進(jìn)行了擴(kuò)展。 SQL Server 2020 中包含許多新特性,這些特性使其成為針對(duì)電子商務(wù)、數(shù)據(jù)倉(cāng)庫(kù)和在線商務(wù)解決方案的卓越的數(shù)據(jù)庫(kù)平臺(tái)。其增強(qiáng)的特性包括對(duì)豐富的擴(kuò)展標(biāo)記語(yǔ)言( XML)的支持、綜合分析服務(wù)以及便捷的數(shù)據(jù)庫(kù)管理。 ( 3) 電子商務(wù) 在使用由 Microsoft SQL Server 2020 關(guān)系數(shù)據(jù)庫(kù)引擎的情況下, XML 數(shù)據(jù)可在關(guān)系表中進(jìn)行存儲(chǔ),而查詢(xún)則能以 XML 格 式將有關(guān)結(jié)果返回。此外, XML 支持還簡(jiǎn)化了后端系統(tǒng)集成,并實(shí)現(xiàn)了跨防火墻的無(wú)縫數(shù)據(jù)傳輸。你還可以使用 Hypertext Transfer Protocol(超文本傳輸協(xié)議, HTTP)來(lái)訪問(wèn) SQL Server 2020,以實(shí)現(xiàn)面向 SQL Server 2020 數(shù)據(jù)庫(kù)的安全 Web 連接和無(wú)須額外編程的聯(lián)機(jī)分析處理( OLAP)多維數(shù)據(jù)集。 ( 4) 數(shù)據(jù)倉(cāng)庫(kù) Microsoft SQL Server 2020非常明顯的改進(jìn)就是增加了 OLAP(聯(lián)機(jī)分析處理 )功能 ,這可以讓很多中小企業(yè)用戶(hù)也可以使用數(shù)據(jù)倉(cāng)庫(kù)的一些特性進(jìn) 行分析 。 OLAP 可以通過(guò)多維存儲(chǔ)技術(shù)對(duì)大型、復(fù)雜數(shù)據(jù)集執(zhí)行快速、高級(jí)的分析工作。數(shù)據(jù)挖掘功能能夠揭示 9 出隱藏在大量數(shù)據(jù)中的傾向及趨勢(shì),它允許組織或機(jī)構(gòu)最大限度的從數(shù)據(jù)中獲取價(jià)值。通過(guò)對(duì)現(xiàn)有數(shù)據(jù)進(jìn)行有效分析,這一功能可以對(duì)未來(lái)的趨勢(shì)進(jìn)行預(yù)測(cè)。 ( 5) 增強(qiáng)的在線商務(wù) Microsoft SQL Server 2020 簡(jiǎn)化了管理、優(yōu)化工作,并且增強(qiáng)了迅速、成功的部署在線商務(wù)應(yīng)用程序所需的可靠性和伸縮性。其中,用以提高可靠性的特性包括日志傳送、在線備份和故障切換群集。在伸縮性方面的改進(jìn)包括對(duì)多達(dá) 32 顆 CPU 和 64 GB RAM的支持。通過(guò)自動(dòng)優(yōu)化和改進(jìn)后的管理特性 諸如數(shù)據(jù)文件尺寸的自動(dòng)管理、基于向?qū)У臄?shù)據(jù)庫(kù)拷貝、自動(dòng)內(nèi)存管理和簡(jiǎn)化的故障切換群集安裝與管理,在線商務(wù)應(yīng)用程序能夠被迅速部署并有效管理。 10 第 3 章 系統(tǒng)分析 需求分析 系統(tǒng)分析是開(kāi)發(fā)系統(tǒng)的關(guān)鍵性階段,是一個(gè)從不斷認(rèn)識(shí)和逐步細(xì)化的過(guò)程,是下一階段的工作基礎(chǔ),是為下一階段進(jìn)行物理方案設(shè)計(jì)、解決“怎么做”提供依據(jù),基關(guān)鍵性主要體現(xiàn)在“理解需求”和“表達(dá)需求”兩方面。 通過(guò)對(duì)現(xiàn)行系統(tǒng)的詳細(xì)調(diào)研,主要是從系統(tǒng)的角度理解用戶(hù) 的需要,確定新系統(tǒng)的綜合要求,并提出這些需求的實(shí)現(xiàn)條件以及需求應(yīng)達(dá)到的標(biāo)準(zhǔn),也就是確定新系統(tǒng)要做什么,做到什么程度。這些需求包括: ( 1) 功能需求。 確定新系統(tǒng)應(yīng)做什么,這是最主要的需求。 ( 2) 性能需求。 給出所開(kāi)發(fā)的新系統(tǒng)的技術(shù)性能指標(biāo),包括存儲(chǔ)容量限制、運(yùn)行時(shí)間限制、安全保密性等。 ( 3) 環(huán)境需求。 這是對(duì)系統(tǒng)運(yùn)行以及所處環(huán)境的要求。例如,在硬件方面采用什么機(jī)型、有什么硬件設(shè)備等;在軟件方面,采用什么支持系統(tǒng)運(yùn)行的系統(tǒng)軟件(指操作系統(tǒng)、數(shù)據(jù)庫(kù)管理系統(tǒng))。 ( 4) 未來(lái)需求。 這類(lèi)要求是指目前不屬于系統(tǒng)開(kāi) 發(fā)的范圍,但將來(lái)隨著外界環(huán)境的變化以及系統(tǒng)的發(fā)展可能會(huì)提出的要求。了解這類(lèi)要求的目的是在開(kāi)發(fā)過(guò)程中,可對(duì)系統(tǒng)將來(lái)可能的擴(kuò)展與修改做準(zhǔn)備。一旦需要時(shí),就比較容易進(jìn)行補(bǔ)充和修改了。 需求分析是對(duì)系統(tǒng)功能性和非功能性的捕獲,是下一步工作的基礎(chǔ)和開(kāi)始,基于Web 的教學(xué)資源庫(kù)管理平臺(tái)設(shè)計(jì)涉及到“管理員”“普通用戶(hù)”兩個(gè)執(zhí)行者,每個(gè)執(zhí)行者都有一定的功能需求,針對(duì)這些用戶(hù)進(jìn)行分析,可以得到系統(tǒng)的功能需求情況,其中管理員需要“用戶(hù)管理”、“資源管理”、“資源審核”三項(xiàng)服務(wù),普通用戶(hù)僅需要“上傳資源”服務(wù)。因此,本系統(tǒng)主要是 開(kāi)發(fā)一個(gè)簡(jiǎn)單的基于 Web 的教學(xué)資源庫(kù)后臺(tái)管理系統(tǒng)。 11 可行性分析 可行性分析是需求分析的基礎(chǔ)上進(jìn)行的,對(duì)系統(tǒng)的開(kāi)發(fā)從技術(shù)、經(jīng)濟(jì)、營(yíng)運(yùn)等方面進(jìn)行分析,并得出系統(tǒng)的開(kāi)發(fā)工作可行、不可行、需要修改、追加投資、暫緩開(kāi)發(fā)、分步實(shí)施等方案和結(jié)論,最后完成可行性分析。 可行性分析一般可定義為:可行性分析是在建設(shè)的前期對(duì)工程項(xiàng)目的一種考察和鑒定,對(duì)擬議中的項(xiàng)目進(jìn)行全面與綜合的技術(shù)、經(jīng)濟(jì)能力的調(diào)查,判斷它是否可行。 可行性分析階段的主要工作包括以下幾個(gè)方面: ( 1) 技術(shù)可行性分析 技術(shù)可行性分析是根據(jù)新系統(tǒng)的目標(biāo)來(lái)衡量 是否具備所需要的技術(shù),包括系統(tǒng)開(kāi)發(fā)人員數(shù)量和水平,硬件方面,軟件方面及其它應(yīng)用技術(shù)。 從各個(gè)網(wǎng)站及許多局域網(wǎng)的建設(shè)中可以看到,雖然目前基于 Web 的信息系統(tǒng)開(kāi)發(fā)尚缺乏成熟的方法與原則,但這一類(lèi)的開(kāi)發(fā)并不少見(jiàn),而且有一些成功的經(jīng)驗(yàn)可供借鑒,相信隨著 Inter/Intra 技術(shù)的進(jìn)一步發(fā)展,基于 Web 的信息系統(tǒng)開(kāi)發(fā)將有更為明朗的前景。 ( 2) 經(jīng)濟(jì)可行性分析 經(jīng)濟(jì)可行性分析主要是對(duì)開(kāi)發(fā)新系統(tǒng)所投入的資金與系統(tǒng)投入使用后所帶來(lái)的經(jīng)濟(jì)效益進(jìn)行比較,確認(rèn)新系統(tǒng)是否會(huì)給企業(yè)帶來(lái)一定的經(jīng)濟(jì)效益。本系統(tǒng)在開(kāi)發(fā)過(guò)程中所 需的軟、硬件設(shè)備以及開(kāi)發(fā)技術(shù)人員都已具備,其開(kāi)發(fā)費(fèi)用在可承受范圍內(nèi)。 ( 3) 營(yíng)運(yùn)可行性分析 營(yíng)運(yùn)可行性主要是指系統(tǒng)對(duì)組織機(jī)構(gòu)的影響,現(xiàn)有人員和機(jī)構(gòu)、設(shè)施、環(huán)境等對(duì)系統(tǒng)的適應(yīng)性和進(jìn)行人員培訓(xùn)、補(bǔ)充計(jì)劃的可行性。營(yíng)運(yùn)可行性分析的主要內(nèi)容包括系統(tǒng)與組織目標(biāo)、運(yùn)行機(jī)制的匹配關(guān)系,各部門(mén)工作與系統(tǒng)運(yùn)行的適應(yīng)性、人員適應(yīng)性,人員計(jì)劃的可行性、環(huán)境條件的可行性。 12 第 4 章 系統(tǒng)設(shè)計(jì) 系統(tǒng)功能模塊設(shè)計(jì) 本系統(tǒng)總體的功能是實(shí)現(xiàn)基于 Web 的教學(xué)資源庫(kù)管理平臺(tái)的系統(tǒng)化、規(guī)范化和自動(dòng)化。經(jīng)過(guò)實(shí)際的分析與調(diào)研,確定將系統(tǒng)功能 大致分為用戶(hù)管理、資源管理、資源審核等部分。下面分述各部分具體的功能。 用戶(hù)管理:實(shí)現(xiàn)管理員對(duì)用戶(hù)的添加、用戶(hù)權(quán)限的設(shè)置、用戶(hù)密碼的修改以及用戶(hù)列表的查看等功能。 資源管理:主要是實(shí)現(xiàn)資源查詢(xún)、資源修改、資源上傳、刪除資源、資源推薦等功能。 資源審核:實(shí)現(xiàn)對(duì)用戶(hù)上傳資源的審核,并進(jìn)行發(fā)布等功能。 基于 Web 的教學(xué)資源庫(kù)管理平臺(tái)設(shè)計(jì)系統(tǒng)的各部分功能直觀圖如圖 所示: Fig . WEBbased teaching resources database management platform 圖 基于 Web的教學(xué)資源庫(kù)