日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
二十年前的老游戲,為何再次讓無(wú)數(shù)程序員癡迷不已?

SpaceTraders是個(gè)古老的策略類游戲,運(yùn)行在古老的Palm OS和Windows Mobile PDA上。

圖片

游戲開始時(shí),玩家將獲得一艘飛船,然后駕駛它在各個(gè)星球之間穿梭,挖掘星球礦產(chǎn),低買高賣賺取利潤(rùn),賺了錢可以升級(jí)飛船,購(gòu)買更大貨倉(cāng),更先進(jìn)的武器, 因?yàn)樾请H航行中可以會(huì)碰到海盜,玩家需要決定是逃跑,交涉還是戰(zhàn)斗......

聽起來(lái)并不是非常吸引人,對(duì)吧?

但是,有個(gè)叫spacetraders.io的網(wǎng)站,把SpaceTraders玩出了新高度:它把這個(gè)游戲給API化了!

換句話說(shuō),游戲中的所有動(dòng)作,都可以用API的方式來(lái)調(diào)用!

比如,注冊(cè)一個(gè)玩家,可以用CURL發(fā)出這樣的請(qǐng)求:

curl --request POST 
--url 'https://api.spacetraders.io/v2/register' 
--header 'Content-Type: application/json' 
--data '{
"symbol": "liuxin",
"faction": "COSMIC"
}'

購(gòu)買一艘飛船:

curl --request POST 
--url 'https://api.spacetraders.io/v2/my/ships' 
--header 'Authorization: Bearer ' 
--header 'Content-Type: application/json' 
--data '{
"shipType": "SHIP_MINING_DRONE",
"waypointSymbol": "X1-DF55-69207D"
}'

給船補(bǔ)充燃料:

curl --request POST 
--url 'https://api.spacetraders.io/v2/my/ships/ONLYLIUXIN/refuel' 
--header 'Authorization: Bearer '

賣貨賺錢:

curl --request POST 
--url 'https://api.spacetraders.io/v2/my/ships/ONLYLIUXIN/sell' 
--header 'Authorization: ' 
--header 'Content-Type: application/json' 
--data '{
"symbol": "IRON_ORE",
"units": "100"
}'

我這里只列舉了一小部分,除此還有導(dǎo)航、停泊、測(cè)繪、卸貨、查看市場(chǎng)、完成合約等各種各樣的API。

圖片

這些API可不僅僅支持一個(gè)人玩兒,而是支持多人在線的交互。

即使是多人在線游戲,通過(guò)命令行,用API的方式來(lái)玩兒這個(gè)游戲也太無(wú)趣了吧?

又慢又無(wú)聊,誰(shuí)會(huì)這么玩呢?

但是,一旦你把視野打開,就會(huì)發(fā)現(xiàn)這是個(gè)非常棒的創(chuàng)意!

因?yàn)槿魏纬绦騿T,不管他是使用什么編程語(yǔ)言,都可以通過(guò)代碼調(diào)用這些API,寫一個(gè)SpaceTraders的客戶端應(yīng)用程序,和其他人進(jìn)行交互。

有很多人已經(jīng)這么干了,有人做出了漂亮的圖形化客戶端:

圖片

有人做出了文本化的客戶端

圖片

有人實(shí)現(xiàn)了Emacs Lisp 客戶端

圖片

有人用React做了客戶端:

圖片

那開發(fā)這些“亂七八糟的”客戶端有什么用處呢?

最大的用途就是:學(xué)習(xí)編程。

我們每個(gè)人在學(xué)習(xí)編程中都會(huì)遇到這樣的問(wèn)題:學(xué)了很多語(yǔ)法,寫了不少代碼片段,但是越學(xué)越?jīng)]意思,因?yàn)榫幊逃泻芏嘀R(shí)點(diǎn),很枯燥,很無(wú)聊,沒有真實(shí)項(xiàng)目刺激,缺乏動(dòng)力。

現(xiàn)在有了SpaceTraders API,事情就不一樣了。

假如你想學(xué)習(xí)Python,你完全可以用Python 代碼去調(diào)用這些API,實(shí)現(xiàn)一個(gè)Python版的SpaceTraders客戶端。

為了盡快實(shí)現(xiàn)這個(gè)游戲的注冊(cè)、飛行、挖礦、戰(zhàn)斗,你不得不去做界面設(shè)計(jì)、架構(gòu)設(shè)計(jì)、類的設(shè)計(jì),和服務(wù)器API的交互,這個(gè)過(guò)程逼著你不得不接觸到Python的各個(gè)方面。

編程的過(guò)程,結(jié)合了游戲的過(guò)程,有趣,不枯燥。

把這個(gè)客戶端寫完,對(duì)Python恐怕也熟悉個(gè)七七八八了。

難怪網(wǎng)友反饋說(shuō):我在48個(gè)小時(shí)內(nèi)學(xué)到的東西比一個(gè)月的在線課程還多!

強(qiáng)烈建議那些正在學(xué)編程的同學(xué)看一看這個(gè)游戲,調(diào)用API去玩一玩。

這個(gè)SpaceTraders API讓我想到了早些年流行的Robocode,玩家需要編寫自己的機(jī)器人坦克,定義其行為和戰(zhàn)斗策略,在一個(gè)虛擬的戰(zhàn)場(chǎng)上與其他玩家編寫的機(jī)器人對(duì)戰(zhàn)。

圖片

只不過(guò)Robocode必須由Java編寫,限制了用戶的群體。

相比而言,SpaceTrader API更加開放,更加有趣。

“寓教于樂”可以讓人輕松學(xué)習(xí),不得不說(shuō),在這方面,國(guó)外程序員的創(chuàng)新和腦洞確實(shí)比較多,走到了我們的前面,值得我們學(xué)習(xí)。

如需轉(zhuǎn)載,請(qǐng)通過(guò)作者微信公眾號(hào)coderising獲取授權(quán)。


文章題目:二十年前的老游戲,為何再次讓無(wú)數(shù)程序員癡迷不已?
網(wǎng)頁(yè)路徑:http://www.dlmjj.cn/article/dposjhc.html