114培訓(xùn)網(wǎng)歡迎您來到全國IT培訓(xùn)中心!

400-850-8622

全國統(tǒng)一學(xué)習(xí)專線 9:00-21:00

Java游戲開發(fā)要學(xué)什么

Java游戲開發(fā)要學(xué)什么?所謂的游戲開發(fā)編程語言其實(shí)有很多,基本上任何一種語言都可以作為游戲服務(wù)器的編程語言。這需要根據(jù)自己游戲的類型和要求加以選擇。比如C++,Java,Erlang,go等等。目前我用過的只有C++和Java.但是以Java為主。所以接下來就以自己的經(jīng)驗(yàn),談?wù)勔訨ava為核心的游戲服務(wù)器開發(fā)技術(shù)體系。

Java目前作為游戲服務(wù)器開發(fā)語言已經(jīng)很是普遍。但是大多數(shù)是作為頁游或手游的服務(wù)器,而端游戲一般選擇C++,因?yàn)槎擞螌?duì)服務(wù)器的性能要求相對(duì)比較高一些。兩種語言各有利弊。C++效率高,但是掌握度難些。沒有Java易于掌握。而目前對(duì)于追求快速上線率的頁游和手游來說,Java成了一個(gè)不錯(cuò)的選擇。

一、Java的技術(shù)系統(tǒng)

需要學(xué)習(xí)的技術(shù):

(1)Java基礎(chǔ)知識(shí)

(2)JavaNIO編程

(3)Netty,Mina網(wǎng)絡(luò)框架精通一種,其它作為了解。

(4)一種緩存框架:Redis;memcache熟悉使用一個(gè)。

(5)SQL語言,用于數(shù)據(jù)庫:mysql數(shù)據(jù)庫

(6)springmvc主要用于http協(xié)議的服務(wù)器

(7)多線程編程,明白線程安全的重要性。

(8)Java并發(fā)集合的掌握。

(9)Linux常用的基本命令及shell腳本。

(10)數(shù)據(jù)庫操作,比如mybatis。

以Java為服務(wù)器編程語言來說,掌握J(rèn)ava的基本知識(shí)就不必說了,是必不可少的??梢詤⒖肌禞ava編程思想》,《Java核心技術(shù)》等書。根據(jù)游戲通信協(xié)議的不同,大致有兩種實(shí)現(xiàn)方式:Socket和http。先說簡單些的http協(xié)議,這個(gè)協(xié)議已經(jīng)很成熟的應(yīng)用到了網(wǎng)站上。而Java語言也可以用于網(wǎng)站開發(fā),所以相當(dāng)就簡單些。現(xiàn)在有很多開源的服務(wù)器軟件,比如:tomcat,resin等。游戲前端不管是頁游flash,還是手游的Android,IOS都支持http協(xié)議,只要把游戲的邏輯數(shù)據(jù)按post方法向服務(wù)器發(fā)出請(qǐng)求即可了。

二、學(xué)習(xí)流程

當(dāng)然了,學(xué)習(xí)這些東西并不是一蹴而就的。需要根據(jù)實(shí)踐循環(huán)漸進(jìn),這里推薦一個(gè)學(xué)習(xí)流程:

(1)對(duì)于初學(xué)Java的人來說,如果自學(xué)能力好些,可以買些書自己練習(xí),而現(xiàn)在又更的多選擇參加Java培訓(xùn)機(jī)構(gòu),以快速的掌握J(rèn)ava的知識(shí)。

(2)掌握了Java知識(shí)之后,要多寫代碼實(shí)踐。這個(gè)時(shí)候可以結(jié)合mysql學(xué)習(xí)SQL語言,掌握數(shù)據(jù)庫的操作。比如用springmvc寫一個(gè)小網(wǎng)站,用mybatis實(shí)現(xiàn)網(wǎng)站數(shù)據(jù)的增,刪,改,查等功能。

(3)完成上步之后,可以在服務(wù)器程序和數(shù)據(jù)庫之間加一個(gè)緩存,學(xué)習(xí)redis或memcache。

