前言
握础??悴品?
- C/C++
- java
- node.js
- C#
- scala
相關(guān)文章
1. 為什么多數(shù)游戲服務(wù)端是用 C++ 來寫呢禀综,是歷史原因還是性能方面的考慮简烘?來源知乎
-
知乎用戶 韋易笑 分析后認(rèn)為:
java 比 C++ 占優(yōu)。 這是否意味我們可以放棄C/C++了定枷?也不是:C語言是一把鋒利的匕首孤澎,而現(xiàn)代動(dòng)態(tài)語言是一把長(zhǎng)劍。平時(shí)匕首可以藏在身上欠窒,大部分時(shí)候用長(zhǎng)劍披荊斬棘就夠了覆旭,但當(dāng)你碰到堅(jiān)硬的石頭,長(zhǎng)劍不管用了岖妄,那么拿出匕首來果斷的切碎他型将。
-
知乎用戶 放浪者:
很多人對(duì) C++ 的極端推崇,歸根到底是眼界不夠廣荐虐,也不知道不同場(chǎng)景該用什么不同工具七兜,更不知道國(guó)外不斷推出的python/ruby/node/go/scala 等等到底是為了解決什么問題針對(duì)什么場(chǎng)景,不會(huì)去選擇最合適的工具缚俏,只能用他們自己比較熟悉的 C++ 惊搏,然后標(biāo)榜“高效”。其實(shí)這個(gè)跟政府采購(gòu)設(shè)備反正往最貴的買不會(huì)有錯(cuò)忧换,總可以給上面交代恬惯,是同一種思維模式。
-
知乎用戶 王迅 給出已下分析(具體內(nèi)容原文查看)
- 為什么都用C++做游戲服務(wù)端亚茬?
- 那為什么不能用C++來寫游戲服務(wù)端酪耳?
- 那用C++來寫服務(wù)端會(huì)有什么弊端呢?
- 那現(xiàn)在為啥還有團(tuán)隊(duì)招C++程序員呢刹缝?
- 好吧碗暗,那究竟該用什么語言寫游戲服務(wù)端呢?
- 那現(xiàn)在還有純C++寫服務(wù)端的游戲嗎梢夯?
2.游戲的后臺(tái)是否可以用 scala 加 node.js 來代替 C++言疗?來源知乎
3.該使用什么編程語言開發(fā)游戲服務(wù)器端呢?來源百度知道
看你團(tuán)隊(duì)規(guī)模了颂砸。 大公司有自己的后臺(tái)框架噪奄。 小公司用用photon什么的, 但是不死完全開源人乓。 完全開源的我推薦一個(gè)叫pomelo的吧勤篮, nodejs的,js坑比較多色罚, 但是做做棋牌游戲還是夠了碰缔。
如果只是語言性能上來考慮, 由于不少游戲后臺(tái)有tick這樣的概念戳护, 需要性能比較高的金抡。python ruby nodejs go 什么的性能不夠瀑焦。 java 的jvm可以勝任, 但是還不夠梗肝。 c++ 本身開發(fā)難度太高蝠猬, 設(shè)計(jì)模式太混亂,也做不大统捶。 個(gè)人推薦可以關(guān)注rust這種高性能語言, 目前還沒有太多的第三方庫(kù)柄粹, 但是比 c++ 好用很多喘鸟。
總結(jié)
- node.js:現(xiàn)有一套完整的棋牌服務(wù)器框架,對(duì)于棋牌游戲后臺(tái)夠用了驻右。
- C++ : 如果有能駕馭 C++ 的開發(fā)者什黑,性能這方面絕對(duì)沒問題。C++ 開發(fā)難度大與其他語言堪夭。
- java: 開發(fā)棋牌游戲性能比 C++ 不差多少愕把,能發(fā)會(huì) C++ 的70% 性能,優(yōu)點(diǎn):上手比較 C++ 容易森爽,jvm 不會(huì)奔潰恨豁,最多拋異常。而 C++ 復(fù)雜的多例如緩沖區(qū)溢出漏洞等問題爬迟。
- 其他語言: 如果有用其他語言開發(fā)過棋牌游戲后臺(tái)經(jīng)驗(yàn)的可參考橘蜜。
最理想的方案應(yīng)該是是用 java 或者 node.js 或 scala 等語言配合 C++。(PS:完全使用 C++ 也是沒有問題的付呕。)