當今世界上絕大多數游戲都是C++寫的,為什么要說不呢?
要做什么?寫游戲。
寫游戲首先要考慮些什么?做什么樣的游戲,圖形、音效、游戲邏輯如何實現。
用C++要先考慮什么?定義跨平台數據類型抽象,實現常用集合類,設計宏實現RTTI,寫一個支持Unicode並可以和其他多種字符串類型互相轉換的字符串類,自定義內存分配器,寫個shared_ptr,組織預編譯頭文件,設計實現Object基類以處理跨DLL內存管理等問題……
那么這些和做游戲有什么關系?不做好這些就很難開始寫游戲。
做這些要話多少時間?很多時間。
就是這個原因了,得花很多時間用來關心解決語言本身的不足,而不是要做的游戲本身。尤其是人們多有完美主義傾向,這些基本問題每個都可以發掘出更深層次的問題,進行更進一步的優化,進一步耗費寶貴的時間。這也可以解釋為什么有那么多的引擎、引擎基礎存在,因為時間都花在底層上了。
新技術出現的快,游戲架構更新的也快,補丁摞補丁是游戲行業的常事,補不了了就得換新的,哪管你是不是用神聖的C++寫的。游戲開發人員屬於消耗品,所以想開一點,人生苦短,及時行樂。有句話叫“Good managers don't torture their programmers with bad tools”,同理,聰明的程序員不用C++折磨自己。非得用的話,也盡量找個現成的類庫,除非是要專研底層技術。
http://blog.csdn.net/nightmare/article/details/5478423