(4)把程序部署到linux服務(wù)器上,練習(xí)linux的基本命令及shell腳

免責(zé)聲明:內(nèi)容來源于公開網(wǎng)絡(luò),若涉及侵權(quán)聯(lián)系盡快刪除!

怎么用java做游戲?

主要是用Java分支中的J2ME來寫,但是J2ME中需要Java的基礎(chǔ)知識(shí) 。x0dx0ax0dx0a 現(xiàn)在有大部分人,都是從零開始學(xué)J2ME的,學(xué)習(xí)J2ME的時(shí)候,總是從Java基礎(chǔ)開始學(xué)習(xí),而且現(xiàn)在講Java基礎(chǔ)的書籍中都是以J2SE來講基礎(chǔ),這就給學(xué)習(xí)造成了一些不必要的麻煩,下面將J2ME中用到的和不需要的Java基礎(chǔ)知識(shí)做一個(gè)簡單的說明。 x0dx0ax0dx0a J2ME中使用到的Java基礎(chǔ)知識(shí): x0dx0ax0dx0a1、Java語法基礎(chǔ):包括基本數(shù)據(jù)類型、關(guān)鍵字、運(yùn)算符等等 x0dx0a2、面向?qū)ο蟮乃枷耄侯惡蛯?duì)象的概念,繼承和多態(tài)等等。 x0dx0a3、異常處理 x0dx0a4、多線程 x0dx0ax0dx0a J2ME中沒有用到的Java基礎(chǔ)知識(shí): x0dx0ax0dx0a1、JDK中javac和java命令的使用 x0dx0a2、Java基礎(chǔ)中的很多類在J2ME中沒有,或者類中的方法做了大量的精簡。所以建議在J2ME中熟悉類庫。 x0dx0a3、Applet、AWT、Swing這些知識(shí)在J2ME中根本使用不到。x0dx0a x0dx0a 簡單說這么多,希望學(xué)J2ME的朋友們能少走一些彎路,不足之處希望大家積極指正和補(bǔ)充

利用 Java Swing 實(shí)現(xiàn)游戲開發(fā)

