




已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
畢業(yè)設(shè)計論文畢業(yè)設(shè)計論文 作者 學(xué)號 系部 專業(yè) 題目 基于 Java 的貪吃蛇游戲設(shè)計 指導(dǎo)教師 評閱教師 完成時間 畢業(yè)設(shè)計畢業(yè)設(shè)計 論文論文 中文摘要中文摘要 題目 基于 Java 的游戲設(shè)計 貪吃蛇 摘要 貪吃蛇 游戲是使用 Java 語言開發(fā)的一款經(jīng)典的游戲 它因操作簡單 娛樂 性強(qiáng)而廣受歡迎 本文基于 Java 技術(shù)和 eclipse 開發(fā)環(huán)境 開發(fā)了一個操作簡單 界 面美觀 功能較齊全的 貪吃蛇 游戲 整個游戲程序分為十個類模塊 實現(xiàn)了游戲的 開始 暫停 結(jié)束 能夠?qū)崿F(xiàn)加速和減速 通過本游戲的開發(fā) 達(dá)到學(xué)習(xí) Java 技術(shù)和 熟悉軟件開發(fā)流程的目的 本文在介紹 Java 相關(guān)技術(shù)時對 貪吃蛇 游戲的整個生命周期的各個開發(fā)階段進(jìn) 行了詳細(xì)地介紹 首先 分析了開發(fā)本游戲軟件的可行性 其次 從游戲主界面等幾方 面 分析了本游戲的功能需求 然后 進(jìn)行了游戲的概要設(shè)計和詳細(xì)設(shè)計 這也是本文 的重點 概要設(shè)計給出兩個功能模塊的主框架以及八個類模塊的函數(shù)調(diào)用關(guān)系 詳細(xì)設(shè) 計重點給出各個類模塊的程序列表 介紹了各個類包含的變量 使用的方法 展示了游 戲的界面 為了保證程序代碼的正確性和功能實現(xiàn)的可靠性 本文還介紹了游戲軟件的程序調(diào) 試過程和功能測試結(jié)果 關(guān)鍵詞 Java eclipse 貪吃蛇 開發(fā)流程 畢業(yè)設(shè)計畢業(yè)設(shè)計 論文論文 外文摘要外文摘要 TitleTitle Java based game design Snake Abstract Snake game is a classic game using the Java language development it is simple entertaining and popular This article is based on Java technology and the Eclipse development environment developing a simple beautiful interface Full featured Snake game The entire game program is divided into ten modules the start of the game pause end being able to achieve speed up and speed down Through the development of the game to achieve the purpose of learning Java technology and familiar with the software development process Introducing Java related technologies a detailed description of the various development phases of the entire life cycle of the Snake game First the analysis of the feasibility of the development of the game software Secondly the game from the main game interface aspects functional requirements Then the outline design and detailed design of the game which is the focus of this article Outline design gives the main frame of the two functional modules and The eight modules function call relationship Detailed design focusing of each module is given the list of programs each class contains variables the methods used showing the game s interface In order to ensure the correctness and functions achieving reliability of the program code the article also describes the results of the game software debugging process and functional testing keywords Java eclipse Snake the development process I 目錄 1 緒論 1 1 1 JAVA語言的特點 1 1 2 開發(fā)工具 ECLIPSE介紹 2 1 3 開發(fā)工具 JDK 介紹 2 1 4 應(yīng)用環(huán)境 3 2 系統(tǒng)需求分析 3 2 1 需求分析 3 2 2 可行性分析 3 3 系統(tǒng)概要設(shè)計 4 3 1 游戲流程圖 4 3 2 設(shè)計目標(biāo) 5 3 3 系統(tǒng)功能模塊 5 3 4 系統(tǒng)數(shù)據(jù)結(jié)構(gòu)設(shè)計 7 4 系統(tǒng)詳細(xì)設(shè)計 10 4 1 程序設(shè)計 10 4 2 貪吃蛇游戲各功能界面截圖 13 5 系統(tǒng)測試 16 5 1 測試的意義 16 5 2 測試過程 16 5 3 測試結(jié)果 17 結(jié)論 18 致謝 19 參考文獻(xiàn) 19 1 1 1 緒論緒論 貪吃蛇是世界知名的益智類小游戲 選擇這個題目一方面是為了將我們自己的所學(xué)知 識加以運用 另一方面 我希望通過自己的所學(xué)知識把它剖析開來 通過自己的動手實踐 真正的了解它的本質(zhì)和精髓 希望通過這次實踐 能從中提高自己的編程能力 并從中學(xué) 會從零開始分析設(shè)計程序 達(dá)到學(xué)以致用 活學(xué)活用的目的 另外 通過本游戲的開發(fā) 達(dá)到學(xué)習(xí) Java 技術(shù)和熟悉軟件開發(fā)流程的目的 本游戲的開發(fā)語言為 Java 開發(fā)工具選用 Eclipse Java 是一種簡單的 面向?qū)ο?的 分布式的 解釋型的 健壯安全的 結(jié)構(gòu)中立的 可移植的 性能優(yōu)異 多線程的動 態(tài)語言 這里采用 Java 作為開發(fā)語言主要是基于 Java 的面向?qū)ο蠛涂梢浦残?Eclipse 是一個開放源代碼的 基于 Java 的可擴(kuò)展開發(fā)平臺 就其本身而言 它只是一個框架和 一組服務(wù) 用于通過插件組件構(gòu)建開發(fā)環(huán)境 1 11 1 JavaJava 語言的特點語言的特點 1 1 1 簡單性 Java 與 C 語言非常相近 但 Java 比 C 簡單 它拋棄了 C 中的一些不是絕對必要 的功能 如頭文件 預(yù)處理文件 指針 結(jié)構(gòu) 運算符重載 多重繼承以及自動強(qiáng)迫同型 Java 實現(xiàn)了自動的垃圾收集 簡化了內(nèi)存管理的工作 1 1 2 平臺無關(guān)性 Java 引進(jìn)虛擬機(jī)原理 并運行于虛擬機(jī) 實現(xiàn)不同平臺之間的 Java 接口 Java 的數(shù) 據(jù)類型與機(jī)器無關(guān) 1 1 3 安全性 Java 的編程類似 C 但舍棄了 C 的指針對存儲器地址的直接操作 程序運行時 內(nèi) 存由操作系統(tǒng)分配 這樣可以避免病毒通過指針入侵系統(tǒng) 它提供了安全管理器 防止程 序的非法訪問 1 1 4 面向?qū)ο?Java 吸收了 C 面向?qū)ο蟮母拍?將數(shù)據(jù)封裝于類中 實現(xiàn)了程序的簡潔性和便于維 護(hù)性 使程序代碼可以只需一次編譯就可反復(fù)利用 2 1 1 5 分布式 Java 建立在 TCP IP 網(wǎng)絡(luò)平臺上 提供了用 HTTP 和 FTP 協(xié)議傳送和接收信息的庫函數(shù) 使用其相關(guān)技術(shù)可以十分方便的構(gòu)建分布式應(yīng)用系統(tǒng) 1 1 6 健壯性 Java 致力于檢查程序在編譯和運行時的錯誤 并自動回收內(nèi)存 減少了內(nèi)存出錯的可 能性 Java 取消了 C 語言的結(jié)構(gòu) 指針 define 語句 多重繼承 goto 語句 操作符 重載等不易被掌握的特性 提供垃圾收集器自動回收不用的內(nèi)存空間 1 21 2 開發(fā)工具開發(fā)工具 EclipseEclipse 介紹介紹 Eclipse 是一個開放源代碼的 基于 Java 的可擴(kuò)展開發(fā)平臺 就其本身而言 它只 是一個框架和一組服務(wù) 用于通過插件組件構(gòu)建開發(fā)環(huán)境 幸運的是 Eclipse 附帶了一 個標(biāo)準(zhǔn)的插件集 包括 Java 開發(fā)工具 Java Development Tools JDT 雖然大多數(shù)用戶很樂于將 Eclipse 當(dāng)作 Java IDE 來使用 但 Eclipse 的目標(biāo)不僅 限于此 Eclipse 還包括插件開發(fā)環(huán)境 Plug in Development Environment PDE 這個 組件主要針對希望擴(kuò)展 Eclipse 的軟件開發(fā)人員 因為它允許他們構(gòu)建與 Eclipse 環(huán)境 無縫集成的工具 盡管 Eclipse 是使用 Java 語言開發(fā)的 但它的用途并不限于 Java 語言 例如 支 持諸如 C C 等編程語言的插件已經(jīng)可用 或預(yù)計會推出 Eclipse 框架還可用來作為與 軟件開發(fā)無關(guān)的其他應(yīng)用程序類型的基礎(chǔ) 比如內(nèi)容管理系統(tǒng)等 1 31 3 開發(fā)工具開發(fā)工具 JDKJDK 介紹介紹 Sun Microsystems 公司在推出 Java 語言的同時 推出了一套開發(fā)工具 JDK Sun 提供 的基于字符模式的 Java 開發(fā)工具包 JDK Java 開發(fā)工具 JDK 是許多 Java 專家最初使用 的開發(fā)環(huán)境 Java 是平臺無關(guān)的語言是因為用 Java 寫的應(yīng)用程序不用修改就可在不同的 軟硬件平臺上運行 Java 源程序編寫借助于記事本編輯工具 所有的 Java 文件編輯 編譯 調(diào)試 解釋運行都是通過使用字符命令來執(zhí)行操作 JDK 由一個標(biāo)準(zhǔn)類庫和一組建立 測試及建立文檔的 Java 實用程序組成 其核心 Java API 是一些預(yù)定義的類庫 開發(fā)人員需要用這些類來訪問 Java 語言的功能 JDK 是整個 Java 的核心 包括了 Java 運行環(huán)境 Java Runtime Environment 一堆 Java 工具和 Java 基 3 礎(chǔ)的類庫 不論什么 Java 應(yīng)用服務(wù)器實質(zhì)都是內(nèi)置了某個版本的 JDK 因此掌握 JDK 是學(xué) 好 Java 的第一步 最主流的 JDK 是 Sun 公司發(fā)布的 JDK 除了 Sun 之外 還有很多公司和組織都開發(fā)了 自己的 JDK 例如 IBM 公司開發(fā)的 JDK BEA 公司的 Jrocket 還有 GNU 組織開發(fā)的 JDK 等 等 其中 IBM 的 JDK 包含的 JVM Java Virtual Machine 運行效率要比 Sun JDK 包含的 JVM 高出許多 而專門運行在 x86 平臺的 Jrocket 在服務(wù)端運行效率也要比 Sun JDK 好很 多 1 41 4 應(yīng)用環(huán)境應(yīng)用環(huán)境 1 操作系統(tǒng) Windows 7 Windows xp 等 2 應(yīng)用軟件 jdk7 1 eclipse 2 2 系統(tǒng)需求分析系統(tǒng)需求分析 2 12 1 需求分析需求分析 本系統(tǒng)主要是完成貪吃蛇游戲的基本操作 用戶可以自己練習(xí)和娛樂 本系統(tǒng)需要滿 足以下幾點要求 1 利用方向鍵來改變蛇的運行方向 2 空格鍵或回車鍵暫停或繼續(xù)游戲 并在隨機(jī)的地方產(chǎn)生食物 PgUp 和 PgDn 控制 速度快慢 3 吃到食物就變成新的蛇體 碰到壁或自身則游戲結(jié)束 否則正常運行 2 22 2 可行性分析可行性分析 貪吃蛇游戲是一種簡單的大眾的游戲 自從計算機(jī)實現(xiàn)以來 深受廣大電腦玩家的喜 愛 做一個簡單的貪吃蛇小游戲 也比較符合現(xiàn)代人用來打發(fā)閑暇時光的方式 貪吃蛇的核心算法是如何實現(xiàn)移動和吃掉食物 沒有碰到食物的時候 把當(dāng)前運動方 向上的下個節(jié)點入隊 并以蛇節(jié)點的顏色繪制這個節(jié)點 然后把頭指針?biāo)傅墓?jié)點出隊 并以游戲框架內(nèi)部背景色重繪出隊的節(jié)點 這樣就可以達(dá)到移動的效果 而在吃到食物的 時候 則只需把食物入隊即可 實現(xiàn)貪吃蛇的基本的蛇身移動 吃到食物身體增長 和碰 到墻壁或自身死亡 能夠暫停和開始 本次設(shè)計主要運用 java 語言來完成 Java 語言是一種跨平臺 適合于分布式計算環(huán) 4 境的面向?qū)ο缶幊陶Z言 用 Java 寫的應(yīng)用程序不用修改就可在不同的軟硬件平臺上運行 由于 Java 主要用于網(wǎng)絡(luò)應(yīng)用程序開發(fā) 因此對安全性有較高的要求 如果沒有安全保 證 用戶從網(wǎng)絡(luò)下載程序執(zhí)行就非常危險 Java 通過自己的安全機(jī)制防止了病毒程序的產(chǎn) 生和下載程序?qū)Ρ镜叵到y(tǒng)的威脅破壞 3 3 系統(tǒng)概要設(shè)計系統(tǒng)概要設(shè)計 3 13 1 游戲流程圖游戲流程圖 圖 3 1 游戲流程圖 進(jìn)入游戲界面 點擊開始按鈕 游戲開始 蛇隨機(jī)產(chǎn)生 O 操作 空格 暫停 上移 下移 左移 右移 沒有吃到食物 且碰到邊界 游戲中途欲中斷 稍候進(jìn)行游戲 單擊重新開始游戲單擊暫停游戲 單擊開始游戲 游戲恢復(fù)正常 5 3 23 2 游戲整體結(jié)構(gòu)圖游戲整體結(jié)構(gòu)圖 圖 3 2 游戲整體結(jié)構(gòu)圖 3 33 3 設(shè)計目標(biāo)設(shè)計目標(biāo) 本系統(tǒng)是針對貪吃蛇小游戲的 Java 程序 利用方向鍵來改變蛇的運行方向 空格鍵暫 ?;蚶^續(xù)游戲 并在隨機(jī)的地方產(chǎn)生食物 吃到食物就變成新的蛇體 碰到壁或自身則游 戲結(jié)束 否則正常運行 3 43 4 系統(tǒng)功能模塊系統(tǒng)功能模塊 1 本系統(tǒng)共包括 10 個類文件 java 源文件及其功能如表所示 6 表 3 1 java 源文件及其功能 2 主要類之間的對應(yīng)關(guān)系如下 圖 3 3 主要類之間的關(guān)系 3 因為蛇不能直接操作顯示面板 GamePanel 所以定義一個監(jiān)視器 SnakeListener 里 面有兩個方法 snakeMoved 和 snakeEatFood 序號文件名主要功能 1MainFrame 該文件為程序入口 含有 main 方法 2GameOptionPanel 實現(xiàn)菜單控制運行等總體要求 實現(xiàn)方向鍵控制 蛇的方向 空格鍵控制游戲暫停或繼續(xù)等 3SnakeListener 蛇的監(jiān)聽器 4GameListener 游戲監(jiān)聽器 5Food 該文件實現(xiàn)組成蛇身的單位 食物 6Ground 該文件實現(xiàn)障礙物 石頭 7Snake 該文件實現(xiàn)蛇類 8Global 該文件為工具類 實現(xiàn)一些配置 9Controller 控制器 控制蛇 食物 石頭 10GamePanel 游戲的顯示界面設(shè)置 7 圖 3 4 通過事件監(jiān)聽建立聯(lián)系 3 53 5 系統(tǒng)數(shù)據(jù)結(jié)構(gòu)設(shè)計系統(tǒng)數(shù)據(jù)結(jié)構(gòu)設(shè)計 3 5 1 蛇 石頭 食物的表示 用一個大的表格來表示顯示區(qū)域 里面的格子就是組成蛇的基本單位 一個格子可以 代表一個食物 也可以代表一個石頭 幾塊連在一起的石頭就可以代表一條蛇 使用坐標(biāo) 來區(qū)分這些格子 圖 3 5 蛇 石頭 食物的表示 這里用一個集合來存儲這些坐標(biāo) 并且要求能夠區(qū)分出蛇頭和蛇尾 3 5 2 蛇的移動 蛇向前移動一步 可以看作是蛇頭前面增加了一個節(jié)點 蛇的尾巴上少了一個節(jié)點 即去尾 加頭 8 圖 3 6 蛇的移動 3 5 3 存儲蛇身的數(shù)據(jù)結(jié)構(gòu) 由于要區(qū)分蛇頭和蛇尾 因此這個數(shù)據(jù)結(jié)構(gòu)必須是有序的 另一方面 我們需要經(jīng)常 的訪問第一個和最后一個節(jié)點 所以LinkedList最合適 因為它有g(shù)etFirst getLast 和removeLast 方法 圖3 7 根據(jù)原蛇頭和方向計算新蛇頭的坐標(biāo) 3 5 4 蛇的移動方向 蛇下一步移動到哪里 是由方向來控制的 根據(jù)原蛇頭的坐標(biāo)和方向來確定新蛇頭的 坐標(biāo) 因此在這里用int型常量來表示蛇的移動方向 在原坐標(biāo)的基礎(chǔ)上 根據(jù)蛇頭的運動 方向來確定新蛇頭的坐標(biāo) 比如向上移動就是y 1 在Snake中增加蛇的方向向量 public static final int UP 1 上 public static final int DOWN 1 下 public static final int LEFT 2 左 public static final int RIGHT 2 右 9 3 5 5 如何顯示蛇身 顯示蛇身 其實就是填充 用顏色填充格子 需要4個參數(shù) 像素坐標(biāo)x 像素坐標(biāo)y 格子寬度 格子高度 像素坐標(biāo)就是矩形左上角的坐標(biāo) 圖3 8 格子坐標(biāo)和像素坐標(biāo) 3 5 6 蛇身的移動方向 1 相反方向 和上一次移動的方向相反的方向稱為相反方向 這種輸入應(yīng)該忽略 這樣可以防止蛇 從自己的身體中穿過 2 無效方向 在蛇的這一次移動之后和下一次移動之前這個時間間隔內(nèi)輸入了多個非相反方向 只 有最后一個是有效方向 其他的都是無效方向 蛇的最終運動方向以有效方向為準(zhǔn) 3 Snake中增加監(jiān)聽器 并另外啟動一個線程來不斷調(diào)用蛇的move 在Snake中提供一 個啟動線程的方法 3 5 7 吃到食物判定 通過判定坐標(biāo)是否重合來判斷 只需要判斷蛇頭是否和食物重合就可以了 因為蛇的 身體都是走蛇頭走過的地方 蛇吃掉食物后身體就會變長 在 Controller 的 snakeMoved 中添加如下代碼 判斷是否吃到食物 if food null food setLocation ground null food getNew ground getFreePoint 如果吃到食物 就肯定不會吃到石頭 else if ground null if snake isEatBody stopGame 4 4 系統(tǒng)詳細(xì)設(shè)計系統(tǒng)詳細(xì)設(shè)計 4 14 1 程序設(shè)計程序設(shè)計 4 1 1 主類 MainFrame 1 主類為此程序的入口 定義了 MainFrame 的對象 frame 開始運行此程序 2 源代碼見文件 MainFrame Java 4 1 2 類 MainFrame 1 成員變量見表 4 1 表 4 1 主要成員變量 成員變量描述變量類型名稱 選項面板 private GameOptionPaneloptionPanel 游戲面板 private GamePanelgamePanel 蛇類對象 private Snakesnake 石頭對象 private Groundground 食物對象 private Foodfood 控制對象 private Controllercontroller 速度標(biāo)簽 private JLabelinfoLabel 2 方法見表 4 2 11 表 4 2 主要方法 方法名功能 gameOver 游戲結(jié)束 gameStart 游戲開始 gameContinue 游戲繼續(xù) gamePause 游戲暫停 4 1 3 類 Snake 1 成員變量見表 4 3 表 4 3 主要成員變量 成員變量描述變量類型名稱 上下左右 方向 int UP DOWN LEFT RIGHT 蛇體 LinkedListbody 蛇頭坐標(biāo) Pointhead 蛇尾坐標(biāo) Pointtail 是否活著 booleanlive 是否暫停 booleanpause 速度 intspeed 監(jiān)聽 Set listener 2 方法見表 4 4 表 4 4 主要方法 方法名功能 eatFood 判斷食物是否被蛇吃掉 如果食物在蛇運行方向 的正前方 并且與蛇頭接觸 則被吃掉 setHeadColor 設(shè)置蛇頭的顏色 setBodyColor 設(shè)置蛇身的顏色 changeDirection int 改變運行方向 move 蛇在運行中所采取的措施 begin 開啟一個新的線程驅(qū)動蛇定時移動 4 1 4 類 Food 1 成員變量見表 4 5 12 表 4 5 主要成員變量 成員變量描述變量類型名稱 顏色 private Colorcolor 隨機(jī) private Randomrandom 2 源代碼見文件 Food java 4 1 5 類 Controller 該類包含控制器和處理按鍵邏輯 控制器 控制 Ground Snake Food 負(fù)責(zé)游戲的 邏輯處理按鍵事件 實現(xiàn)了 SnakeListener 接口的 snakeMoved 方法 可以處理 Snake 觸 發(fā)的事件 該類繼承 KeyAdapter 類并且覆蓋 keyPressed 方法 處理按鍵事件 根據(jù)按 鍵不同 發(fā)出不同的指令 UP 改變蛇的移動方向為向上 DOWN 改變蛇的移動方向為向下 LEFT 改變蛇的移動方向為向左 RIGHT 改變蛇的移動方向為向右 SPACE 暫停 繼續(xù) PgUp PgDn 加速 減速蛇的移動 Y 開始新游戲的方法 4 1 6 類 Ground 可以叫做地形 或地面 和食物一樣 Ground 也有 x y 坐標(biāo)和顏色等屬性 構(gòu)造方法 Ground 初始化地圖 設(shè)置格局 可以通過 setRockColor 方法設(shè)置石頭的顏色 方法 isSnakeEatRock 判斷蛇是否吃到食物 最后運用 drawMe 方法顯示石頭 源代碼見文件 Ground java 4 1 7 類 GameListener 此類為游戲監(jiān)聽類 實現(xiàn)游戲的監(jiān)聽功能 源代碼見文件 GameListener java 4 1 8 類 SnakeListener 此類為蛇的監(jiān)聽類 實現(xiàn)蛇運動的監(jiān)聽 蛇移動的監(jiān)聽 snakeMoved 蛇吃到食物的監(jiān) 聽 snakeEatFood 13 源代碼見文件 SnakeListener java 4 1 9 類 Global 工具類 此類中存放了其他類中用到的一些常量 格子的像素 寬度 高度 蛇的初始長度和 初始速度等 源代碼見文件 Global java 4 1 10 類 GameOptionPanel 此類為游戲的選項面板類 實現(xiàn)游戲面板的控制 源代碼見文件 GameOptionPanel java 4 1 11 類 GamePanel 此類為游戲的顯示界面設(shè)置 可以通過 setBackgroundColor 設(shè)置游戲的背景顏色 源代碼見文件 GamePanel java 4 24 2 貪吃蛇游戲各功能界面截圖貪吃蛇游戲各功能界面截圖 4 2 1 游戲的初始界面 14 圖 4 1 初始界面 圖 4 2 控制面板 圖 4 3 速度標(biāo)簽 4 2 2 游戲運行過程界面 1 鼠標(biāo)點擊開始新游戲按鈕 開始游戲 圖 4 4 開始游戲 15 圖 4 5 開始游戲 有加速 有改顏色 有網(wǎng)格 2 按空格鍵 游戲開始運行 蛇開始移動 并且吃到一次食物即紅色方塊后就變成蛇體 16 圖 4 6 吃到食物 身體變長 3 按方向鍵改變蛇的運行方向 并且碰壁后從新開始游戲 紅色方塊隨機(jī)地方產(chǎn)生 圖 4 7 碰壁死亡 5 5 系統(tǒng)測試系統(tǒng)測試 5 15 1 測試的意義測試的意義 系統(tǒng)測試是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程 成功的測試是發(fā)現(xiàn)了至今尚未發(fā)現(xiàn)的錯 誤的測試 測試的目的就是希望能以最少的人力和時間發(fā)現(xiàn)潛在的各種錯誤和缺陷 應(yīng)根 據(jù)開發(fā)各階段的需求 設(shè)計等文檔或程序的內(nèi)部結(jié)構(gòu)精心設(shè)計測試用例 并利用這些實例 來運行程序 以便發(fā)現(xiàn)錯誤 系統(tǒng)測試是保證系統(tǒng)質(zhì)量和可靠性的關(guān)鍵步驟 是對系統(tǒng)開 發(fā)過程中的系統(tǒng)分析系統(tǒng)設(shè)計和實施的最后復(fù)查 根據(jù)測試的概念和目的 在進(jìn)行信息系 統(tǒng)測試時應(yīng)遵循以基本原則 5 25 2 測試測試過程過程 1 擬定測試計劃 在制定測試計劃時 要充分考慮整個項目的開發(fā)時間和開發(fā)進(jìn)程以 及一些人為因素和客觀條件等 使得測試計劃是可行的 測試計劃的內(nèi)容主要有測試的內(nèi) 容 進(jìn)度安排 測試所需的環(huán)境和條件 測試培訓(xùn)安排等 2 編制測試大綱 測試大綱是測試的依據(jù) 它明確詳盡地規(guī)定了在測試中針對系統(tǒng)的 17 每一項功能或特性所必須完成的基本測試項目和測試完成的標(biāo)準(zhǔn) 3 根據(jù)測試大綱設(shè)計和生成測試用例 在設(shè)計測試用例的時候 可綜合利用前面介紹 的測試用例和設(shè)計技術(shù) 產(chǎn)生測試設(shè)計說明文檔 其內(nèi)容主要有被測項目 輸人數(shù)據(jù) 測 試過程 預(yù)期輸出結(jié)果等 4 實施測試 測試的實施階段是由一系列的測試周期組成的 在每個測試周期中 測 試人員和開發(fā)人員將依據(jù)預(yù)先編制好的測試大綱和準(zhǔn)備好的測試用例 對被測軟件或設(shè)備 進(jìn)行完整的測試 5 生成測試報告 測試完成后 要形成相應(yīng)的測試報告 主要對測試進(jìn)行概要說明 列出測試的結(jié)論 指出缺陷和錯誤 另外 給出一些建議 如可采用的修改方法 各項修 改預(yù)計的工作量及修改的負(fù)責(zé)人員 5 35 3 測試結(jié)果測試結(jié)果 貪吃蛇測試情況如表 5 1 所示 表 5 1 貪吃蛇測試情況 執(zhí)行的操作期望的結(jié)果實際結(jié)果 打開文件 運行代碼代碼正常運行 無錯誤信息符合期望結(jié)果 點擊 開始游戲 貪吃蛇出現(xiàn) 食物出現(xiàn)符合期望結(jié)果 點擊 暫停游戲 游戲暫停 蛇和食物都靜止符合期望結(jié)果 點擊 停止游戲 游戲停止 重新開始新游戲符合期望結(jié)果 利用方向鍵控制方向 空格鍵暫 停游戲 蛇運行方向正常 空格鍵暫停游 戲 符合期望結(jié)果 鍵盤按 PgUp PgDn蛇加速 減速運動符合期望結(jié)果 點擊 設(shè)置背景顏色 出現(xiàn)顏色選項 背景顏色變化符合期望結(jié)果 點擊 設(shè)置蛇頭 蛇身 食物顏色 蛇頭 蛇身和食物顏色變化明顯 且顯示正常效果 符合期望結(jié)果 顯示網(wǎng)格 打鉤出現(xiàn)網(wǎng)格 并且自行選擇網(wǎng)格顏 色 符合期望結(jié)果 點擊 恢復(fù)默認(rèn)設(shè)置 所有設(shè)置都恢復(fù)到初始化狀態(tài)符合期望結(jié)果 蛇每吃到一個食物身體變長符合期望結(jié)果 18 蛇碰壁或者吃到自己的身體結(jié)束游戲符合期望結(jié)果 通過以上測試 驗證程序運行正常 沒有發(fā)現(xiàn)什么錯誤 結(jié)論 畢業(yè)設(shè)計是我們作為學(xué)生在學(xué)習(xí)階段的最后一個環(huán)節(jié) 是對所學(xué)基礎(chǔ)知識和專業(yè)知識 的一種綜合應(yīng)用 是一種綜合的再學(xué)習(xí) 再提高的過程 這一過程對我們學(xué)生的學(xué)習(xí)能力 和獨立思考及工作能力也是一個培養(yǎng) 同時畢業(yè)設(shè)計的水平也反映了大學(xué)教育的綜合水平 因此學(xué)校十分重視畢業(yè)設(shè)計這一環(huán)節(jié) 加強(qiáng)了對畢業(yè)設(shè)計工作的指導(dǎo)和動員教育 在大學(xué) 的學(xué)習(xí)過程中 畢業(yè)設(shè)計是一個重要的環(huán)節(jié) 是我們步入社會參與實際工作的一次極好的 演示 也是對我們自學(xué)能力和解決問題能力的一次考驗 是學(xué)校生活與社會生活間的過渡 在完成畢業(yè)設(shè)計的這段時間里 我收獲頗多 通過這次的 java 貪吃蛇游戲設(shè)計我了解到 java 語言的特點 簡單性 面向?qū)ο?平 臺無關(guān)性 可移植性 解釋性 髙性能 動態(tài)性 可靠性和安全性 多線程 分布式處理 等 在課程設(shè)計過程中不僅鞏固了我們以前的基礎(chǔ)理論知識 而且使我們各個方面的能力 都有很大的提高 從一開始的無從下手 到不斷的查閱資料 圖書館借書 再到請教老師 的幫助 這些都很好的鍛煉了我們理論聯(lián)系實際 與具體項目 課題相結(jié)合的能力 開發(fā) 設(shè)計游戲的能力進(jìn)一步在課程設(shè)計中體現(xiàn) 這讓我學(xué)會了很多 為以后的學(xué)習(xí)和工作加強(qiáng) 在設(shè)計過程中 總是遇到這樣或那樣的問題 有時發(fā)現(xiàn)一個問題的時候 需要做大量的工 作 花大量的時間才能解決 為以后的工作積累了經(jīng)驗 增強(qiáng)了信心 既讓我們懂得了怎 樣把理論應(yīng)用于實際 又讓我們懂得了在實踐中遇到的問題怎樣用理論去解決 它更是自 己綜合運用所學(xué)知識 發(fā)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 預(yù)應(yīng)力混凝土工程教學(xué)課件
- 汽車配套產(chǎn)業(yè)基地項目數(shù)字化方案(參考模板)
- 2025年年健康服務(wù)項目建議書
- 2025年低功率氣動閥島用控制閥項目合作計劃書
- 2025年達(dá)美航空合作協(xié)議書
- 現(xiàn)代能源行業(yè)發(fā)展條件分析
- 2025年轉(zhuǎn)基因耐貯藏番茄項目發(fā)展計劃
- 西師大版三年級數(shù)學(xué)上冊全冊單元知識點
- 2025年氟炭漆項目合作計劃書
- 2025年智能分揀系統(tǒng)項目合作計劃書
- eos5ds-5dsr-im6-zh-佳能相機(jī)說明書
- 九年級上冊英語書譯林版單詞表
- 臺球廳桌球俱樂部創(chuàng)業(yè)計劃書課件模板
- 醫(yī)務(wù)人員技術(shù)檔案
- 2023年鐵嶺市三支一扶筆試真題
- (正式版)JBT 106-2024 閥門的標(biāo)志和涂裝
- 肺結(jié)節(jié)手術(shù)的術(shù)后護(hù)理措施
- 2024版《工程項目現(xiàn)場簽證單、工程委托單》模版
- 節(jié)能環(huán)保抹灰施工管理策略
- 2023年貴州公務(wù)員考試申論試題(A卷)含解析
- 上尿路感染教學(xué)查房
評論
0/150
提交評論