2016-03-01 58 views
0

我知道這不是一個很好的問題,因爲人們可能會給出偏見的答案,但想知道是否有人可以列舉使用PHP和NodeJS作爲後端語言的優點和缺點開發一般的基於文本的在線RPG。PHP vs NodeJS - 基於文本的RPG

該RPG會將其數據存儲在MySQL數據庫中,並且通常會有10-20個玩家同時在線。

從長遠來看,您認爲哪種語言更適合?

我有幾年的PHP經驗,幾乎沒有任何NodeJS的經驗。看起來PHP與MySQL有很好的協同作用,但我一直在聽到關於NodeJS的好消息。另外,我應該採取什麼設計方法(即MVC)。

如果能聽到兩種語言都有豐富經驗的人,那該多好。

+0

節點不是一種語言。既然你熟悉PHP,幾乎沒有任何關於Node的東西,對你來說不是明顯的選擇?既然沒有提及RPG的挑戰,那麼我能看到的唯一問題就是你能夠如何從數據庫中存儲和獲取數據。 PHP不能比Node更好地處理MySQL,它們都使用了一種有效的方式來維護MySQL連接,因此在向MySQL發言時幾乎沒有區別。 –

回答

1

Node.js不是一種語言。該語言是Javascript。

兩者都是非常好的選擇,主要的區別在於與nodejs相關的所有異步方法。這增加了性能和可擴展性,但調試和更難以編寫和閱讀(瞭解回調地獄)。如果您希望獲得人們通常將nodejs加入的優勢,則需要非常好地獲得異步概念。

這就是說,你可以用PHP進行異步編程,但它不太常見。

所以,如果你對PHP有信心,你需要快速的結果或不想實驗去用它。如果你想學習或試驗,請和Node一起去。

如果限制是10-20同時玩家,表演不應該是這樣的問題。

關於設計方法,我會留下最後的細節。 MVC是很常見的,你可能會使用類似的東西來組織你的代碼,但是選擇取決於很多因素,你應該在定義和限制你的應用程序的用例/故事後考慮這個問題。

+0

承諾也是到達回調地獄的替代方案;) – httpNick

+0

它們是,也是應該使用的,但是它們比普通的舊同步函數編寫,閱讀和交互更復雜。真正的酷炫的東西將是異步功能。我認爲他們將進入ES6。 – xabitrigo