Swing初體驗(yàn) 對(duì)于想學(xué)習(xí)Swing編程的朋友 我們特地為大家準(zhǔn)備了一些小竅門 首先 下載并閱讀代碼是極有必要的 由于這是一篇關(guān)于Swing的教程 所以 我們只是盡可能講解一些與Swing有關(guān)的內(nèi)容 與Swing無關(guān)的內(nèi)容一般不會(huì)涉及 例如算法部分 其次 受篇幅限制 也不可能在這里將每部分代碼都寫得完完整整的 所以 大家也需要對(duì)照完整代碼來看 * 為了使大家更容易把精力集中在Swing學(xué)習(xí)上 我們也將游戲開發(fā)中所需資源放在下載文件中 大家下載后便能夠編譯運(yùn)行 看到執(zhí)行結(jié)果 (下載游戲源文件) 頂層容器 什么是頂層容器?當(dāng)我們使用Java進(jìn)行圖形編程的時(shí)候 圖在哪里繪制呢?我們需要一個(gè)能夠提供圖形繪制的容器 這個(gè)容器就被稱為頂層容器 你也可以把它想象成一個(gè)窗口 頂層容器是進(jìn)行圖形編程的基礎(chǔ) 一切圖形化的東西 都必然包括在頂層容器中 在Swing中 我們有三種可以使用的頂層容器 它們分別是:JFrame:用來設(shè)計(jì)類似于Windows系統(tǒng)中的窗口形式的應(yīng)用程序 JDialog:和JFrame類似 只不過JDialog是用來設(shè)計(jì)對(duì)話框 JApplet:用來設(shè)計(jì)可以在嵌入在網(wǎng)頁中的Java小程序 如果需要使用Swing制作一個(gè)窗口類程序 我們的代碼看起來應(yīng)該是這樣:import javax swing *;public class JFrame {……} 控件 控件是構(gòu)成應(yīng)用程序界面的基本元素 按鈕 文本框 進(jìn)度條等 這些都是控件 控件(這里我們只討論可視化控件)又可以分為容器控件和非容器控件 從字面意義上來理解 容器控件就是能包含其他控件的特殊控件 例如 Java中的JPanel控件就屬于容器型控件 我們可以在JPanel中放置按鈕 文本框等非容器控件 你甚至可以在JPanel中再放置若干個(gè)JPanel控件(值得注意的是 頂層容器也是容器型控件 每一個(gè)窗口應(yīng)用程序中有且只能有一個(gè)頂層容器控件 換句話說 頂層容器不能包括在其他的控件中) Java中的容器控件有很多 除剛才提到的JPanel外 還有 等 非容器控件有JButton JLabel 等 如果你需要向某個(gè)容器型的控件中添加控件 你可以使用 add(Component p) 方法來實(shí)現(xiàn) 如:JPanel panel = new JPanel();JButton button = new JButton();panel add(button); 布局 什么是布局?布局是Java中用來控制控件排列位置的一種界面管理系統(tǒng) 使用過其他可視化編程開發(fā)語言的人在初次接觸Java界面設(shè)計(jì)時(shí) 總會(huì)感覺到Java界面設(shè)計(jì)很別扭:居然沒有提供所見即所得的設(shè)置控件坐標(biāo)的方法!然而 事實(shí)證明 Java本身提供的布局管理系統(tǒng)也一樣能夠出色地完成我們的需要 而且在跨平臺(tái)時(shí)表現(xiàn)得更有優(yōu)勢(shì) 常用的布局有::將界面分割為上下左右以及中間一塊區(qū)域的管理系統(tǒng) 在布局中 最多你只能放 個(gè)控件 如果超過 個(gè)控件 建議還是選用其他的布局系統(tǒng)吧 :是將用戶界面切割為棋盤一樣的布局管理系統(tǒng) 如果我們要設(shè)計(jì)一個(gè)類似于Windows中自帶的計(jì)算器軟件 無疑是*選擇 :與上述兩類布局管理系統(tǒng)不太一樣 在中 你不必指定每個(gè)控件放在哪 你只需要把控件加入到中 就會(huì)根據(jù)你添加控件的順序依次放置控件 如果空間不夠 會(huì)自動(dòng)換行 在對(duì)這幾個(gè)布局管理系統(tǒng)有了基本認(rèn)識(shí)后 我們就一起來進(jìn)入界面設(shè)計(jì)吧 在仔細(xì)觀察了QQ游戲中 連連看 的設(shè)定后 我們可以發(fā)現(xiàn) 整個(gè)界面分為三個(gè)區(qū) 頂部是系統(tǒng)菜單區(qū) 占地面積*的是用戶游戲區(qū) 另外還有一個(gè)用戶交互區(qū) 每個(gè)區(qū)域中都由若干控件組成 這么多控件 我們從哪開始入手呢?由于容器控件中可以放置其他控件 因此 我們只需要先確定放置的容器控件就可以了 既然已經(jīng)知道需要使用容器控件的個(gè)數(shù) 接下來讓我們就進(jìn)入布局管理系統(tǒng)的選擇 用?似乎有點(diǎn)勉強(qiáng) 用?還有更好的選擇嗎?對(duì)了 我想你一定想到了是吧 如下圖 所示 動(dòng)手之前 大家一定要注意的是 界面的設(shè)計(jì)要先考慮好尺寸 不管是主程序界面的大小還是每個(gè)區(qū)域的大小 如果沒有設(shè)計(jì)好合適的尺寸 將來改動(dòng)起來會(huì)十分痛苦 下面便是相應(yīng)的源程序:import java awt *;import javax swing *;public class KyodaiUI extends JFrame {public KyodaiUI() {this setSize( ); //將窗體的大小設(shè)定為 * this (JFrame EXIT_ON_CLOSE);this (false); //窗體不能改變大小this setTitle( 連連看 ); //設(shè)置標(biāo)題JPanel toolBar = new JPanel();toolBar (Color white);toolBar (new Dimension( ));JPanel = new JPanel(); //新建JPanel型的控件 (Color yellow); //設(shè)置背景色 (new Dimension( )); //設(shè)置大小JPanel = new JPanel(); (Color blue); (new Dimension( ));this () add(toolBar NORTH);this () add( EAST);this () add( CENTER);}public static void main(String[] args) throws {KyodaiUI kyodaiUI = new KyodaiUI();kyodaiUI show();}}讓我們來看看上面這段程序是如何運(yùn)行的 首先 extends JFrame表明了這是從JFrame中繼承過來的 JFrame是最基本的頂層容器控件 實(shí)際上 在JDK中 以字母J打頭的控件都是Swing控件 然后設(shè)置了容器的屬性 其中 (JFrame EXIT_ON_CLOSE)是用來告訴Java虛擬機(jī) 當(dāng)用戶點(diǎn)擊窗體右上角的 關(guān)閉 按鈕時(shí) 關(guān)閉該窗口進(jìn)程 如果不這么做的話 你會(huì)發(fā)現(xiàn)雖然你可以點(diǎn)將窗口關(guān)閉 然而程序卻沒有退出 在接下來的代碼中 我們?yōu)轫攲尤萜魈砑恿巳齻€(gè)Panel容器 要注意的是 在AWT中 我們可以直接寫為add(toolBar NORTH) 而在 Swing 中卻一定要寫成() add(toolBar NORTH) 否則程序就會(huì)出錯(cuò) 現(xiàn)在大家可以放在編譯運(yùn)行看看 是不是和我的運(yùn)行結(jié)果一樣(見圖 )? 邊框 雖然我們使用了不同前景色來區(qū)別不同的區(qū)域 然而卻沒有層次感 加上邊框一定會(huì)漂亮許多 在Java中 所有以J打頭的Swing控件都可以使用setBorder方法來為自己設(shè)置邊框 邊框有很多種 線型 凸起 凹下 空的 你甚至可以自由組合形成個(gè)人風(fēng)格 所有的Border都必須使用javax swing 中提供的靜態(tài)方法來創(chuàng)建 比如:Border border = ( LOWERED new Color( ) new Color( ) new Color( ) new Color( ));現(xiàn)在 我們將toolBar (Color white)改為toolBar setBorder(border) 立體效果是不是已經(jīng)出現(xiàn)了?實(shí)戰(zhàn)??寫上自己的大名現(xiàn)在我們已經(jīng)有了一個(gè)能夠運(yùn)行的界面了 雖然它什么也做不了 但是請(qǐng)你別慌 羅馬不是一天建成的 現(xiàn)在讓我們?cè)诓藛螀^(qū)提供一個(gè) 關(guān)于 菜單 用來顯示程序的信息 難道你不想讓別人知道你的大名嗎?Swing本身就提供了現(xiàn)成的按鈕控件JButton 我們只需要?jiǎng)?chuàng)建一個(gè)新的按鈕:JButton about = new JButton( 關(guān)于 );這個(gè)按鈕該怎么放到菜單區(qū)而不是別的地方呢?我們可以加入下面的代碼:toolBar add(about);咦 怎么點(diǎn)按鈕沒有反應(yīng)?這是因?yàn)槟氵€沒有告訴程序點(diǎn)擊按鈕時(shí)要做什么事情呢 要為按鈕添加事件響應(yīng) 首先需要使用about (this)來告訴程序監(jiān)聽按鈕按下時(shí)的事件 由于是一個(gè)程序接口 因此 我們?cè)陬惖纳昝鞯牡胤揭驳米鲆稽c(diǎn)小小的修改:public class KyodaiUI extends JFrame { }實(shí)現(xiàn)接口是為了告訴程序我要進(jìn)行事件處理了 當(dāng)然 *我們得添加響應(yīng)事件的代碼:public void ( e) {if (e getSource() == about) { (this 我的大名 關(guān)于 _MESSAGE);return ;}}其中 e getSource() 表示當(dāng)前觸發(fā)事件的控件 由于我們的程序中往往會(huì)有多個(gè)以上的控件 這些控件都有可能產(chǎn)生事件 所以我們必須使用這個(gè)方法來找到產(chǎn)生事情的控件 小結(jié) 讓我們一起來回顧一下今天所學(xué)的內(nèi)容:首先我們了解了頂層容器 也知道了控件分為容器控件和非容器控件 同時(shí)還知道使用邊框 * 我們還小小的處理了一下按鈕的事件 學(xué)而時(shí)習(xí)之 不亦說乎 就讓我留點(diǎn)小小的作業(yè) 幫助大家鞏固一下今天所學(xué)的內(nèi)容:上面我們添加的按鈕在菜單欄的中間 并不美觀 /Article/program/Java/hx/201311/25907

游戲開發(fā)需要具備哪些技術(shù)

游戲開發(fā)需要具備的技術(shù)如下:
1、需要掌握常用的編程語言,包括C++、等,手機(jī)開發(fā)使用的開發(fā)語言是C++,3D游戲開發(fā)使用的編程語言一般要使用c#或者。
2、掌握開發(fā)引擎,游戲開發(fā)經(jīng)常用到的游戲開發(fā)引擎有unity3D和Cocos2dx。
3、如果從事游戲特效設(shè)計(jì)方面的工作,需要掌握ps、3dmax、ae等常用軟件。
游戲開發(fā)推薦去翼狐網(wǎng)學(xué)習(xí),該網(wǎng)站課程內(nèi)容涵蓋軟件入門-進(jìn)階學(xué)習(xí)-商業(yè)實(shí)戰(zhàn)案例,性價(jià)比高,低成本學(xué)習(xí),價(jià)格比線下培訓(xùn)要低非常多,靈活按需學(xué)習(xí),在線靈活學(xué)習(xí),不受地域時(shí)間限制,海內(nèi)外*講師眾多,實(shí)戰(zhàn)經(jīng)驗(yàn)豐富?!具M(jìn)入官網(wǎng),立即領(lǐng)?。?00 新人專屬大禮包 0元體驗(yàn)VIP特權(quán)】
想要了解更多關(guān)于游戲開發(fā)的相關(guān)信息,推薦咨詢翼狐。翼狐網(wǎng)(www.yiihuu.com)是廣州冠岳網(wǎng)絡(luò)科技有限公司旗下的數(shù)字藝術(shù)在線學(xué)習(xí)平臺(tái),自2011年上線以來,秉持工匠精神,專注設(shè)計(jì)教育,精選優(yōu)質(zhì)、系統(tǒng)、實(shí)用的課程,為每一位想要真正學(xué)到實(shí)用知識(shí)、技能的用戶,提供貼心的一站式學(xué)習(xí)服務(wù)。

Java 開發(fā)網(wǎng)頁游戲需要什么技術(shù)

游戲一般都是用游戲引擎做的,因?yàn)槠胀ǖ膉ava缺少一些游戲需要的庫,如果你可以自己封裝的話那也可以。java的游戲引擎庫有l(wèi)ibGDX(我沒用過這個(gè)引擎,好像有java版的,但是不清楚能否發(fā)布網(wǎng)頁版)
常見的其他引擎:
①cocos2d-x。開發(fā)語言有c++,lua,js。其中js開發(fā)可以發(fā)布成網(wǎng)頁版
②u3d。開發(fā)語言c#,js。
③flash.(不過我沒用過AS寫過游戲,不過肯定的是這個(gè)可以做頁游)
用游戲引擎做的好處是可以跨平臺(tái),比如一個(gè)代碼你可以出網(wǎng)頁版的也可以出安卓、ios、PC端。
所以對(duì)于你說單純用java來做網(wǎng)頁前端我覺得用java要怎么展現(xiàn)精靈什么的?如果是那種類似wap游戲那種,游戲都是文字然后超鏈接點(diǎn)擊的那種用jsp做頁面確實(shí)是可以的。

溫馨提示:為不影響您的學(xué)業(yè),來校區(qū)前請(qǐng)先電話咨詢,方便我校安排相關(guān)的專業(yè)老師為您解答
相關(guān)資料
姓名不能為空
手機(jī)號(hào)格式錯(cuò)誤