Web打字原型系統

才智咖 人氣:4.21K

一、選題目的和意義
 近年來,網際網路在國際上得到了迅猛的發展,基於網際網路的各種應用也日益受到人們的重視,目前流行的打字測試系統經常會用在一些計算機考試中,但大多打字測試系統只是對單一使用者的測試系統,這種測試形式大多隻是在單機上實現,它不支援遠端異地考試。在測試環節中,我們仍然過分依賴於傳統的測試模式,目前的單機化測試,仍然存在著過程的繁瑣和浪費:測試之前,需要下載或購買測試軟體,接著需要對機器安裝測試系統,然後才可以使用,而且這種軟體不經常使用,可見是一種資源浪費。所以,這種在Web中線上的測試及考試是一種發展趨勢,人們只需要開啟網頁即可進行測試,使用方便。
二、本選題在國內外的研究現狀和發展趨勢
 隨著社會的發展與計算機的普及,人們對電子計算機不再感到神祕。全民學習計算機的熱情很高,打字對於計算機初學者來說是最基本的需要掌握的技術,因此各種打字系統也隨之產生。現在存在的打字系統一般都是各種軟體,需要使用者安裝到機器上,這種測試形式大多隻是在單機上實現,它不支援遠端異地考試。在測試環節中,我們仍然過分依賴於傳統的測試模式,目前的單機化測試,仍然存在著過程的繁瑣和浪費:測試之前,需要下載或購買測試軟體,接著需要對機器安裝測試系統,然後才可以使用,而且這類軟體不經常使用,可見是一種浪費。所以,這種在Web中線上的測試及考試是一種發展趨勢。
三、課題設計方案  [主要說明:研究(設計)的基本內容、觀點及擬採取的研究途徑。]
 編寫的一個Web打字原型系統。此係統是採用java script編寫,對使用者所輸入的文字進行測試,測試的方面主要包括:錄入文字的速度、錄入文字的錯誤率、在文字錄入時出現的錯誤能夠及時標記出來、對測試結果的儲存。本文也是主要在上述幾方面進行編碼設計。此係統在Web中釋出以後,會大大方便使用者,使使用者在何時何地都能進行此種測試及練習。
四、計劃進度安排  [主要說明:起止時間及分階段的進度要求。]
 
 第一階段:      起止時間:2005.11.1-2005.11.20
                  進度要求:熟悉開發工具,蒐集相關資料;
 第二階段:      起止時間:2005.11.21-2005.12.1
                   進度要求:撰寫開題報告書;
 第三階段:      起止時間:2005.12.2-2006.12.19
                   進度要求:確定設計具體要實現的內容,進行可行性分析;編寫程式並基本實現系統功能;撰寫設計文件;
 第四階段:      起止時間:2005.12.20-2006.1.15
 進度要求:將論文交與指導老師,進一步修改,準備答辯。
五、主要參考文獻
1 馮博琴,呂軍.計算機網路.高等教育出版社.2002
2 雷學生 script語言程式設計教程.中國水利水電出版社.2004
3 張洪斌 script程式設計.清華大學出版社.2001
4 Douglas Dunn  java script Rules 中文版(譯)中國電力出版社.2003
5 廖若雪 script高階程式設計 機械工業出版社.2001
6 薩師煊,王珊.資料庫系統概論.第3版.高等教育出版社.2000
7 張海藩.軟體工程導論.第4版 清華大學出版社.2003
8 湯庸,葉小平,湯娜.資料庫理論及應用基礎.清華大學出版社.2004
 
指導教師意見及建議

Web打字原型系統

 

 年 月 日

教學單位領導小組審批意見:


籤  名:

年 月 日

