




已閱讀5頁,還剩57頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
畢業(yè)設(shè)計(jì)(論文)任務(wù)書設(shè)計(jì)論文題目基于JAVA組件技術(shù)的拼圖游戲軟件的設(shè)計(jì)與實(shí)現(xiàn)題目分類工程設(shè)計(jì);工程技術(shù)研究;軟件工程(如CAI課題等);專題研究;藝術(shù)設(shè)計(jì);其他題目來源自然科學(xué)基金與部、省、市級以上科研課題;企、事業(yè)單位委托課題;院級課題;自擬課題其他指導(dǎo)教師(指導(dǎo)教師組組長及成員姓名)職稱工作單位備注1、畢業(yè)設(shè)計(jì)論文的內(nèi)容和要求選題盡量與實(shí)際應(yīng)用需求相結(jié)合。要求寫明本設(shè)計(jì)(論文)所涉及的分析方法或技術(shù)手段;要求有學(xué)生獨(dú)立的見解,設(shè)計(jì)內(nèi)容要詳細(xì)寫明具體步驟和技術(shù)指標(biāo)畢業(yè)設(shè)計(jì)論文的內(nèi)容和要求內(nèi)容使用JAVASWING組件開發(fā)一個(gè)拼圖游戲圖形界面應(yīng)用軟件,要求具有區(qū)分難度,統(tǒng)計(jì)積分,更改外觀設(shè)計(jì),背景音樂等功能。要求(1)明確需求,學(xué)習(xí)使用OOA方法對項(xiàng)目需求進(jìn)行分析。使用OOD方法對項(xiàng)目進(jìn)行設(shè)計(jì)。使用OOP方法對項(xiàng)目進(jìn)行編碼實(shí)現(xiàn)。(2)必須具備背景音樂、難度劃分、統(tǒng)計(jì)積分以及更換外觀界面的功能。(3)玩家操作界面要簡潔,游戲界面要美觀。(4)可增添更多的游戲附件功能。開發(fā)環(huán)境JDK15或以上版本,ECLIPSE具體步驟(1)學(xué)習(xí)或復(fù)習(xí)面向?qū)ο蠡局R和JAVA相關(guān)知識。(2)認(rèn)真閱讀項(xiàng)目需求及設(shè)計(jì)需求,做好需求分析和軟件設(shè)計(jì)工作。(3)編寫軟件測試用例,在編碼過程中進(jìn)行測試工作。(4)設(shè)計(jì)游戲界面,并編寫相應(yīng)代碼。(5)編寫JAVA代碼,實(shí)現(xiàn)游戲功能。2、應(yīng)完成的工作和提交材料要求(論文的撰寫內(nèi)容、格式、字?jǐn)?shù)的要求,課題完成后應(yīng)提交成果的種類、數(shù)量、質(zhì)量等方面的要求)(1)撰寫畢業(yè)論文不少于15000字,要求內(nèi)容正確、概念清楚、條理分明、文字通順、數(shù)據(jù)準(zhǔn)確、圖表齊全。(2)論文撰寫符合(論文)撰寫格式與裝訂要求。(3)翻譯1500漢字以上的有關(guān)技術(shù)資料或?qū)I(yè)文獻(xiàn),內(nèi)容要盡量結(jié)合課題。翻譯表達(dá)準(zhǔn)確、通順,外文摘要完整、準(zhǔn)確。(4)在完成畢業(yè)論文的過程中,按期完成相關(guān)任務(wù),并提交畢業(yè)設(shè)計(jì)(論文)開題報(bào)告、畢業(yè)設(shè)計(jì)(論文)中期進(jìn)展情況檢查表、指導(dǎo)記錄表、外文翻譯原文與譯文等文檔。(5)提交課題的可執(zhí)行程序、源程序、程序流程圖以及相應(yīng)結(jié)論。3、主要參考文獻(xiàn)(參考文獻(xiàn)不少于10篇,外文不少于2篇,參考文獻(xiàn)目錄按GB/T77142005的要求填寫)1(美)??藸朖AVA編程思想(第4版)M北京機(jī)械工業(yè)出版社,20072(美)霍頓JAVA2入門經(jīng)典JDK5M北京機(jī)械工業(yè)出版社,20063(美)JOSHUABLOCHEFFECTIVEJAVA中文版第2版M北京機(jī)械工業(yè)出版社,20094方英蘭,韓兵,居陽等計(jì)算機(jī)軟件項(xiàng)目實(shí)訓(xùn)指導(dǎo)M北京電子工業(yè)出版社,20115(美)YDANIELLIANGJAVA語言程序設(shè)計(jì)基礎(chǔ)篇(英文版)M北京機(jī)械工業(yè)出版社,20116(美)YDANIELLIANGJAVA語言程序設(shè)計(jì)進(jìn)階篇(英文版)M北京機(jī)械工業(yè)出版社,20117(美)KATHYSIERRA,BERTBATESHEADFIRSTJAVA,2NDEDITIONM北京中國電力出版社,20078(美)JOSHUABLOCH,NEALGAFTERJAVATMPUZZLERSTRAPS,PITFALLS,ANDCORNERCASESM北京人民郵電出版社,20109裴龍,何大可JAVASWING組件設(shè)計(jì)模式分析J計(jì)算機(jī)應(yīng)用,247175,280,200110呂校春,李玲莉基礎(chǔ)SWING的JAVAGUI組件開發(fā)J機(jī)械工程師,129131,20084、畢業(yè)設(shè)計(jì)論文進(jìn)度計(jì)劃(從正式啟動時(shí)間開始,以周為單位填寫)(1)20112012學(xué)年第1學(xué)期第15周下達(dá)畢業(yè)設(shè)計(jì)任務(wù)書,與學(xué)生見面。進(jìn)行畢業(yè)論文(設(shè)計(jì))內(nèi)容和要求的講述,讓學(xué)生理解選題的目的、意義,清楚畢業(yè)設(shè)計(jì)做什么和怎么做,需要查找哪些資料及準(zhǔn)備課題所需的軟件系統(tǒng)。(2)20112012學(xué)年第1學(xué)期第16周第18周充分理解任務(wù)書的內(nèi)容,研讀參考文獻(xiàn),學(xué)習(xí)課題所需軟件系統(tǒng)的安裝、使用方法。進(jìn)行外文文獻(xiàn)的翻譯工作。進(jìn)一步分析相關(guān)資料,整理思路,在此基礎(chǔ)之上完成畢業(yè)論文大綱和開題報(bào)告初稿。(3)20112012學(xué)年第2學(xué)期第1周提交開題報(bào)告文檔、外文文獻(xiàn)譯文和原文,進(jìn)行開題報(bào)告的準(zhǔn)備工作(PPT講稿等)。(4)20112012學(xué)年第2學(xué)期第2周進(jìn)行開題報(bào)告。(5)20112012學(xué)年第2學(xué)期第3周第6周課題的理論研究,形成課題具體方案。搭建并熟悉系統(tǒng)開發(fā)運(yùn)行環(huán)境,進(jìn)行相應(yīng)的程序設(shè)計(jì)和代碼編寫工作。填寫中期檢查表,準(zhǔn)備中期檢查。(6)20112012學(xué)年第2學(xué)期第7周進(jìn)行中期檢查。(7)20112012學(xué)年第2學(xué)期第8周第11周完善課題方案、設(shè)計(jì),繼續(xù)程序編寫和調(diào)試,分析數(shù)據(jù),形成結(jié)論。完成畢業(yè)設(shè)計(jì)(論文)的初稿。(8)20112012學(xué)年第2學(xué)期第12周按論文撰寫格式要求提交論文。相關(guān)教師對論文進(jìn)行評閱。(9)20112012學(xué)年第2學(xué)期第13周根據(jù)評閱意見進(jìn)行論文第一次修改。完成畢業(yè)論文的預(yù)答辯工作。(10)20112012學(xué)年第2學(xué)期第14周根據(jù)預(yù)答辯的結(jié)果進(jìn)行論文第二次修改,完成論文終稿,并準(zhǔn)備正式答辯。(11)20112012學(xué)年第2學(xué)期第15周畢業(yè)設(shè)計(jì)(論文)答辯。指導(dǎo)教師簽字日期年月日教教學(xué)單位意見審核人簽字系(院)(蓋章)年月日學(xué)院意見審核專家簽字年月日題目基于JAVA組件技術(shù)的拼圖游戲軟件的設(shè)計(jì)與實(shí)現(xiàn)摘要拼圖游戲是一種可變性很高且耐玩的游戲,在平時(shí)空閑的時(shí)候可以自己制定圖片然后享受智力拼圖,空閑之余不妨放松一下。拼圖是一種大人與小孩都能玩的游戲,它可以開發(fā)智力且?guī)椭蠹姨岣邉幽X解決問題的能力。玩拼圖還有助于手眼協(xié)調(diào),玩家能訓(xùn)練和了解“部分”與“全部”的關(guān)系,可以知道許多的“部分”能拼湊出一個(gè)“全部”,以及一個(gè)“全部”是由許多“部分”所組成的。本課題主要是用ECLIPSE對一小型游戲進(jìn)行開發(fā)。選擇一個(gè)游戲的拼圖圖片,單擊方框可使圖片移動,從而能夠拼出一幅完整的圖片,這類游戲主要考察玩家的反應(yīng)能力,在游戲之余提高觀察和應(yīng)變能力。本游戲中通過分析JAVA游戲的開發(fā)流程,對功能進(jìn)行設(shè)計(jì)。該游戲主要實(shí)現(xiàn)了開始游戲,更改圖片可自定義圖片,游戲難度選擇(9宮初級,16宮中級和25宮高級),戰(zhàn)況成績統(tǒng)計(jì),成績排名,背景音樂等功能。游戲界面美觀,操作簡單,功能齊全,是廣大游戲愛好者都喜歡的一款游戲,具有一定的復(fù)雜性和可玩性。關(guān)鍵字拼圖游戲SWING八數(shù)碼TITLEDESIGNANDIMPLEMENTATIONOFTHEJIGSAWPUZZLEGAMEBASEDONJAVASWINGABSTRACTAJIGSAWPUZZLEISAVERYFLEXIBLEANDPLAYABLEGAME,INYOURSPARETIME,YOUCANFORMULATEPICTURESANDENJOYTHEINTELLECTUALPUZZLE,ENJOYYOURFREETIMEJIGSAWPUZZLEISONEKINDOFGAMETHATCANBEPLAYEDBYBOTHADULTSANDCHILDRENITCANDEVELOPONESINTELLIGENCEANDCANALSOHELPUSTOIMPROVEOURABILITYTOSOLVEPROBLEMSPLAYINGPUZZLESCANALSOHELPHANDEYECOORDINATIONPLAYERSCANBETRAINEDANDUNDERSTAND“PARTS“AND“ALL“,CANKNOWTHATALOTOF“PARTS“PUTTOGETHERTOBEA“FULL“,ANDA“FULL“ISMADEUPOFMANY“PARTS“THISSUBJECTISMAINLYABOUTUSINGTHESOFTWAREOFECLIPSETODESIGNASMALLGAMECHOOSINGONEPICTUREOFTHEGAME,CLICKINGTHEBOXCANMAKETHEPICTURETOMOVE,THEREBYABLETOSPELLOUTACOMPLETEGRAPH,THISGAMEMAINLYCONSIDERTOTRAINTHEGAMEPLAYERSABILITYTORESPOND,WHILETHEGAMEIMPROVEPLAYERSOBSERVATIONANDSTRAINCAPACITYTHROUGHTHESUMMARYANDANALYSISOFTHEJAVAGAME,THEJIGSAWPUZZLEGAMEDESIGNSTHEFUNCTIONANDPROCESSTHEGAMEACHIEVEDSUCHMAINFUNCTIONTOSTARTTHEGAME,CHANGINGPICTURESCANALSOBECUSTOMIZEDPICTURE,SELECTINGTHEDIFFICULTYOFTHEGAME9HOUSEPRIMARY,INTERMEDIATEANDSENIOR16HOUSE25HOUSE,TOSTATISTICTHERESULTS,PERFORMANCERANKING,BACKGROUNDMUSICANDSOONWITHSPECIFICIMPLEMENTATION,WITHBEAUTIFULGAMEINTERFACE,WITHSIMPLEOPERATION,ANDWITHWHOLEFUNCTIONS,ITSONEOFTHEMOSTPOPULARGAMESINPLAYERSTHINKING,ANDITHASCOMPLEXITYANDPLAYABILITYKEYWORDSJIGSAWPUZZLESWING8PUZZLEQUESTION目錄1前言111項(xiàng)目的背景與國內(nèi)外研究現(xiàn)狀112項(xiàng)目的目的與意義213系統(tǒng)開發(fā)方法介紹32項(xiàng)目開發(fā)語言及開發(fā)環(huán)境521JAVA語言522開發(fā)環(huán)境623ECLIPSE簡述73可行性分析831可行性分析所采用的方法和步驟832評價(jià)尺度833可行性分析8331經(jīng)濟(jì)可行性8332技術(shù)可行性8333操作可行性94需求分析1041OOA方法介紹1042功能需求1043性能需求1144環(huán)境需求1145可靠性需求1146安全保密需求1147用戶界面需求1248軟件成本消耗與開發(fā)進(jìn)度需求1249條件假定和限制125總體設(shè)計(jì)1351總體設(shè)計(jì)方案1352功能模塊設(shè)計(jì)13521登錄注冊部分流程分析14522游戲功能分析1453系統(tǒng)流程圖設(shè)計(jì)166詳細(xì)設(shè)計(jì)1861數(shù)據(jù)庫設(shè)計(jì)與實(shí)現(xiàn)18611數(shù)據(jù)庫的概念18612ACCESS介紹19613數(shù)據(jù)庫設(shè)計(jì)20614數(shù)據(jù)庫實(shí)現(xiàn)2362關(guān)鍵算法的設(shè)計(jì)與實(shí)現(xiàn)26621八數(shù)碼問題26622判斷圖片按鈕是否可以移動28623自定義圖片的算法29624判斷拼圖是否成功2963拼圖游戲界面的設(shè)計(jì)與實(shí)現(xiàn)30631人機(jī)界面設(shè)計(jì)與實(shí)現(xiàn)30632界面設(shè)計(jì)過程及特色407軟件測試4171測試的目的及相關(guān)問題4172測試方法4273部分測試用例42731系統(tǒng)啟動測試42732拼圖測試43733游戲難度測試43734背景音樂測試44735拼圖游戲窗體外觀的測試44736成績與成績排名的測試4574測試分析和總結(jié)45結(jié)論46致謝48參考文獻(xiàn)491前言11項(xiàng)目的背景與國內(nèi)外研究現(xiàn)狀隨著信息技術(shù)的飛速發(fā)展、蓬勃進(jìn)步,同時(shí)隨著國際互連網(wǎng)與相關(guān)系統(tǒng)的迅速普及,不同國家、行業(yè)被INTERNET連接在一起,互相通信,共享全世界的計(jì)算機(jī)資源和信息。如何保證不同格式的資料或信息能夠安全、高速、自由的交流、傳輸就成為一個(gè)迫切解決的問題。1996年SUN公司JAVA語言的正式發(fā)表可以說是INTERNET的一次技術(shù)革命,SUN公司的一位營銷天才把一門試驗(yàn)性的跨平臺語言由象征踏實(shí)的OAK(橡樹),改名為香氣四溢的JAVA(咖啡)時(shí),可能他沒有想到這門語言能有后來的輝煌。事實(shí)上,如果現(xiàn)在SUN想為這門語言改名,以準(zhǔn)確體現(xiàn)其在計(jì)算機(jī)行業(yè)的地位,似乎OAK更形象。今天,雖然JAVA語言并非真正意義上的遍地開花,但它已經(jīng)出現(xiàn)在眾多場合和設(shè)備中,而且它享有運(yùn)行穩(wěn)定、設(shè)計(jì)精良的美名。它實(shí)現(xiàn)了程序的運(yùn)行不受平臺的限制,在網(wǎng)絡(luò)上不僅可以進(jìn)行無格式的資料交換,還可以進(jìn)行程序交換。JAVA語言具備了其它語言所沒有的獨(dú)特優(yōu)勢,它一出現(xiàn)就馬上受到了各界人士的歡迎。JAVA的出現(xiàn)無疑給計(jì)算機(jī)行業(yè)帶來了一股清風(fēng),它帶來了許多新鮮而有趣的思想和觀念。JAVASWING組件在游戲的實(shí)現(xiàn)上扮演著不可或缺的重要角色,SWING是一個(gè)用于開發(fā)JAVA應(yīng)用程序用戶界面的開發(fā)工具包。它以抽象窗口工具包(AWT)為基礎(chǔ)使跨平臺應(yīng)用程序可以使用任何可插拔的外觀風(fēng)格。SWING提供了本機(jī)的外觀和手感,模擬多個(gè)平臺的外觀和感覺,同時(shí)還支持一個(gè)可插拔的外觀和手感,使應(yīng)用程序有一個(gè)擁有外觀和感覺的基礎(chǔ)平臺。它具有比AWT更強(qiáng)大和靈活的組件。除了熟悉的部件,如按鈕,復(fù)選框和標(biāo)簽,SWING提供了一些先進(jìn)的零部件,如卡式面板,滾動窗格,樹,表,列出,因此SWING深受開發(fā)人員青睞。除此之外,他們只用很少的代碼就可以利用SWING豐富、靈活的功能和模塊化組件來創(chuàng)建優(yōu)雅的用戶界面。因此,可以推斷JAVASWING組件在未來游戲等各個(gè)相關(guān)領(lǐng)域依舊會保持良好的發(fā)展勢頭,發(fā)揚(yáng)其優(yōu)勢,更好的服務(wù)于JAVA游戲產(chǎn)業(yè)。12項(xiàng)目的目的與意義現(xiàn)代科學(xué)技術(shù)的發(fā)展,改變了人類的生活,作為新世紀(jì)的大學(xué)生,應(yīng)該站在時(shí)代發(fā)展的前沿,掌握最先進(jìn)的現(xiàn)代科學(xué)技術(shù)知識,以適應(yīng)社會的發(fā)展,應(yīng)能夠獨(dú)立地完成各種應(yīng)要面臨的任務(wù),成為一名有創(chuàng)新意識的新型人才。目前,很多新的技術(shù)領(lǐng)域都涉及到了JAVA語言。JAVA語言是面向?qū)ο缶幊?,并涉及到網(wǎng)絡(luò)、多線程等重要的基礎(chǔ)知識,因此JAVA語言也是學(xué)習(xí)面向?qū)ο缶幊毯途W(wǎng)絡(luò)編程的首選語言。該課題的主要目的是使JAVA游戲開發(fā)者深入理解所學(xué)的JAVA語言,并實(shí)踐于該游戲設(shè)計(jì)中,深刻體會以前所學(xué)的有關(guān)JAVA程序設(shè)計(jì)方面的語言基礎(chǔ)、異常處理、事件處理、應(yīng)用程序以及圖形用戶界面設(shè)計(jì)等方面的知識,加深對結(jié)構(gòu)化設(shè)計(jì)思想的理解,能對系統(tǒng)功能進(jìn)行分析,并設(shè)計(jì)合理的模塊化結(jié)構(gòu)等。學(xué)會使用JAVA系統(tǒng),其中包括對程序的調(diào)試、運(yùn)行、保存等知識的運(yùn)用,還包括提高程序開發(fā)功能,能運(yùn)用合理的方法簡化JAVA程序的操作,開發(fā)過程中應(yīng)培養(yǎng)分析問題、解決問題的能力。基于JAVA組件技術(shù)的拼圖游戲軟件是一款具有娛樂性、益智性、便捷性的游戲軟件。此軟件可以使用戶放松心情,享受于拼圖游戲的樂趣之中。該游戲軟件可以讓用戶選擇適合自己的主題與難度,根據(jù)用戶的不同水平,鍛煉其圖片記憶能力以及拼湊還原能力。游戲結(jié)束后亦可讓用戶清晰了解到自己的游戲狀態(tài)水平,便于調(diào)整自己對這款游戲的新的難度要求。另外要求軟件設(shè)計(jì)精致,畫面親和,人機(jī)交互高效快捷,能夠給用戶帶來人性化的服務(wù)。軟件面向的主流群體集中在年輕人,但也適宜兒童或者老人使用,提供了適宜各類用戶群體的圖片風(fēng)格與難度設(shè)置。不論是旨在輕松娛樂,還是益智教育的目的,該軟件都是一款家庭生活中以及學(xué)習(xí)生活的必備軟件。設(shè)計(jì)并實(shí)現(xiàn)基于JAVA組件技術(shù)的拼圖游戲軟件作為自己的畢業(yè)課題設(shè)計(jì)是對學(xué)?;A(chǔ)課程、專業(yè)課程以及實(shí)踐課程的一次綜合性考查。此外,JAVASWING組件在單機(jī)游戲平臺上的應(yīng)用一直處于熱門,這次的系統(tǒng)全面的實(shí)踐可以說是一次很好的鍛煉,會對以后工作生活帶來積極的影響。13系統(tǒng)開發(fā)方法介紹目前比較成熟的系統(tǒng)開發(fā)方法有生命周期法、原型法、面向?qū)ο蠓ǖ取I芷诜ò岩粋€(gè)信息系統(tǒng)從其提出、分析、設(shè)計(jì)和使用,直到停止使用的整個(gè)生存期視為一個(gè)生命周期。整個(gè)生命周期劃分為五個(gè)主要工作階段可行性分析階段、系統(tǒng)分析階段、系統(tǒng)設(shè)計(jì)階段、系統(tǒng)實(shí)施階段和系統(tǒng)運(yùn)行、維護(hù)與評價(jià)階段。通常采用結(jié)構(gòu)化系統(tǒng)分析和系統(tǒng)設(shè)計(jì)方法,自上而下分析、設(shè)計(jì),強(qiáng)調(diào)開發(fā)過程的整體性和全局性;開發(fā)過程在時(shí)間上基本按階段進(jìn)行,任務(wù)明確;結(jié)合用戶需求進(jìn)行開發(fā);開發(fā)周期長,維護(hù)不方便。適用于開發(fā)需求較明確固定的信息系統(tǒng)。原型法是系統(tǒng)開發(fā)者在初步了解用戶需求的基礎(chǔ)上,開發(fā)出能實(shí)現(xiàn)系統(tǒng)最基本功能的一個(gè)原型,再根據(jù)用戶對原型使用與評價(jià)的意見,提出修改方案,修改完善原型,如此反復(fù)多次,直到得到用戶滿意的最終系統(tǒng)為止。開發(fā)過程以用戶為中心,開發(fā)周期短。適用于開發(fā)需求不夠明確或不斷變化的軟件。面向?qū)ο蠓ㄒ灶?,類的繼承,聚集等概念描述客觀事物以及聯(lián)系。為系統(tǒng)的開發(fā)提供了全新的思路,面向?qū)ο蠓椒ㄒ詫ο鬄橹行?。其特征主要有模塊性,繼承性和類比性,動態(tài)連接性。面向?qū)ο箝_發(fā)方法的開發(fā)過程1系統(tǒng)調(diào)查和需求分析對系統(tǒng)將要面臨的具體管理問題以及用戶對系統(tǒng)開發(fā)的需求進(jìn)行調(diào)查研究,即先弄清要干什么的問題;2分析問題的性質(zhì)和求解問題在繁雜的問題域中抽象地識別出對象以及其行為、結(jié)構(gòu)、屬性、方法等。一般稱之為面向?qū)ο蟮姆治?,即OOA;3整理問題對分析的結(jié)果作進(jìn)一步的抽象、歸類、整理,并最終以范式的形式將它們確定下來。一般稱之為面向?qū)ο蟮脑O(shè)計(jì),即OOD;4程序?qū)崿F(xiàn)用面向?qū)ο蟮某绦蛟O(shè)計(jì)語言將上一步整理的范式直接映射(即直接用程序設(shè)計(jì)語言來取代)為應(yīng)用軟件。一般稱之為面向?qū)ο蟮某绦?,即OOP;5識別客觀世界中的對象以及行為,分別獨(dú)立設(shè)計(jì)出各個(gè)對象的實(shí)體;分析對象之間的聯(lián)系和相互所傳遞的信息,由此構(gòu)成信息系統(tǒng)的模型;由信息系統(tǒng)模型轉(zhuǎn)換成軟件系統(tǒng)的模型,對各個(gè)對象進(jìn)行歸并和整理,并確定它們之間的聯(lián)系;由軟件系統(tǒng)模型轉(zhuǎn)換成目標(biāo)系統(tǒng)。面向?qū)ο箝_發(fā)方法的應(yīng)用范圍在大型管理信息系統(tǒng)開發(fā)中,若不經(jīng)自頂向下的整體劃分,而是一開始就自底向上地采用OO方法開發(fā)系統(tǒng),會造成系統(tǒng)結(jié)構(gòu)不合理、各部分關(guān)系失調(diào)等等問題。OO方法和結(jié)構(gòu)化方法在系統(tǒng)開發(fā)中相互依存、不可替代。綜上所述,由于面向?qū)ο箝_發(fā)方法主要針對于各類管理系統(tǒng)的開發(fā),所以該畢業(yè)設(shè)計(jì)中采用面向?qū)ο蠓椒ㄅc原型法相結(jié)合的方法進(jìn)行系統(tǒng)開發(fā),主要也因?yàn)樵头ㄊ墙鼛啄臧l(fā)展起來的一種開發(fā)方法。該方法從一個(gè)初始信息要求的集合出發(fā),在發(fā)展中逐步完善信息系統(tǒng),更簡單、易學(xué),同時(shí)也更適合該系統(tǒng)的開發(fā)。使用原型法開發(fā)大體有以下幾個(gè)步驟1確定系統(tǒng)需求;2設(shè)計(jì)初始原型,包括確定需求以及開發(fā)工作模型,例如屏幕格式、功能菜單格式以及對關(guān)鍵數(shù)據(jù)和功能的說明等;3對初始原型進(jìn)行需求迭代,不斷進(jìn)行修正或改進(jìn),直至得到一個(gè)用戶滿意的原型,從而終止原型迭代過程;4原型效果考察,考察用戶新加入的需求信息和組成成分的嚴(yán)格說明信息,看其對原型效果的影響,是否影響到原型的有效性,如果導(dǎo)致原型失敗,應(yīng)加以修正和改進(jìn);原型法的生命周期提供了一種完整的、靈活的、近于動態(tài)的需求定義技術(shù)。它綜合了所有提出的必要需求,建立原型就近似于預(yù)先需求的規(guī)格說明。對原型的工作模型可以進(jìn)行必要的剪裁和組織,以便更接近目標(biāo)系統(tǒng)。它可以綜合用戶、領(lǐng)導(dǎo)和原型開發(fā)人員的各方需求。2項(xiàng)目開發(fā)語言及開發(fā)環(huán)境21JAVA語言1平臺無關(guān)性平臺無關(guān)性是指JAVA能運(yùn)行于不同的平臺。JAVA引進(jìn)虛擬機(jī)原理,并運(yùn)行于虛擬機(jī),實(shí)現(xiàn)不同平臺的JAVA接口之間。使用JAVA編寫的程序能在世界范圍內(nèi)共享。JAVA的數(shù)據(jù)類型與機(jī)器無關(guān),JAVA虛擬機(jī)(JAVAVIRTUALMACHINE)是建立在硬件和操作系統(tǒng)之上,實(shí)現(xiàn)JAVA二進(jìn)制代碼的解釋執(zhí)行功能,提供于不同平臺的接口。2安全性JAVA的編程類似C,學(xué)習(xí)過C的開發(fā)者能夠很快掌握J(rèn)AVA的精髓。JAVA舍棄了C的指針對存儲器地址的直接操作,程序運(yùn)行時(shí),內(nèi)存由操作系統(tǒng)分配,這樣可以避免病毒通過指針侵入系統(tǒng)。JAVA對程序提供了安全管理器,防止程序的非法訪問。3面向?qū)ο驤AVA吸取了C面向?qū)ο蟮母拍睿瑢?shù)據(jù)封裝于類中,利用類的優(yōu)點(diǎn)實(shí)現(xiàn)了程序的簡潔性以及便于維護(hù)性。類的封裝性、繼承性等有關(guān)對象的特性,使程序代碼只需一次編譯,然后通過上述特性反復(fù)利用。程序員只需把主要精力用在類和接口的設(shè)計(jì)和應(yīng)用上。JAVA提供了眾多的一般對象的類,通過繼承即可使用父類的方法。在JAVA中,類的繼承關(guān)系是單一的非多重的,一個(gè)子類只有一個(gè)父類,子類的父類又有一個(gè)父類。JAVA提供的OBJECT類及其子類的繼承關(guān)系如同一棵倒立的樹形,根類為OBJECT類,OBJECT類功能強(qiáng)大,經(jīng)常會使用到它及其它派生的子類。4分布式JAVA建立在擴(kuò)展TCP/IP網(wǎng)絡(luò)平臺上。庫函數(shù)提供了用HTTP和FTP協(xié)議傳送和接受信息的方法。這使得程序員使用網(wǎng)絡(luò)上的文件和使用本機(jī)文件一樣容易。5健壯性JAVA致力于檢查程序在編譯和運(yùn)行時(shí)的錯(cuò)誤,類型檢查幫助檢查出許多開發(fā)早期出現(xiàn)的錯(cuò)誤,JAVA自己操縱內(nèi)存減少了內(nèi)存出錯(cuò)的可能性,JAVA還實(shí)現(xiàn)了真數(shù)組,避免了覆蓋數(shù)據(jù)的可能。這些功能特征大大提高了開發(fā)JAVA應(yīng)用程序的周期。22開發(fā)環(huán)境圖21JAVA開發(fā)環(huán)境圖JAVA開發(fā)環(huán)境圖如圖21所示,圖中表示出JAVA拼圖游戲軟件的開發(fā)環(huán)境、具體的目錄存放以及操作環(huán)境等。其中建議使用的操作系統(tǒng)為MICROSOFTWINDOWSXP,程序開發(fā)語言為JAVA,下面是JDK的安裝步驟以及配制方法的簡單介紹。JDK下載、安裝及配置JDK是整個(gè)JAVA的核心,包括了JAVA運(yùn)行環(huán)境(JAVARUNTIMEENVIRONMENT),一堆JAVA工具和JAVA基礎(chǔ)的類庫(RTJAR)。第一步下載JDK6U23WINDOWSI586,ECLIPSEINDIGO;第二步安裝下載好的JDK是一個(gè)可執(zhí)行安裝程序,執(zhí)行安裝即可;第三步設(shè)置環(huán)境變量打開“我的電腦屬性高級環(huán)境變量系統(tǒng)變量”,設(shè)置以下三個(gè)變量JAVA_HOMEPATH;JAVA虛擬機(jī)的CLASSLOADER會按照CLASSPATH設(shè)定的路徑搜索CLASS文件。23ECLIPSE簡述ECLIPSE是一個(gè)開放源代碼的基于JAVA的可擴(kuò)展開發(fā)平臺,是一個(gè)相當(dāng)著名的開源JAVAIDE,由IBM公司開源。ECLIPSE主要以其開放性、極為高效的GUI、先進(jìn)的代碼編輯器等著稱,其項(xiàng)目包括許多各種各樣的子項(xiàng)目組,包括ECLIPSE插件、功能部件等,任何人都能夠輕易的將自己的軟件做成ECLIPSE的插件,而且這些插件只需簡單的復(fù)制到ECLIPSE的插件文件夾下就可以被集成。ECLIPSE主要采用SWT界面庫,支持多種本機(jī)界面風(fēng)格。該項(xiàng)目中,我用到的是ECLIPSEINDIGO版本,該版本發(fā)行于2011年6月22日。3可行性分析31可行性分析所采用的方法和步驟通過研究分析拼圖游戲所具備的能力及實(shí)現(xiàn)的方法來確定主體結(jié)構(gòu)。利用現(xiàn)階段我所能達(dá)到的能力,以最簡潔、最容易的辦法,邊開發(fā)邊測試邊修改,實(shí)現(xiàn)一個(gè)初級游戲軟件。32評價(jià)尺度由于本軟件是一個(gè)初級產(chǎn)品,對其要求不是太苛刻,所以能夠保證達(dá)到拼圖游戲的一般功能。33可行性分析331經(jīng)濟(jì)可行性由于本游戲是畢業(yè)設(shè)計(jì),不過分強(qiáng)調(diào)直接的經(jīng)濟(jì)效益和其日后的發(fā)展方向,只在注重自身水平和能力的提高,同時(shí)對自身的經(jīng)濟(jì)要求也不高,只要有一臺能運(yùn)行JAVA軟件的電腦便可,所以基本上不用考慮到經(jīng)濟(jì)問題。332技術(shù)可行性可用與本游戲的編程語言有VB,JAVA,DELPHI等,考慮到用于編寫程序的困難度,和對語言的了解程度,選擇JAVA作為編程語言。需要對變量定義、變量初始化、界面初始化、游戲初始化、然后進(jìn)入游戲、處理游戲過程中的各種操作。333操作可行性本游戲的開發(fā)作為畢業(yè)設(shè)計(jì),目的在于鞏固先前所學(xué)的知識,以個(gè)人為單位,僅供個(gè)人平常娛樂所用,無須考慮社會影響,不用考慮法律、版權(quán)等社會因素,且此軟件的開發(fā)不觸犯法律,所以在這方面是完全可行的。4需求分析41OOA方法介紹面向?qū)ο蟮姆治龇椒ǎ∣OA),是在一個(gè)系統(tǒng)的開發(fā)過程中進(jìn)行了系統(tǒng)業(yè)務(wù)調(diào)查以后,按照面向?qū)ο蟮乃枷雭矸治鰡栴}。OOA與結(jié)構(gòu)化分析有較大的區(qū)別。OOA所強(qiáng)調(diào)的是在系統(tǒng)調(diào)查資料的基礎(chǔ)上,針對OO方法所需要的素材進(jìn)行的歸類分析和整理,而不是對管理業(yè)務(wù)現(xiàn)狀和方法的分析。在用OOA具體地分析一個(gè)事物時(shí),大致上遵循如下五個(gè)基本步驟第一步,確定對象和類。這里所說的對象是對數(shù)據(jù)及其處理方式的抽象,它反映了系統(tǒng)保存和處理現(xiàn)實(shí)世界中某些事物的信息的能力。類是多個(gè)對象的共同屬性和方法集合的描述,它包括如何在一個(gè)類中建立一個(gè)新對象的描述。第二步,確定結(jié)構(gòu)(STRUCTURE)。結(jié)構(gòu)是指問題域的復(fù)雜性和連接關(guān)系。類成員結(jié)構(gòu)反映了泛化特化關(guān)系,整體部分結(jié)構(gòu)反映整體和局部之間的關(guān)系。第三步,確定主題(SUBJECT)。主題是指事物的總體概貌和總體分析模型。第四步,確定屬性(ATTRIBUTE)。屬性就是數(shù)據(jù)元素,可用來描述對象或分類結(jié)構(gòu)的實(shí)例,可在圖中給出,并在對象的存儲中指定。第五步,確定方法(METHOD)。方法是在收到消息后必須進(jìn)行的一些處理方法方法要在圖中定義,并在對象的存儲中指定。對于每個(gè)對象和結(jié)構(gòu)來說,那些用來增加、修改、刪除和選擇一個(gè)方法本身都是隱含的(雖然它們是要在對象的存儲中定義的,但并不在圖上給出),而有些則是顯示的。42功能需求用戶對于該拼圖游戲軟件的需求主要體現(xiàn)在以下幾個(gè)功能1實(shí)現(xiàn)程序GUI圖形界面;2實(shí)現(xiàn)游戲登錄、注冊、開始、退出等功能;3實(shí)現(xiàn)鼠標(biāo)或鍵盤事件響應(yīng)模塊的功能;4實(shí)現(xiàn)可選難度等級功能;5實(shí)現(xiàn)輸贏自動判別功能;6實(shí)現(xiàn)游戲背景音樂選擇功能;7實(shí)現(xiàn)游戲積分功能;8實(shí)現(xiàn)游戲戰(zhàn)況排名功能;9實(shí)現(xiàn)游戲圖片更換功能,并且可以自定義圖片;10實(shí)現(xiàn)進(jìn)行游戲同時(shí)可以查看原圖功能;11實(shí)現(xiàn)游戲外觀更換功能。43性能需求要求該軟件達(dá)到以下指標(biāo)1保證軟件安全性,軟件設(shè)有登陸注冊窗體,有嚴(yán)格的賬戶合法性檢驗(yàn)過程;2保證風(fēng)格多樣性,提供至少三種難度選擇,由易到難,適合各類用戶群體;提供至少三種背景音樂選擇,風(fēng)格各異,適合各類用戶群體;提供至少十種拼圖圖片供各類用戶群體選擇;44環(huán)境需求操作系統(tǒng)可以有以下幾種WINXP/WINVISTA/WIN7。硬件要求奔騰四處理器,主頻20GHZ,512M以上內(nèi)存。45可靠性需求要保證該拼圖游戲軟件的穩(wěn)定性,要在完成軟件設(shè)計(jì)后進(jìn)行軟件穩(wěn)定性測試,檢測出該軟件發(fā)生故障的概率。46安全保密需求進(jìn)入游戲界面前,設(shè)有登陸窗體,用戶需輸入正確的用戶名和密碼才能登陸屬于自己的賬號,另外設(shè)有注冊窗體,便于新用戶的使用。要求保證每位用戶賬戶信息的安全。47用戶界面需求利用JAVASWING組件對該游戲軟件的界面進(jìn)行設(shè)計(jì)與實(shí)現(xiàn),實(shí)現(xiàn)程序GUI圖形界面,做到界面設(shè)計(jì)簡潔大方,時(shí)尚新穎,適合各類用戶群體使用。48軟件成本消耗與開發(fā)進(jìn)度需求由于該軟件只作為畢業(yè)設(shè)計(jì),用于考察學(xué)生對于JAVASWING組件的理解與應(yīng)用能力,并未涉及軟件的市場推廣等工作,且開發(fā)該游戲的軟件不需付費(fèi),屬于零成本,所以暫不用考慮軟件的成本消耗。開發(fā)進(jìn)度嚴(yán)格遵守任務(wù)書中的畢業(yè)設(shè)計(jì)論文進(jìn)度計(jì)劃。49條件假定和限制由于本軟件目前是基礎(chǔ)版本,未做到盡善盡美。如果用戶需要提高版本,本軟件需要根據(jù)游戲者的要求進(jìn)行進(jìn)一步的修改。5總體設(shè)計(jì)51總體設(shè)計(jì)方案在登錄游戲界面后,設(shè)計(jì)本程序能夠載入默認(rèn)圖片(用戶也可以選擇想要的其它圖片),程序默認(rèn)難度為9宮格(用戶也可以選擇想要的其他難度),還設(shè)計(jì)實(shí)現(xiàn)背景音樂的播放功能等。在本程序中,對于圖片的分割、拼湊、判斷圖片是否可以移動等都是設(shè)計(jì)的關(guān)鍵。總體設(shè)計(jì)方案中主要說明前期工作中對于分割圖片以及判斷拼圖是否成功這兩點(diǎn)的設(shè)計(jì)。對于分割圖片是用像素點(diǎn)來實(shí)現(xiàn)的,同時(shí)對圖片進(jìn)行了自動縮放,這樣一來就可以使得圖片分割后看起來更連貫。拆分圖片后,把分好的圖片存儲到一個(gè)IMAGE數(shù)組中,對于可移動的塊其實(shí)是按鈕,每個(gè)按鈕上都有一個(gè)ICON,通過隨機(jī)把IMAGE數(shù)組中的圖片通過IMAGEICON的轉(zhuǎn)化后附給一個(gè)按鈕,并將按鈕數(shù)組首先附給一個(gè)向量,然后用隨機(jī)數(shù)來確定對應(yīng)向量的值,然后再附給對應(yīng)數(shù)組按鈕,同時(shí)去除該值。也就是說在附值的時(shí)候圖片順序不變,變的而是數(shù)組按鈕的順序。對于圖片的是否拼圖成功的提示,主要是在每個(gè)按鈕中加個(gè)STRING的屬性值,而且對于正確的排序的值與正在排的各個(gè)值比較,一旦所有的按鈕對應(yīng)的值與正確的排序一致,則為成功。52功能模塊設(shè)計(jì)關(guān)于該拼圖游戲的功能木模塊設(shè)計(jì),從邏輯上分析,該拼圖游戲主要分成2塊,也就是主要的兩個(gè)窗體,分別為登錄注冊部分和游戲部分,其中游戲部分又分為游戲菜單部分以及幫助菜單部分,下面就從這幾部分對該款拼圖游戲進(jìn)行功能設(shè)計(jì)分析。521登錄注冊部分流程分析啟動程序輸入用戶名和密碼合法性檢查讀取權(quán)限進(jìn)入游戲界面結(jié)束NNY賬戶檢測注冊賬號Y圖51登錄注冊流程分析登陸注冊流程的分析圖如圖51所示,啟動程序后,首先是登錄界面,在登陸界面中,用戶只有輸入正確的賬號和密碼才能進(jìn)行合法性檢查,才可以進(jìn)入拼圖游戲界面進(jìn)行游戲,否則進(jìn)不去系統(tǒng),在這里也可以通過選擇注冊賬號進(jìn)入系統(tǒng)。522游戲功能分析游戲部分主要分為游戲主菜單和幫助菜單2部分1游戲主菜單功能分析游戲菜單包括(1)開始游戲;(2)更換圖片包括游戲自帶圖片和自定義圖片;(3)難度選擇包括初級難度,中級難度和高級難度;(4)戰(zhàn)況成績;(5)成績排名;(6)背景音樂包括三種游戲背景音樂可供選擇;(7)退出游戲。拼圖游戲菜單開始游戲更換圖片難度選擇戰(zhàn)況成績成績排名退出游戲背景音樂系統(tǒng)自帶用戶定義初級難度中級難度高級難度背景音樂1背景音樂2背景音樂3圖52拼圖游戲菜單功能結(jié)構(gòu)圖拼圖游戲菜單功能的結(jié)構(gòu)圖如圖52所示,圖中表示拼圖游戲菜單有七個(gè)一級菜單選項(xiàng),分別是開始游戲、更換圖片、難度選擇、戰(zhàn)況成績、成績排名、背景音樂以及退出成績這幾個(gè)菜單選項(xiàng)。又有二級菜單選項(xiàng),分別為更換圖片里的圖片選擇、難度選擇中的三種難度選擇以及背景音樂中的三種音樂選擇。2幫助菜單功能分析幫助菜單功能包括(1)原圖效果,主要是在游戲過程中給用戶提供原圖,方便用戶游戲操作;(2)游戲幫助;(3)關(guān)于軟件信息(4)游戲外觀,游戲外觀包括三種風(fēng)格可供選擇。幫助菜單原圖效果游戲幫助關(guān)于系統(tǒng)游戲外觀圖53幫助菜單功能結(jié)構(gòu)圖幫助菜單功能結(jié)構(gòu)圖如圖53所示,圖中表示出幫助菜單中有四個(gè)菜單選項(xiàng),分別為原圖效果、游戲幫助、游戲外觀、以及關(guān)于系統(tǒng)的介紹這幾個(gè)菜單選項(xiàng)。其中游戲外觀菜單選項(xiàng)中有三個(gè)子選項(xiàng),分別為WINDOWS外觀、JAVA外觀以及系統(tǒng)外觀三種選擇。53系統(tǒng)流程圖設(shè)計(jì)圖54流程圖符號在繪制程序框圖時(shí),使用的符號說明如圖54所示,拼圖游戲系統(tǒng)處理方式的合理選擇,其實(shí)就是一個(gè)處理過程的設(shè)計(jì)問題。選擇處理方式實(shí)際上就是根據(jù)系統(tǒng)的任務(wù)、目標(biāo)和環(huán)境條件,合理地選擇信息活動的形態(tài)及具體方法。程序流程圖又稱為方框圖。表示方法簡明直觀,是用來描述程序執(zhí)行的邏輯過程的。它把程序的基本步驟歸納為處理、判斷、輸入/輸出、開始和結(jié)束等幾個(gè)基本功能,并用不同的記號加以表示,從而描述程序的執(zhí)行過程。返回主界面功能選擇拼圖游戲菜單和幫助菜單功能選擇輸入/輸出操作信息進(jìn)入是否繼續(xù)YN圖55拼圖游戲系統(tǒng)流程圖拼圖游戲系統(tǒng)流程圖如圖55所示,進(jìn)入系統(tǒng)后,用戶可選擇各功能進(jìn)行游戲,此時(shí)亦可選擇退出。選擇各功能可分別從游戲菜單和幫助菜單中選擇,游戲菜單中有開始游戲、難度選擇、圖片更改、背景音樂選擇、戰(zhàn)況排名、游戲成績以及退出游戲等,幫助菜單中有原圖顯示、游戲幫助、關(guān)于系統(tǒng)等功能選擇。根據(jù)用戶的功能選擇會輸出具體對應(yīng)的操作信息,直至游戲結(jié)束。6詳細(xì)設(shè)計(jì)61數(shù)據(jù)庫設(shè)計(jì)與實(shí)現(xiàn)611數(shù)據(jù)庫的概念數(shù)據(jù)庫處理在信息系統(tǒng)的研究中一直是非常重要的主題,然而,近年來,隨著WORLDWIDEWEBWWW的猛增及INTERNET技術(shù)的迅速發(fā)展,使得數(shù)據(jù)庫技術(shù)之時(shí)成為最熱門技術(shù)之一。數(shù)據(jù)庫技術(shù)能使INTERNET應(yīng)用超越具有早期應(yīng)用特點(diǎn)的簡單的發(fā)布。同時(shí),INTERNET技術(shù)提供了一種向用戶發(fā)布數(shù)據(jù)庫內(nèi)容的標(biāo)準(zhǔn)化的訪問方法。這些技術(shù)沒有脫離經(jīng)典數(shù)據(jù)庫技術(shù)的要求。它們只是加重了數(shù)據(jù)庫技術(shù)的重要性。數(shù)據(jù)庫的設(shè)計(jì)和開發(fā)及包括藝術(shù)有包括工程。理解用戶的需求,然后,把它們轉(zhuǎn)變?yōu)橛行У臄?shù)據(jù)庫設(shè)計(jì)是一個(gè)藝術(shù)過程。把設(shè)計(jì)轉(zhuǎn)變?yōu)閷?shí)際的數(shù)據(jù)庫,并且這些數(shù)據(jù)庫帶有功能完備、高效能的應(yīng)用,是一個(gè)工程過程。數(shù)據(jù)庫的目的是幫助人們跟蹤事務(wù)。經(jīng)典的數(shù)據(jù)庫應(yīng)用涉及諸如訂單、顧客、工作、員工、電話之類的項(xiàng),或其它數(shù)據(jù)量較大、需要密切關(guān)注的事務(wù)。最近,由于數(shù)據(jù)庫的普及,數(shù)據(jù)庫技術(shù)已經(jīng)被應(yīng)用到了新的領(lǐng)域,諸如用于INTERNET的數(shù)據(jù)庫或用于公司內(nèi)聯(lián)網(wǎng)的數(shù)據(jù)庫。數(shù)據(jù)庫也被越來越多地應(yīng)用于生成和維護(hù)多媒體應(yīng)用程序上。計(jì)算機(jī)的數(shù)據(jù)處理應(yīng)用,首先要把大量的信息以數(shù)據(jù)形式存放在存儲器中。存儲器的容量、存儲速率直接影響到數(shù)據(jù)管理技術(shù)的發(fā)展。從1956年生產(chǎn)出第一臺計(jì)算機(jī)到現(xiàn)在,存儲器的發(fā)展,為數(shù)據(jù)庫技術(shù)提供了良好的物質(zhì)基礎(chǔ)。設(shè)計(jì)數(shù)據(jù)庫系統(tǒng)時(shí),應(yīng)該首先了解用戶的各個(gè)方面的需求,包括現(xiàn)有的以及將來可能增加的。612ACCESS介紹ACCESS是微軟公司推出的基于WINDOWS的桌面關(guān)系數(shù)據(jù)庫管理系統(tǒng)(RDBMS,即RELATIONALDATABASEMANAGEMENTSYSTEM),是OFFICE系列應(yīng)用軟件之一。它提供了表、查詢、窗體、報(bào)表、頁、宏、模塊7種用來建立數(shù)據(jù)庫系統(tǒng)的對象;提供了多種向?qū)?、生成器、模板,把?shù)據(jù)存儲、數(shù)據(jù)查詢、界面設(shè)計(jì)、報(bào)表生成等操作規(guī)范化;為建立功能完善的數(shù)據(jù)庫管理系統(tǒng)提供了方便,也使得普通用戶不必編寫代碼,就可以完成大部分?jǐn)?shù)據(jù)管理的任務(wù)。ACCESS能夠存取ACCESS/JET、MICROSOFTSQLSERVER、ORACLE甲骨文軟件公司,或者任何ODBC兼容數(shù)據(jù)庫內(nèi)的資料。熟練的軟件設(shè)計(jì)師和資料分析師利用它來開發(fā)應(yīng)用軟件,而一些不熟練的程序員和非程序員的“進(jìn)階用戶“則能使用它來開發(fā)簡單的應(yīng)用軟件。雖然它支援部分面向?qū)ο螅∣OP)技術(shù),但是未能成為一種完整的面向?qū)ο箝_發(fā)工具。ACCESS的優(yōu)點(diǎn)主要體現(xiàn)在以下幾個(gè)方面1存儲方式簡單,易于維護(hù)管理,ACCESS管理的對象有表、查詢、窗體、報(bào)表、頁、宏和模塊,以上對象都存放在后綴為(MDB或ACCDB)的數(shù)據(jù)庫文件中,便于用戶的操作和管理。2面向?qū)ο驛CCESS是一個(gè)面向?qū)ο蟮拈_發(fā)工具,利用面向?qū)ο蟮姆绞綄?shù)據(jù)庫系統(tǒng)中的各種功能對象化,將數(shù)據(jù)庫管理的各種功能封裝在各類對象中。它將一個(gè)應(yīng)用系統(tǒng)當(dāng)作是由一系列對象組成的,對每個(gè)對象它都定義一組方法和屬性,以定義該對象的行為和外國,用戶還可以按需要給對象擴(kuò)展方法和屬性。通過對象的方法、屬性完成數(shù)據(jù)庫的操作和管理,極大地簡化了用戶的開發(fā)工作。同時(shí),這種基于面向?qū)ο蟮拈_發(fā)方式,使得開發(fā)應(yīng)用程序更為簡便。3界面友好、易操作,ACCESS是一個(gè)可視化工具,是風(fēng)格與WINDOWS完全一樣,用戶想要生成對象并應(yīng)用,只要使用鼠標(biāo)進(jìn)行拖放即可,非常直觀方便。系統(tǒng)還提供了表生成器、查詢生成器、報(bào)表設(shè)計(jì)器以及數(shù)據(jù)庫向?qū)?、表向?qū)А⒉樵兿驅(qū)?、窗體向?qū)?、?bào)表向?qū)У裙ぞ?,使得操作簡便,容易使用和掌握?集成環(huán)境、處理多種數(shù)據(jù)信息,ACCESS基于WINDOWS操作系統(tǒng)下的集成開發(fā)環(huán)境,該環(huán)境集成了各種向?qū)Ш蜕善鞴ぞ?,極大地提高了開發(fā)人員的工作效率,使得建立數(shù)據(jù)庫、創(chuàng)建表、設(shè)計(jì)用戶界面、設(shè)計(jì)數(shù)據(jù)查詢、報(bào)表打印等可以方便有序地進(jìn)行。5該ACCESS支持ODBC(開發(fā)數(shù)據(jù)庫互連,OPENDATABASECONNECTIVITY),利用ACCESS強(qiáng)大的DDE(動態(tài)數(shù)據(jù)交換)和OLE(對象的聯(lián)接和嵌入)特性,可以在一個(gè)數(shù)據(jù)表中嵌入位圖、聲音、EXCEL表格、WORD文檔,還可以建立動態(tài)的數(shù)據(jù)庫報(bào)表和窗體等。ACCESS還可以將程序應(yīng)用于網(wǎng)絡(luò),并與網(wǎng)絡(luò)上的動態(tài)數(shù)據(jù)相聯(lián)接。利用數(shù)據(jù)庫訪問頁對象生成HTML文件,輕松構(gòu)建INTERNET/INTRANET的應(yīng)用。6支持廣泛,易于擴(kuò)展,彈性較大,能夠?qū)⑼ㄟ^鏈接表的方式來打開EXCEL文件、格式化文本文件等,這樣就可以利用數(shù)據(jù)庫的高效率對其中的數(shù)據(jù)進(jìn)行查詢、處理。還可以通過以ACCESS作為前臺客戶端,以SQLSERVER作為后臺數(shù)據(jù)庫的方式(如ADP)開發(fā)大型數(shù)據(jù)庫應(yīng)用系統(tǒng)??傊?,ACCESS是一個(gè)既可以只用來存放數(shù)據(jù)的數(shù)據(jù)庫,也可以作為一個(gè)客戶端開發(fā)工具來進(jìn)行數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā);即可以開發(fā)方便易用的小型軟件,也可以用來開發(fā)大型的應(yīng)用系統(tǒng)。613數(shù)據(jù)庫設(shè)計(jì)其實(shí)在拼圖游戲主體中并沒用到數(shù)據(jù)庫,數(shù)據(jù)庫在此拼圖游戲中主要是用來保存用戶信息和用戶游戲成績信息的,因此拼圖游戲主要包括2張表1用戶信息表表61用戶信息表(USERINFO)用戶信息表在拼圖游戲中主要體現(xiàn)在用戶登錄和用戶注冊信息的保存,如表61所示,建立用戶信息表USERINFO,其中具備UNAME和UPWD(即用戶名和密碼)這兩項(xiàng)用戶信息,這兩項(xiàng)的數(shù)據(jù)類型均為文本類型。設(shè)置字段名稱分別為UNAME以及UPWD,分別代表用戶名以及密碼兩個(gè)項(xiàng)目。創(chuàng)建用戶信息表用來存儲用各位用戶的用戶名以及密碼這兩項(xiàng)信息。2成績信息表表62成績信息表GRADE成績信息表在拼圖游戲中主要體現(xiàn)在用戶個(gè)人戰(zhàn)況成績和成績排名信息的保存,如表62所示,創(chuàng)建成績信息表,用來存儲各位用戶的成績信息,其中包括用戶名、等級、分?jǐn)?shù)以及時(shí)間這四項(xiàng)信息,數(shù)據(jù)類型分別為文本、數(shù)字、數(shù)字和日期/時(shí)間。設(shè)置字段名稱分別為UNAME、VERSION、POINT以及TIME,分別代表用戶名、等級、分?jǐn)?shù)以及時(shí)間這四個(gè)項(xiàng)目。圖61ER圖符號說明ER圖是由實(shí)體、屬性、聯(lián)系三部分組成,其符號表示如圖61所示,實(shí)體聯(lián)系圖ENTITYRELATIONDIAGRAM用來建立數(shù)據(jù)模型,在數(shù)據(jù)庫系統(tǒng)概論中屬于概念設(shè)計(jì)階段,形成一個(gè)獨(dú)立于機(jī)器,獨(dú)立于DBMS的ER圖模型。通常將它簡稱為ER圖,相應(yīng)地可把用ER圖描繪的數(shù)據(jù)模型稱為ER模型。ER圖提供了表示實(shí)體(即數(shù)據(jù)對象)、屬性和聯(lián)系的方法,用來描述現(xiàn)實(shí)世界的概念模型。本拼圖游戲中有2個(gè)實(shí)體,用戶信息的ER圖如圖62所示USERINFO(UNAME,UPWD)USERINFOUNAMEUPWD圖62USERINFOER圖圖62為USERINFOER圖,即用戶信息ER圖。在用戶信息的ER圖中,有兩個(gè)實(shí)體,分別為UNAME以及UPAWD這兩項(xiàng),分別表示用戶名以及密碼這兩項(xiàng),圖62表示出用戶信息表中的實(shí)體聯(lián)系圖,可以讓人清晰地看出用戶信息表中所包含的數(shù)據(jù)庫信息,并反映其屬性。GRADE(UNAME,VERSION,POINT,TIME)GRADEUNAMETIMEVERSIONPOINT圖63GRADEER圖如圖63所示,圖為GRADEER圖,其中包含UNAME、VERSION、POINT以及TIME這四項(xiàng),分別代表用戶名、等級、分?jǐn)?shù)以及時(shí)間這四項(xiàng)。該圖表示出用戶成績信息表中的數(shù)據(jù)關(guān)系??梢宰屓饲逦乜闯鲇脩粜畔⒈碇兴臄?shù)據(jù)庫信息,并反映其屬性。USERINFOGRADE屬于1N圖64全局ER圖如圖64所示,圖為全局ER圖,反映出該數(shù)據(jù)庫系統(tǒng)中所包含的數(shù)據(jù)庫信息。有USERINFO以及GRADE這兩個(gè)實(shí)體。1個(gè)用戶可以有N個(gè)成績,但是1個(gè)成績只能屬于1個(gè)用戶,因此用戶和成績是1對多的關(guān)系,得出下面實(shí)體關(guān)系圖614數(shù)據(jù)庫實(shí)現(xiàn)1數(shù)據(jù)庫的連接PRIVATESTATICVOIDCREATECONNTRYCLASSFORNAMEDRIVER/加載驅(qū)動TRYCONNDRIVERMANAGERGETCONNECTIONURL/到得數(shù)據(jù)庫連接CATCHSQLEXCEPTIONE/TODOAUTOGENERATEDCATCHBLOCKEPRINTSTACKTRACECATCHCLASSNOTFOUNDEXCEPTIONE/TODOAUTOGENERATEDCATCHBLOCKEPRINTSTACKTRACE用JAVA訪問數(shù)據(jù)庫首先要加載數(shù)據(jù)庫驅(qū)動,然后才能連接數(shù)據(jù)庫。設(shè)計(jì)中涉及到了DAO(DATAACCESSOBJECT數(shù)據(jù)訪問對象)。DAO就是處理數(shù)據(jù)庫的操作;MODEL就是DAO進(jìn)行操作的數(shù)據(jù)對象。也就是說,DAO是操作數(shù)據(jù)庫的,提供對數(shù)據(jù)庫的基本操作,MODEL利用DAO里的方法完成業(yè)務(wù)邏輯處理,本身不涉及對數(shù)據(jù)庫的操作。2查詢指定用戶信息的實(shí)現(xiàn)PUBLICINTSELECTUSERUSERINFOUIINTCOUNT0STATEMENTSTNULL/執(zhí)行操作對象TRYSTCONNCREATESTATEMENT/創(chuàng)建執(zhí)行操作對象CATCHSQLEXCEPTIONE/TODOAUTOGENERATEDCATCHBLOCKEPRINTSTACKTRACETRYRESULTSETRSSTEXECUTEQUERY“SELECTFROMUSERINFOWHEREUNAME“UIGETUNAME“IFRSNEXTCOUNT1CATCHSQLEXCEPTIONE/TODOAUTOGENERATEDCATCHBLOCKEPRINTSTACKTRACERETURNCOUNT/返回結(jié)果定義靜態(tài)SQL語句命令,創(chuàng)建執(zhí)行操作對象,執(zhí)行SQL語句,用戶可根據(jù)自己的需要輸入自己所想查詢的用戶的信息,該段代碼是執(zhí)行查詢操作,查詢指定的用戶的信息,即執(zhí)行SELECTFROM操作,執(zhí)行后將數(shù)據(jù)返回到結(jié)果中。其間,若操作有誤便會通過TRYCATCH語句拋出異常。3注冊用戶信息的實(shí)現(xiàn)PUBLICINTREGISTERUSERINFOUISTATEMENTSMNULLINTCOUNT0TRYSMCONNCREATESTATEMENTCOUNTSMEXECUTEUPDATE“INSERTINTOUSERINFOVALUES“UIGETUNAME“,“UIGETUPWD“CATCHSQLEXCEPTIONE/TODOAUTOGENERATEDCATCHBLOCKEPRINTSTACKTRACERETURNCOUNT注冊用戶信息的實(shí)現(xiàn)主要是通過定義執(zhí)行操作對象,創(chuàng)建執(zhí)行操作對象,執(zhí)行數(shù)據(jù)庫語句,即EXECUTEUPDATE語句。用戶可輸入用戶名和密碼來實(shí)現(xiàn)注冊工作,之后數(shù)據(jù)庫會執(zhí)行更新操作,將新注冊的用戶信息更新到原有數(shù)據(jù)庫中。4更新用戶得分的實(shí)現(xiàn)PUBLICINTINSERTGRADEGRADEGDSTATEMENTSMNULLINTCOUNT0TRYSMCONNCREATESTATEMENTCOUNTSMEXECUTEUPDATE“INSERTINTOGRADEVALUES“GDGETUNAME“,“GDGETVESION“,“GDGETPOINT“,NOW“CATCHSQLEXCEPTIONE/TODOAUTOGENERATEDCATCHBLOCKEPRINTSTACKTRACERETURNCOUNT更新用戶得分主要是通過定義執(zhí)行操作對象,創(chuàng)建執(zhí)行操作對象,然后執(zhí)行數(shù)據(jù)庫語句,即EXECUTEUPDATE語句。用戶輸入用戶名、等級、得分信息,數(shù)據(jù)庫執(zhí)行查詢動作,并將新的用戶信息更新至原數(shù)據(jù)庫中。利用TRYCATCH語句,一旦程序出現(xiàn)錯(cuò)誤,程序會報(bào)錯(cuò)。5查詢指定用戶的得分信息PUBLICARRAYLISTSELECTGRADEGRADEGDSTATEMENTSMNULLRESULTSETRSNULLARRAYLISTALGRADENEWARRAYLISTTRYSMCONNCREATESTATEMENT/創(chuàng)建執(zhí)行操作對象RSSMEXECUTEQUERY“SELECTFROMGRADEWHEREUNAME“GDGETUNAME“ANDVERSION“GDGETVESIONWHILERSNEXTGRADEGNEWGRADEALGRADEADDGCATCHSQLEXCEPTIONE/TODOAUTOGENERATEDCATCHBLOCKEPRINTSTACKT
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 小兒下腔靜脈阻塞綜合征的臨床護(hù)理
- 2025年成人高考語文知識易錯(cuò)點(diǎn)梳理與解題技巧試題集
- 藝術(shù)批評理論與實(shí)踐2025年專升本藝術(shù)概論模擬試卷-藝術(shù)批評的審美體驗(yàn)與審美趣味
- 2025年專升本藝術(shù)概論試題(藝術(shù)教育與美育協(xié)同發(fā)展研究)
- 2025年中學(xué)教師資格考試《綜合素質(zhì)》教育研究方法教育研究方法發(fā)展試題試卷
- 2025年小學(xué)語文畢業(yè)升學(xué)考試全真模擬卷(課外閱讀理解強(qiáng)化試題)
- 2025年美術(shù)教師編制考試模擬試卷:美術(shù)教育心理學(xué)與教育心理測試題
- 2025年中學(xué)地理模擬試題及答案(聚焦鄉(xiāng)土地理特色深度)
- 202年初中地理信息技術(shù)應(yīng)用能力考試模擬試卷與答案解析
- 2025年注冊稅務(wù)師稅法一全真模擬試題試卷及答案
- 回收設(shè)施布局與優(yōu)化-深度研究
- 2024年國網(wǎng)浙江省電力有限公司招聘考試真題
- 微專題2 質(zhì)量守恒定律的應(yīng)用(解析版)
- 分析化學(xué)考試題(附參考答案)
- 森林無人機(jī)滅火技術(shù)集成-深度研究
- 股份轉(zhuǎn)讓協(xié)議模板
- 利他思維培訓(xùn)課件
- 2025年北京鐵路局集團(tuán)招聘筆試參考題庫含答案解析
- 湖南省長沙市雅禮實(shí)驗(yàn)高中-主題班會-把學(xué)習(xí)變?yōu)闊釔郏簝?nèi)驅(qū)力【課件】
- 2025中考物理總復(fù)習(xí)填空題練習(xí)100題(附答案及解析)
- 2025年牛津譯林版英語七年級下冊全冊單元重點(diǎn)知識點(diǎn)與語法匯編
評論
0/150
提交評論