freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

網(wǎng)絡(luò)五子棋的設(shè)計與實現(xiàn)word格式(完整版)

2025-01-23 03:23上一頁面

下一頁面
  

【正文】 在讀取消息,而并未處理消息。 對此該游戲的算法進行了設(shè)計。還有劉小飛同學(xué)的幫助,感謝他在我遇到某些技術(shù)問題時給我耐心的分析代碼??偨Y(jié)制作過程中的經(jīng)驗和教訓(xùn),有幾點體會: ( 1) 要準備充分,在系統(tǒng)分析于設(shè)計階段要做的盡可能詳細、全面,以免 在后階段返工,浪費人力、物力、財力。測試在也是該游戲的一部分,不在現(xiàn)實生活中不可能誰能夠一次開發(fā)出沒有 bug 的項目,都要經(jīng)過測試,所以說我們有開發(fā)技術(shù)的同時也應(yīng)該不斷的鍛煉我們的測試技術(shù)。代碼如下圖 圖 332 棋盤出界問題代碼 在對弈的時候,當(dāng)重玩時,再點擊鼠標下棋時,每次點都彈出贏棋的消息,如下圖 圖 333 測試對弈贏棋問題 出現(xiàn)這種情況的原因肯定是跟控制贏棋的屬性有關(guān)系,或者說是在重玩的方法里面有問題,最大可能的就是重玩的時候,控制贏棋的變量沒有被初始化,所以每次點擊鼠標贏棋的變量都是 true 所以每次都彈出贏棋的信息。軟件測試應(yīng)該貫穿整個軟件定義與開發(fā)整個期間。 充分注意測試中的群集現(xiàn)象。在結(jié)束這個階段后對軟件系統(tǒng)還要進行各種綜合測試,如集成測試、系統(tǒng)測試、性能測試和配置測試等,這是軟件生命周期的另一個獨立階段,即測試階段。當(dāng)單機 游戲的時候網(wǎng)絡(luò)的菜單就不可選了,如下圖 圖 320 單機時網(wǎng)絡(luò)不可選 控制面板上面的按鈕為不可選,輸入框為不可寫的狀態(tài),如下圖 圖 321 單機時控制狀態(tài)不可用 消息面板上面對方和自己的消息都變成本機消息,程序運行的時候如下圖 圖 322 單機時消息面板信息 下棋之后,有一個提示的地方會時時提示現(xiàn)在下棋的那一方是誰,的面板如下圖 圖 323 提示信息 當(dāng)有五個子的時候,就有贏棋的情況了,有贏棋的時候應(yīng)該彈出對話框,并提示是那種顏色的棋贏了,問游戲者是否重玩,界面如下圖 圖 324 贏棋時提示信息 當(dāng)點擊音樂菜單的時候,該游戲就自動播放音樂了,并且音樂的菜單就變?yōu)椤皶和2シ拧?。該類完成后整個棋盤就能夠顯示處理了,客戶端完整的棋盤如下圖。 Paint 類的設(shè)計 該類主要是用來畫棋子的,只有位置,也就是所下棋子的坐標 x, y,和棋子的顏色 col,還有一個 painChess 方法,畫出的棋子如下圖 圖 312 棋子 ChessClient 類的設(shè)計 該類增加了一個菜單欄,如下圖。 通過對各個類的屬性和方法分析,可以畫出一下類圖。使用類圖來表達這種協(xié)作。關(guān)聯(lián)關(guān)系的兩個類處于同一層次上,啊聚合關(guān)系兩個類處于不同的層次,一個是整體,一個是部分。一般關(guān)系表現(xiàn)為繼承或?qū)崿F(xiàn)關(guān)系 (is a),關(guān)聯(lián)關(guān)系表現(xiàn)為變量 (has a ),依賴關(guān)系表現(xiàn)為函數(shù)中的參數(shù) (use a)。在 Java 中,一個包可能含有其他包、類或者同時含有這兩者。 類名書寫規(guī)范:正體字說明類是可被實例化的,斜體字說明類為抽象類。例如:當(dāng)你為一個分布式的系統(tǒng)中的事務(wù)處理過程建模型時,你不可能只通過一個類來明白事務(wù)是怎樣進行的,事實上這個過程的執(zhí)行涉及到一系列的類的協(xié)同工作。類圖可以組織在(并且屬于)包中,僅顯示特定包中的相關(guān)內(nèi)容。箭頭尾部用來表示啟動交互的一方,箭頭頭部用來表示被啟動的一方,其中用例總是要由參與者來啟動。我們可以這樣去理解,用例是參與者想要系統(tǒng)做的事 情。用例圖由參與者( Actor)、用例( Use Case)、系統(tǒng)邊界、箭頭組成,用畫圖的方法來完成。在每下一個棋子的時候,先遍歷這個點屬于那些情況,再在每種情況上的 colorFive 對應(yīng)的位置加上 1,定義一個數(shù)組 haveChess[15][15],來存放每一個點上是否有棋,這個數(shù)組可以用來在你下棋的時候來判斷你所下的點的位置是否有棋,如果有你就不能在你所點擊的位置下棋。這里由計算機下子的算法來確定,對弈的話就不象單機游戲一樣,要計算機來判斷人下子之后計算機下那一個地方了,對弈只要在雙方下子的時候判斷贏棋情況,當(dāng)然還要同步的控制兩個人下棋的順序,這樣的話就要用到線程了,各自都繼承或?qū)崿F(xiàn)線程類或接口,以便各自能隨時單獨控制接發(fā)消息。而且對他們進行操作也不影響其他組件。 JBuilder 與 Borland StarTeam 自動化配置并變更管理系統(tǒng)一起使用,可以在全部開發(fā)周期中提高對項目的掌握程度。 JBuilder 技術(shù)傳承 Borland 幫助企業(yè)發(fā)揮已有 IT 投資更大作用的承諾,用于在企業(yè) Java 應(yīng)用程序的開發(fā)過程中,繼續(xù)利用現(xiàn)有的技術(shù)資源。 使用集成的小組開發(fā)環(huán)境,實現(xiàn)小組生產(chǎn)力的最大化 JBuilder 使 用提高小組生產(chǎn)力與效率的增強技術(shù),可以使 Java 開發(fā)小組生成可靠的、企業(yè)級應(yīng)用,并且速度很快,從而提高了開發(fā)小組(包括分布于多個地方的大型小組)的生產(chǎn)力。 如果通過 TCP/IP 協(xié)議建立連接,則服務(wù)器必須運行一個單獨的進程來等待連接,而某一客戶機必須試圖到達服務(wù)器,就好比某人打電話,必須保證另一方等待電話呼叫,這樣才能實現(xiàn)兩人之間的通信。 IAddress 在后面將學(xué)習(xí)。) 因為 Java 線程是搶占式的,所以你必須確保你的代碼中的線程會不時地給其它線程運行的機會。這個線程可能在等待訪問某個資源,而且在這個資源可訪問之前,這個線程無法繼續(xù)運行。 在 Java 編程中,虛擬處理機封裝在 Thread類的一個實例里。 類允許用戶創(chuàng)建并控制他們的線程。 lib: java 類庫目錄 Windows 環(huán)境變量 應(yīng)設(shè)置的環(huán)境變量包括: JAVA_HOME, PATH, CLASSPATH。 高性能:經(jīng)過實際的綜合評測得出結(jié)論, Java 是高性能的。 改進的解釋性:為彌補解釋語言速度較慢的不足, Java 采用預(yù)編譯的辦法,將原程序生成字節(jié)代碼,減輕運行時的解釋工作。這項工作即復(fù)雜又容易出錯。 上世紀九十年代中期, Sun 推出了 Sun Java Development Toolkits ,簡稱。這次畢業(yè)設(shè)計,正好將學(xué)過的 Java語言中的各種技術(shù)綜合起來,用 Jbuilder2021開發(fā)工具編寫一個小游戲,既對自己學(xué)過的技能進行一次檢驗,也能系統(tǒng)地將學(xué)過的知識復(fù)習(xí)鞏固。同時也加深了對多線程,流套接字等高級技術(shù)的理解。當(dāng)然,為了滿足沒有網(wǎng)絡(luò)同樣能娛樂的要求,許多小游戲做成了單機和網(wǎng)絡(luò)的雙功能。通過系統(tǒng)的學(xué) 習(xí),人們就可以使用它開發(fā)出功能齊全,滿足特殊需求的應(yīng)用程序。通過對該軟件的編寫,還可以鞏固我們對以上各種知識的掌握和理解。 圖 21 Java SE 的體系結(jié)構(gòu) 微型版: J2ME(Java ME),用于開發(fā)移動電話,機頂盒,個人數(shù)字設(shè)備等。 分布式:目前,在所有軟件產(chǎn)品中,僅供單個計算機使用的單機版軟件所占的比例越來越小。 Java 軟件是真正跨平臺可移植的。 圖 22 JDK 安裝目錄示例 bin: java 常用開發(fā)工具目錄,例如 javac, java, jar 等工具。 你不需關(guān)心這一點是如何實現(xiàn)的,只需從編程的角度考慮就可以了。如果兩個線程執(zhí)行同一個類的實例的代碼時,則它們可以共享相同的代碼。這個線程會一直運行,直至它不再是可運行的 (運行時間到,時間片原則,或者,另一個具有更高優(yōu)先級的線程搶占,優(yōu)先級優(yōu)先原則 )。 下圖形象地說明了這點: 圖 25 線程的生命周期 線程進入 可運行 狀態(tài),并不意味著它立即開始運行。 ServerSocket 其中, ServerSocket 被設(shè)計成在等待客戶建立連接之前不做任何事情的監(jiān)聽器,構(gòu)造方法的版本如下: public ServerSocekt(int port) throws IOException 在服務(wù)器指定端口 port 創(chuàng)建隊列長度為 50 的服務(wù)器套接字,當(dāng) port 為 0則代表創(chuàng)建一個基于任意可用端口的服務(wù)器套接字。 從 開始, java 提供了關(guān)于 ServerSocket 的 ServerSocketChannel, jdk建議用管道來實現(xiàn)客戶端連接的監(jiān)聽以及關(guān)閉服務(wù)器套接字會更安全,因此,現(xiàn)在我們應(yīng)該通過 ServerSocket 來得 到其套接字管道,通過管道來實現(xiàn)服務(wù)監(jiān)聽以 及 關(guān)閉 ,可 以 通過 ServerSocket 的 getChannel()方 法 來得 到當(dāng) 前ServerSocket 的相關(guān)管道。無論對于初出茅廬的 新手還是經(jīng)驗豐富的開發(fā)者來說,Jbuilder 都能為他們提供創(chuàng)新性工具,能夠顯著提高開發(fā)小組的生產(chǎn)力。這樣,隨著業(yè)務(wù)的發(fā)展,如果需要改變供應(yīng)商, 則您在應(yīng)用開發(fā)技術(shù)上面的投資仍能繼續(xù)發(fā)揮作用,而絲毫不用為其擔(dān)心。 JBuilder 進一步提高實時可視性,讓開發(fā)者一眼看清源碼變更 對應(yīng)用的不同層次甚至整個項目的影響。 放在一起主要原因是對他們超做不方便,對上面每一個組建進行操作都可能影響到其他的內(nèi)容,顯示情況等等。界面設(shè)計出來之后我們就會想,有了界面,我們怎樣控制棋子在棋盤上進行下棋呢。定義兩個三維數(shù)組 caseBlack[15][15][572], caseWhite[15][15][572]分別用來存放白棋和黑棋各個點的情況,前面兩維存放的是某個點的坐標,第三維放的是他們所屬于的情況,并把這個數(shù)組定義成 boolean 類型的。 用例圖和類圖 用例圖( use case diagram) 用例圖就是由主角、用例以及它們之間的關(guān)系構(gòu)成的圖。參與者在畫圖中用簡筆人物畫來表示,人物下面附上參與者的名稱。系統(tǒng)邊界在畫圖中方框來表示,同時附上系統(tǒng)的名稱,參與者畫在邊界的外面,用例畫在邊界里面。 圖 35 五子棋用例圖 類圖 (Class diagram) 類圖是顯示了模型的靜態(tài)結(jié)構(gòu),特別是模型中存在的類、類的內(nèi)部結(jié)構(gòu)以及它們與其他類的關(guān)系等。 注:組件圖和分布圖和類圖類似,雖然他們不包含類而是分別包含組件和節(jié)點。 1. 類( Class) 一般包含 3 個組成部分。書寫方式和方法類似。接口的表示有大概兩種方式。 表示方法:用 實線+箭頭, 箭頭指向被使用的類。例如如果 A 依賴于 B,則 B 體現(xiàn)為局部變量,方法的參數(shù)、或靜態(tài)方法的調(diào)用。 用場景來預(yù)排這些事物,沿著這條路你將發(fā)現(xiàn)模型中忽略的部分和定義錯誤的部分。 MessagePad 類的設(shè)計 該類也是在網(wǎng)絡(luò)對弈時用來顯示對方和自己的一些信息,像對方的 IP,姓名,棋子顏色,自己的 IP,姓名,等信息,也別交簡單,像 ControlPad 類類似,主要是一些 Label 組件,然后就是對它們進行組織。 圖 314 游戲菜單 在選項里面有“游戲規(guī)則”,“切換背景”,“音樂”,當(dāng)點擊切換背景時,顏色就換了,點擊音樂時,就能播放音樂。 ChessClient 類的設(shè)計 該類的設(shè)計和客戶端的設(shè)計類似,單機的功能都大同小異,只是增加了一個ServerSocket 來開啟對網(wǎng)絡(luò)服務(wù)的堅挺,接受 Socket,有了該類就可以進行網(wǎng)絡(luò)對弈了,進行網(wǎng)絡(luò)對弈的時候首先客戶端和服務(wù)器端都應(yīng)該開啟網(wǎng)絡(luò)的游戲,使單機的菜單為不可選的狀態(tài),在服務(wù)器端輸入自己的姓名,并開啟網(wǎng)絡(luò)服務(wù),等待客戶端的連接,在客戶端,輸入自己的姓名和服務(wù)器的 IP,然后連接服務(wù)器,當(dāng)連接 上了的時候服務(wù)器和客戶端的消息面板上面都能顯示對方的一些基本信息。軟件測試是 為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程。(指后期系統(tǒng)測試階段,不包括單元測試) 測試用例的設(shè)計要確保能覆蓋所有可能路徑。 應(yīng)當(dāng)對每一個測試結(jié)果做全面的檢查。和碰到問題之后解決的方法。所以就不能同步的進行 游戲。算法是在每個項目 中都會出現(xiàn)的都需要去設(shè)計的,故一個好的算法設(shè)計是必不可少的。謝謝他們! 還要感謝我宿舍的同學(xué)們,他們在生活上的無私幫助,讓我能全身心地投入到課題的研究中。 網(wǎng)絡(luò)游戲正在訊速發(fā)展,作為其中一種簡單休閑的游戲也在不斷地前進。象在該游戲的設(shè)計時就大量用到該方法,下面 是某一部分 圖 335 測試方法 當(dāng)然具體問題具體分析
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1