自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

二十年前的老游戲,為何再次讓無(wú)數(shù)程序員癡迷不已?

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

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

圖片圖片

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

聽(tīng)起來(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)買(mǎi)一艘飛船:

curl --request POST 
--url 'https://api.spacetraders.io/v2/my/ships' 
--header 'Authorization: Bearer <token>' 
--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 <token>'

賣(mài)貨賺錢(qián):

curl --request POST 
--url 'https://api.spacetraders.io/v2/my/ships/ONLYLIUXIN/sell' 
--header 'Authorization: <token>' 
--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ì)這么玩呢?

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

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

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

圖片圖片

有人做出了文本化的客戶(hù)端

圖片圖片

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

圖片圖片

有人用React做了客戶(hù)端:

圖片圖片

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

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

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

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

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

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

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

把這個(gè)客戶(hù)端寫(xiě)完,對(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,玩家需要編寫(xiě)自己的機(jī)器人坦克,定義其行為和戰(zhàn)斗策略,在一個(gè)虛擬的戰(zhàn)場(chǎng)上與其他玩家編寫(xiě)的機(jī)器人對(duì)戰(zhàn)。

圖片圖片

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

相比而言,SpaceTrader API更加開(kāi)放,更加有趣。

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

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

責(zé)任編輯:武曉燕 來(lái)源: 碼農(nóng)翻身
相關(guān)推薦

2015-08-17 09:45:15

開(kāi)發(fā)游戲

2015-08-17 08:56:45

二十年前游戲開(kāi)發(fā)開(kāi)發(fā)

2020-02-11 15:32:59

2015-10-27 11:58:38

蘋(píng)果微軟

2020-07-12 15:20:56

互聯(lián)網(wǎng)數(shù)據(jù)技術(shù)

2014-10-30 10:09:44

程序員程序設(shè)計(jì)師

2015-03-06 09:36:42

雅虎移動(dòng)

2011-08-22 10:04:31

LAMP架構(gòu)

2020-01-13 10:23:08

程序員技能開(kāi)發(fā)者

2011-08-22 13:23:38

AndroidLinuxLinux內(nèi)核

2013-03-15 16:39:20

BIM

2014-07-31 13:41:36

程序員

2012-02-07 09:58:27

2014-08-29 10:21:15

APM應(yīng)用性能管理

2020-05-25 14:58:36

程序員自動(dòng)化編碼

2019-10-11 18:24:02

網(wǎng)站門(mén)戶(hù)網(wǎng)站互聯(lián)網(wǎng)

2015-05-28 11:01:12

2014-03-27 11:10:46

程序員老程序員

2010-05-07 10:40:02

惠普ProLiant云計(jì)算
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)