python編寫的入門簡(jiǎn)單小游戲 為什么C#排名和Python相差越來越大?
為什么C#排名和Python相差越來越大?以下是我的一些個(gè)人觀點(diǎn)。如果我錯(cuò)了,請(qǐng)糾正我:首先,從語言本身的角度來看:C#可以看作是一種編譯語言(嚴(yán)格地說,是一種混合語言),Python是一種解釋性語言
為什么C#排名和Python相差越來越大?
以下是我的一些個(gè)人觀點(diǎn)。如果我錯(cuò)了,請(qǐng)糾正我:
首先,從語言本身的角度來看:
C#可以看作是一種編譯語言(嚴(yán)格地說,是一種混合語言),Python是一種解釋性語言。
C的優(yōu)勢(shì)?速度越來越快。由于編譯只進(jìn)行一次,運(yùn)行時(shí)不需要編譯,因此編譯語言的程序執(zhí)行效率很高。
同時(shí),編譯是一把雙刃劍。如果修改了代碼,則需要重新編譯整個(gè)模塊,并根據(jù)操作系統(tǒng)環(huán)境編譯不同的可執(zhí)行文件。
魚和熊掌不能兼得。Python的優(yōu)點(diǎn)是它具有很強(qiáng)的跨平臺(tái)能力。代碼修改不需要停止。缺點(diǎn)是每次運(yùn)行時(shí)都要解釋。
然而,隨著軟硬件的快速發(fā)展,解釋運(yùn)行時(shí)間與編譯后運(yùn)行時(shí)間的時(shí)差將越來越小,Python語言“優(yōu)雅”、“清晰”、“簡(jiǎn)單”的優(yōu)勢(shì)也越來越明顯。
其次,從類庫生態(tài)的角度來看:
Python有大量的第三方類庫。在其他一些語言中,實(shí)現(xiàn)一個(gè)函數(shù)可能需要幾十到幾百行代碼,而Python可能會(huì)調(diào)用其他語言的下一個(gè)輪子,只需要幾行代碼甚至一行代碼。然而,c#一開始是基于Windows平臺(tái)的,后來可以是跨平臺(tái)的、開源的。第三方類庫的數(shù)量沒有python那么多。
最后,從發(fā)展前景來看:
人工智能,大數(shù)據(jù)時(shí)代已經(jīng)到來,數(shù)據(jù)清洗和分析是python的強(qiáng)項(xiàng),人工智能中有很多基于python的優(yōu)秀框架。如果有人說Python效率低下,如果我的硬件不符合標(biāo)準(zhǔn),我需要效率,那么人們更愿意使用C/C而不是C#。
總之,c和Python之間的排名差距越來越大。
Python編程語言可以用來做大型網(wǎng)絡(luò)游戲嗎?
答案必須是肯定的。我們現(xiàn)在知道的文明,Eve(大型星際飛行沙盒游戲,這是兩年半的新手),以及一些流行的養(yǎng)豬場(chǎng)游戲都是用Python編寫的。Python的優(yōu)點(diǎn)是什么?
首先,我們來談?wù)凱ython擅長(zhǎng)的運(yùn)維級(jí)別的東西(市場(chǎng)上大多數(shù)插件都是用Python編寫的)、所有運(yùn)維工具、項(xiàng)目外圍工具、工具鏈膠層等等。我覺得蟒蛇很適合。它叫膠語(狗頭護(hù)命,人命短,我用Python)
項(xiàng)目組連維護(hù)引擎部分的人力都不需要,因?yàn)橐姹旧肀容^穩(wěn)定。
還有服務(wù)器端:純python。
所以很多代碼可以由服務(wù)器和客戶端共享,特別是數(shù)據(jù)結(jié)構(gòu)定義、序列化等。
效率問題:
運(yùn)營效率在大多數(shù)情況下不是問題,但開發(fā)效率可以提高幾個(gè)數(shù)量級(jí)。
多線程:不需要客戶端邏輯。
游戲項(xiàng)目從來都不是計(jì)算密集型的,邏輯足夠復(fù)雜,多線程會(huì)進(jìn)一步增加復(fù)雜性
最后,python hot是語言原生支持,這意味著實(shí)現(xiàn)成本非常低,風(fēng)險(xiǎn)很低,操作非常方便。