Web打字原型系統
張森
(德州學院計算機系,山東德州 253023)
摘要:本文介紹的是基於對現在流行的單機打字測試系統所帶來的不便,從而編寫的一個Web打字原型系統。此係統是採用java script編寫,對使用者所輸入的文字進行測試,測試的方面主要包括:錄入文字的速度、錄入文字的錯誤率、在文字錄入時出現的錯誤能夠及時標記出來、對測試結果的儲存。本文也是主要在上述幾方面進行編碼設計。
此係統在Web中釋出以後,會大大方便使用者,使使用者在何時何地都能進行此種測試及練習。
關鍵詞:原型,java script,文字測試,演算法分析
1  引言
 近年來,網際網路在國際上得到了迅猛的發展,基於網際網路的各種應用也日益受到人們的重視,目前流行的打字測試系統經常會用在一些計算機考試中,但大多打字測試系統只是對單一使用者的測試系統,這種測試形式大多隻是在單機上實現,它不支援遠端異地考試。在測試環節中,我們仍然過分依賴於傳統的測試模式,目前的單機化測試,仍然存在著過程的繁瑣和浪費:測試之前,需要下載或購買測試軟體,接著需要對機器安裝測試系統,然後才可以使用,而且這軟體不經常使用,可見是一種浪費。所以,這種在Web中線上的測試及考試是一種發展趨勢,人們只需要開啟網頁即可進行測試,使用方便,而且還能根據自己的愛好更換文章測試型別。
2  打字系統的需求分析
 需求分析的基本任務是準確地回答“系統必須做什麼”這個問題,分析出系統的資料要求。使用者需要的打字系統要具有顯示打字速度、統計總數、進行錯誤提示等功能,在測試中使用者可以根據要求更換文章及型別等。在具體設計時要體現人性化的要求,滿足大多數使用者的要求。本系統是針對一般初級使用者進行打字測試的,無需安裝專門的安裝程式;只需開啟網頁即可進行測試,因此本系統採用java script角本語言,java script是網景公司開發的一種瀏覽器解釋執行的角本語言,現在所有的瀏覽器都有執行,因此具有跨平臺跨系統性。
2.1 瞭解java script
 java script是一種基於物件(Object)和事件驅動(Event Driven)並具有安全效能的指令碼語言,有了java script,可使網頁變得生動。使用它的目的是與HTML超文字標識語言、Java 指令碼語言一起實現在一個網頁中連結多個物件,與網路客戶互動作用,從而可以開發客戶端的應用程式。它是通過嵌入或調入在標準的HTML語言中實現的。java script是一種基於客戶端瀏覽器的語言,使用者在瀏覽中填表、驗證的互動過程只是通過瀏覽器對調入HTML文件中的java script原始碼進行解釋執行來完成的。java script是一種解釋性程式語言,其原始碼在發往客戶端執行之前不需經過編譯,而是將文字格式的字元程式碼傳送給客戶編譯,由瀏覽器解釋執行。
2.2 java script的特點
java script具有很多優點:
 (1)簡單性。java script是一種指令碼編寫語言,它採用小程式段的方式實現程式設計,像其它指令碼語言一樣,java script同樣也是一種解釋性語言,它提供了一個簡易的開發過程;
 (2)動態性。java script是動態的,它可以直接對使用者或客戶的輸入做出響應,無須經過Web服務程式;
 (3)跨平臺性。java script是依賴於瀏覽器本身,與操作環境無關,只要能執行瀏覽器的計算機,並支援java script的瀏覽器就可以正確執行。
 java script是一種對資料型別變數要求不太嚴格的語言,所以不必宣告每一個變數的型別,變數宣告儘管不是必須的,但在使用變數之前先進行宣告是一種好的習慣。可以使用 var 語句來進行變數宣告。java script 是一種區分大小寫的語言,因此將一個變數命名為 computer 和將其命名為 Computer是不一樣的。
 綜上所述,java script 是一種新的描述語言,它可以被嵌入到 HTML 的檔案之中。 java script語言可以做到迴應使用者的需求事件 (如: form 的輸入) ,而不用任何的網路來回傳輸資料,所以當一位使用者輸入一項資料時,它不用經過傳給伺服器端 (Server)處理,再傳回來的過程,而直接可以被客戶端 (Client) 的應用程式所處理。所以,我選擇java script語言來作為我做此設計的語言。
