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)槎擞螌Ψ?wù)器的性能要求相對比較高一些。兩種語言各有利弊。C++效率高,但是掌握度難些。沒有Java易于掌握。而目前對于追求快速上線率的頁游和手游來說,Java成了一個不錯的選擇。
一、Java的技術(shù)系統(tǒng)
需要學(xué)習(xí)的技術(shù):
(1)Java基礎(chǔ)知識
(2)JavaNIO編程
(3)Netty,Mina網(wǎng)絡(luò)框架精通一種,其它作為了解。
(4)一種緩存框架:Redis;memcache熟悉使用一個。
(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的基本知識就不必說了,是必不可少的??梢詤⒖肌禞ava編程思想》,《Java核心技術(shù)》等書。根據(jù)游戲通信協(xié)議的不同,大致有兩種實(shí)現(xiàn)方式:Socket和http。先說簡單些的http協(xié)議,這個協(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ā)出請求即可了。
二、學(xué)習(xí)流程
當(dāng)然了,學(xué)習(xí)這些東西并不是一蹴而就的。需要根據(jù)實(shí)踐循環(huán)漸進(jìn),這里推薦一個學(xué)習(xí)流程:
(1)對于初學(xué)Java的人來說,如果自學(xué)能力好些,可以買些書自己練習(xí),而現(xiàn)在又更的多選擇參加Java培訓(xùn)機(jī)構(gòu),以快速的掌握J(rèn)ava的知識。
(2)掌握了Java知識之后,要多寫代碼實(shí)踐。這個時候可以結(jié)合mysql學(xué)習(xí)SQL語言,掌握數(shù)據(jù)庫的操作。比如用springmvc寫一個小網(wǎng)站,用mybatis實(shí)現(xiàn)網(wǎng)站數(shù)據(jù)的增,刪,改,查等功能。
(3)完成上步之后,可以在服務(wù)器程序和數(shù)據(jù)庫之間加一個緩存,學(xué)習(xí)redis或memcache。
(4)把程序部署到linux服務(wù)器上,練習(xí)linux的基本命令及shell腳
免責(zé)聲明:內(nèi)容來源于公開網(wǎng)絡(luò),若涉及侵權(quán)聯(lián)系盡快刪除!