国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

戰(zhàn)斗仿真引擎學(xué)習(xí) Java 編程比以往更有趣

2019-11-18 10:49:00
字體:
供稿:網(wǎng)友

  有可能在閃躲炮彈和執(zhí)行精確攻擊的演練中學(xué)會(huì)繼續(xù)、多態(tài)性、事件處理以及內(nèi)部類這些內(nèi)容嗎?Robocode 這個(gè)游戲即將為全世界的 java 開發(fā)者實(shí)現(xiàn)這個(gè)愿望,它把游戲風(fēng)潮變成了教學(xué)工具,人們對(duì)它的上癮程度令人吃驚。請(qǐng)跟隨 Sing Li 一起拆解 Robocode,同時(shí)著手建造屬于自己的、定制的、小而精悍的戰(zhàn)斗機(jī)器。
  Robocode 是一個(gè)很輕易使用的機(jī)器人戰(zhàn)斗仿真器,可以在所有支持 Java 2 的平臺(tái)上運(yùn)行。您創(chuàng)建一個(gè)機(jī)器人,把它放到戰(zhàn)場(chǎng)上,然后讓它同其他開發(fā)者們創(chuàng)建的機(jī)器人對(duì)手拼死戰(zhàn)斗到底。Robocode 里有一些預(yù)先做好的機(jī)器人對(duì)手讓你入門,但一旦您不再需要它們,就可以把您自己創(chuàng)建的機(jī)器人加入到正在世界范圍內(nèi)形成的某個(gè)聯(lián)盟里去和世界最強(qiáng)手對(duì)陣。
  
  每個(gè) Robocode 參加者都要利用 Java 語言元素創(chuàng)建他或她的機(jī)器人,這樣就使從初學(xué)者到高級(jí)黑客的廣大開發(fā)者都可以參與這一娛樂活動(dòng)。初級(jí)的 Java 的開發(fā)者們可以學(xué)習(xí)一些基礎(chǔ)知識(shí):調(diào)用 API 代碼、閱讀 Javadoc、繼續(xù)、內(nèi)部類、事件處理等等。高級(jí)開發(fā)者們可以在構(gòu)建“最優(yōu)品種”的軟件機(jī)器人全球競(jìng)賽中提高他們的編程技巧。在本文中,我們將介紹 Robocode,并指導(dǎo)您從構(gòu)建您平生第一個(gè) Robocode 機(jī)器人開始征服世界。我們還將看一下迷人的“后臺(tái)”機(jī)制,正是它使得 Robocode 起作用。
  
  下載并安裝 Robocode
  Robocode 是 Mathew Nelson 的聰明之作,他是 IBM Internet 部門 Advanced Technology 的軟件工程師。請(qǐng)首先訪問 IBM alphaWorks Robocode 頁(yè)面。在這個(gè)頁(yè)面上,您可以找到 Robocode 系統(tǒng)最新的可執(zhí)行文件。這個(gè)分發(fā)包是一個(gè)自包含的安裝文件,在下載該分發(fā)包之后,您就可以使用下面的命令行在您的系統(tǒng)上安裝這個(gè)軟件包(當(dāng)然,我們假定您的機(jī)器上已經(jīng)預(yù)安裝了 Java VM(JDK 1.3.x)):
  
  java -jar robocode-setup.jar
  
  在安裝過程中,Robocode 將問您是否要使用這個(gè)外部的 Java VM 來編譯機(jī)器人。您也可以選擇使用作為 Robocode 分發(fā)包一部分而提供的 Jikes 編譯器。
  
  安裝完成后,您可以通過 shell 腳本(robocode.sh)、批處理文件(robocode.bat)或桌面上的圖標(biāo)來啟動(dòng) Robocode 系統(tǒng)。此時(shí),戰(zhàn)場(chǎng)將會(huì)出現(xiàn)。在此,您可以通過菜單調(diào)用 Robot Editor 和 compiler。
  
  Robocode 系統(tǒng)組件
  當(dāng)您激活 Robocode 時(shí),將看到兩個(gè)相關(guān)的 GUI 窗口,這兩個(gè)窗口構(gòu)成了 Robocode 的 IDE:
  
  戰(zhàn)場(chǎng)
  Robot Editor
  圖 1 展示了處于工作狀態(tài)的戰(zhàn)場(chǎng)和 Robot Editor。
  
  
圖 1. Robocode IDE

  
 戰(zhàn)斗仿真引擎學(xué)習(xí) Java 編程比以往更有趣(圖一)

  戰(zhàn)場(chǎng)是機(jī)器人之間進(jìn)行戰(zhàn)斗直至分出勝敗的場(chǎng)地。主要的仿真引擎被置于其中,并且答應(yīng)您在這里創(chuàng)建戰(zhàn)斗、保存戰(zhàn)斗以及打開新建的或現(xiàn)有的戰(zhàn)斗。通過界面區(qū)域內(nèi)的控件,您可以暫停或繼續(xù)戰(zhàn)斗、終止戰(zhàn)斗、消滅任何機(jī)器人個(gè)體或獲取任何機(jī)器人的統(tǒng)計(jì)數(shù)據(jù)。此外,您可以在此屏幕上激活 Robot Editor。
  
  Robot Editor 是一個(gè)定制的文本編輯器,它可以用于編輯生成機(jī)器人的 Java 源文件。在它的菜單里集成了 Java 編譯器(用于編譯機(jī)器人代碼)以及定制的 Robot 打包器。由 Robot Editor 創(chuàng)建并成功編譯的所有機(jī)器人都會(huì)處于戰(zhàn)場(chǎng)上一個(gè)部署就緒的位置。
  
  Robocode 里的每個(gè)機(jī)器人都由一個(gè)或多個(gè) Java 類構(gòu)成。這些類可以被壓縮成一個(gè) JAR 包。為此,Robocode 的最新版本提供了一個(gè)可以在戰(zhàn)場(chǎng) GUI 窗口中激活的“Robot Packager”。
  
  對(duì) Robocode 機(jī)器人的具體分析
  在寫這篇文章時(shí),Robocode 機(jī)器人是一個(gè)圖形化的坦克。圖 2 是一個(gè)典型的 Robocode 機(jī)器人的圖解。
  
  
圖 2. 對(duì) Robocode 機(jī)器人的具體分析

  
 戰(zhàn)斗仿真引擎學(xué)習(xí) Java 編程比以往更有趣(圖二)

  請(qǐng)注重,機(jī)器人有一門可以旋轉(zhuǎn)的炮,炮上面的雷達(dá)也是可以旋轉(zhuǎn)的。機(jī)器人坦克車(Vehicle)、炮(Gun)以及雷達(dá)(Radar)都可以單獨(dú)旋轉(zhuǎn),也就是說,在任何時(shí)刻,機(jī)器人坦克車、炮以及雷達(dá)都可以轉(zhuǎn)向不同的方向。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 万荣县| 娄底市| 桐城市| 环江| 龙江县| 任丘市| 航空| 德州市| 同江市| 泰和县| 保德县| 五原县| 兴安县| 酒泉市| 东乌| 南陵县| 天台县| 瑞昌市| 如东县| 旅游| 桃江县| 济南市| 江孜县| 许昌县| 海兴县| 顺昌县| 聂拉木县| 西平县| 毕节市| 乌拉特后旗| 新昌县| 即墨市| 临猗县| 博湖县| 景谷| 临高县| 和林格尔县| 彰武县| 北海市| 曲靖市| 静海县|