2.3打字系統的功能流程圖
 使用者進入測試介面以後,選擇測試的文章型別,然後選擇隨機(選擇隨機就是將選擇的文章打亂原有的順序),然後開始測試,測試過程中,文章的內容和使用者輸入的字元同步顯示,輸入完畢後,結束測試,然後統計出測試結果,測試結果包括:使用者打字的速度統計、字數統計、用時統計及正確率。如圖1:
 圖1  打字系統的功能流程圖

3打字系統的總體設計
3.1打字系統的功能模組圖,
 打字系統的功能包括:文字框賦值、獲得選項值、取得隨機字元、顯示打字成績、重新整理網頁、顯示用時、統計打字速度、選擇文章型別、結束打字,如圖2:

 
 圖2  打字系統的功能模組圖
3.2 打字系統的使用者介面設計,如圖3:

圖3 使用者介面設計
4  打字系統的詳細設計
4.1程式的設計說明
 當用戶要進行打字的時候,點選開始時系統不能立即進入打字狀態,需要有一段等待時間,若此時正行則使用者沒有準備時間,因此需要延遲一段時間。開始測試的時候系統還需要初始化一些變數,這些變數進入迴圈計算。本系統根據使用者的打字習慣,分為英文文章打字測驗,中文文章測驗,英文單個字元測驗,數字測驗,四個選擇項,並且使用者可以根據要求選擇是否隨機,若隨機則取的時候打亂順序。本系統每次英文與數字是取60個字元,漢字是取30個字。當把文章讀出來後需要在指定地方顯示出來以方便使用者參照進行測試,並且使用者對照上邊打字若打錯後上一行能顯示紅字,打完這一行後,能夠自動跳轉到下一行,使用者也可以手動按回車鍵進行下一行的錄入。當開始打字的時候。記錄下開始時間,通過一定演算法把耗費時間,打字正確率,打字速度,打字總數統計出來,並實時重新整理。
4.2、功能設計
(1)獲得測驗打字系統的文章內容
 本系統根據使用者的打字習慣,分為英文文章打字測驗,中文文章測驗,英文單個字元測驗,數字測驗,四個選擇項,並且使用者可以根據要求選擇是否隨機,若隨機則取的時候打亂順序。本系統每次英文與數字是取60個字元,漢字是取30個字。具體流程圖如4:
                                     
圖4  具體功能程式流程圖

(2)在網頁中顯示要打字的內容
 當把文章讀出來後需要在指定地方顯示出來以方便使用者參照進行測試,並且使用者對照上邊打字若打錯後上一行能顯示紅字,打完這一行後,能夠自動跳轉到下一行,使用者也可以手動按回車鍵進行下一行的錄入。如圖5:

 圖5獲取打字內容的程式流圖
(3)顯示時間與打字速度正確率
 當開始打字的時候。記錄下開始時間,通過一定演算法把耗費時間,打字正確率,打字速度,打字總數統計出來,並實時重新整理。如圖6:

 
 
圖6 獲取用時及正確率程式流圖
4)初始化及開始時間提示
 當用戶要進行打字的時候,點選開始按鍵時系統不能立即進入打字狀態,需要有一段等待時間,若此時正行則使用者沒有準備時間,因此需要延遲一段時間。開始測試的時候系統還需要初始化一些變數,文字框變進入迴圈計算。如圖7:
 
 


圖7初始化程式流程圖
(5)監聽鍵盤
 當用戶進入測試的時候需要測試整篇文章,而一開始只能讀一行60個字元或者30漢字,輸入完一行後需要重新得到下一行的資料,因此要時刻監聽鍵盤的事件!當用戶按下回車鍵,或者輸入的文字框到了60個字元時,就要重新換行。另外,當用戶按下ESC鍵就停止,並統計出打字成績!如圖8:

  
圖8監聽鍵盤的程式流程圖
5  測試
5.1 測試的`目標
測試是為了發現程式中的錯誤而執行程式的過程;
好的測試方案是儘可能發現迄今為止尚未發現的錯誤的測試方案;
成功的測試是發現了至今為止尚未發現的錯誤的測試。
 測試任何產品都有兩種方法:如果已經知道了產品應該具有的功能,可以通過測試來檢驗是否每個功能都能正常使用;如果知道產品的內部工作過程,可以通過測試來檢驗產品內部動作是否按照規格說明書的規定正常進行。前一種方法稱為黑盒測試,後一種方法稱為白盒測試。
   對於軟體測試而言,黑盒測試法把程式看作一個盒子,完全不考慮程式的內部結構的處理過程。也就是說,黑盒測試是在程式介面進行的測試,它只檢查程式功能是否能按照規格說明書的規定正常使用,程式是否能適當地接收輸入資料併產生正確的輸出資訊,程式執行過程中能否保持外部資訊的完整性。黑盒測試又稱為功能測試。
   白盒測試法與黑盒測試法相反,它的前提是可以把程式看成裝在一個透明的白盒子裡,測試者完全知道程式的結構和處理演算法。這種方法按照程式內部的邏輯測試程式,檢測程式中的主要執行通路是否都能按預定要求正確工作。白盒測試又稱為結構測試。
 在本系統中計算打字速度與統計打字數量等功能模組都進行了黑盒測試,在本測試中發現了很多功能漏洞,但是在後來進一步完善改正了前面的錯誤。在不同的作業系統和瀏覽器中測試成功,並請很多同學幫助進行功能測試。在白盒測試中沒有專門的測試軟體,採用人工方式逐行閱讀程式碼檢查可能存在的邏輯錯誤,並一一改正。
6 打字系統總結
 通過這次畢業設計本人在開發java script應用程式方面有了長足的進步,對java script的網路程式設計有了深刻的體會。
 
 參 考 文 獻:
1 馮博琴,呂軍.計算機網路.高等教育出版社,2002
2 雷學生,java script語言程式設計教程.中國水利水電出版社,2004
3 張洪斌,java script程式設計.清華大學出版社,2001
4 Douglas Dunn ,java script Rules 中文版(譯).中國電力出版社,2003
5 廖若雪,java script高階程式設計 機械工業出版社,2001
6 薩師煊,王珊.資料庫系統概論.第3版.高等教育出版社,2000
7 張海藩,軟體工程導論.第4版 .清華大學出版社,2003
8 湯庸,葉小平,湯娜.資料庫理論及應用基礎.清華大學出版社,2004

A Web-based typewriting prototype system
Zhang Sen
 (Department of Computer, DeZhou University, DeZhou, 200421001277)
Abstract:   This thesis introduces a Web-based typewriting prototype system which is based on the inconvenience of PC. The system is coded by java script language . This system tests users typewriting, the test mainly includes : the speed of writing, the error rate of writing, the preservation of the test results. This thesis also is mainly to carry on coding the design several aspects above. The system published on the Web would take it easy for user to do the tests and practices when and where they need.
Key words: prototype; java script; typewriting; algorithm analysis
 
  謝  辭
 此次畢業論文的順利完成受益於我的指導老師孫壽龍老師,劉建軍與任傳成老師的熱情指導和幫助,還有黃林同學在編碼設計中的幫助,他們細心不倦的指導使我通過這次嘗試,使我進一步對物件導向程式設計中java script語言程式設計和網路程式設計、軟體構件複用與資料庫開發有了更深的理解,使我在軟體開發方面的能力有了很大的提高!在此我向他們表示真誠的感謝和真心的祝福。
 此次嘗試的確是一個很好的開端,通過它,我為自己以後的繼續求學之路明確了方向,併為以後的發展奠定了堅實的基礎!
 
 

TAGS:系統 Web 打字