代碼片段是開發(fā)者每天都要面對的東西,甚至有時候查找代碼片段的時間比編寫新代碼的時間還要多。因為如果找到能夠在項目中直接使用的代碼片段,這意味著你無需絞盡腦汁“重新發(fā)明輪子”,且可以令工作效率成倍提升。
但是互聯(lián)網(wǎng)中存在大量的代碼片段,它們分布在成千上萬個的網(wǎng)站中,并且你無法確定搜索到的這些代碼能否成功運行,是否符合你的需要。
Runnable的誕生就是為了解決這一問題。Runnable是一個一站式的代碼片段集合網(wǎng)站,你不僅可以搜索代碼,還可以編輯、運行這些代碼片段,以確保它們的正確性與可用性。
如今開發(fā)者花費在編寫新代碼上的時間越來越少,而更多地時間則用來在網(wǎng)上搜索現(xiàn)成的代碼片段,然后重新進(jìn)行組裝。目前的技術(shù)日新月異,即使是專業(yè)的開發(fā)人員,也免不了在網(wǎng)上搜索代碼片段來了解新的知識。
目前網(wǎng)上有幾十萬的組件和服務(wù)相關(guān)的代碼,比如開源搜索引擎 Ohloh提供了20,656,731,705行公開代碼,API跟蹤網(wǎng)站 Programmable Web提供了超過1000個公開可用的API。這造成了一個很大的查找問題。而Runnable可以讓你很方便地查找、運行和測試代碼,大大簡化了工作量。
在Runnable中,你可以根據(jù)問題進(jìn)行搜索,找到代碼片段后,你還可以進(jìn)行編輯、運行,看它是否符合項目需要。
Runnable中的代碼片段按照語言分類,包括PHP、Node.js、Python、JavaScript、ASP.NET、Ruby on Rail以及相關(guān)的框架。
除了語言本身外,Runnable還專注于API以及 MySQL、 MongoDB、 redis和 前端/后端服務(wù)方面的代碼。比如有一組示例可以展示如何和PayPal API使用。一些針對其他流行API的例子也正在整理中。
這些代碼片段目前由團(tuán)隊中的6個人從一些可靠網(wǎng)站中搜集并進(jìn)行篩選。聯(lián)合創(chuàng)始人Yash Kumar表示未來還會加入C++,但是時間還不確定。
Runnable的優(yōu)勢
在Runnable出現(xiàn)之前,開發(fā)者可以使用 Github Gist、 koders、 grepcode、 antepedia和Google代碼搜索( 已經(jīng)關(guān)閉)來搜索代碼片段,也可以使用 Codepen或 jsfiddle在線運行HTML/JS/CSS代碼。
但是 Runnable將這些網(wǎng)站的功能集合到了一起,將網(wǎng)上質(zhì)量參差不齊的代碼進(jìn)行了篩選,并提供了運行、測試功能。除了可以在線運行HTML/JS/CSS代碼外,還增加了更多的語言。
Runnable的發(fā)展規(guī)劃
Runnable的目標(biāo)是成為開發(fā)者查找代碼片段的中央庫。實現(xiàn)這一目標(biāo),需要網(wǎng)站中有盡可能多的代碼片段,因此,Runnable還計劃成為開發(fā)者存儲代碼示例的默認(rèn)網(wǎng)站。
目前Runnable中大約有1000個代碼片段,Kumar對網(wǎng)站發(fā)展很有信心,他表示這一數(shù)字將在短短幾個月內(nèi)增長10倍。
目前團(tuán)隊還在篩選網(wǎng)上的代碼,他們希望以后有更多的開發(fā)者能夠參與提交代碼。他們表示,在Runnable上發(fā)布代碼就像在Medium上寫一篇博客一樣容易。
未來,Runnable團(tuán)隊計劃增加更多的社區(qū)服務(wù)功能(比如在代碼編輯器上增加評論系統(tǒng))、增加更多的語言和框架代碼。
到目前為止, Runnable團(tuán)隊已經(jīng)拿到一筆小額種子投資。未來,團(tuán)隊希望能跟面向開發(fā)者的公司合作,可以通過付費讓這些公司的代碼突出顯示。
一些質(zhì)疑聲音
盡管大部分開發(fā)者表示看好 Runnable,但是也存在一些質(zhì)疑聲音。
開發(fā)者TheBrewDawg表示,在Google中搜索一個問題,大部分時候答案都在stackoverflow.com中,這個網(wǎng)站可以幫助開發(fā)者解決一些非常棘手的、特定的問題。而對于這種問題,似乎Runnable很難給出很好的搜索結(jié)果。
對此Kumar表示,Stackoverflow是一個偉大的QA資源網(wǎng)站,但Runnable是一個代碼片段服務(wù)平臺,目標(biāo)跟 Stackoverflow完全不同,也不會朝 Stackoverflow的方向發(fā)展。
還有一些開發(fā)者擔(dān)心代碼片段的質(zhì)量問題,比如有些代碼是可讀的,并且有很好的注釋,但是存在幾個關(guān)鍵的錯誤,如果直接復(fù)制到自己的項目中,可能會導(dǎo)致一些嚴(yán)重的錯誤。如果沒有某種形式的社區(qū)審查過程,很難讓人信任并下載這些代碼。以目前這種狀態(tài),Runnable和其他一些代碼片段網(wǎng)站沒有什么區(qū)別。
對此Kumar表示, Runnable才剛剛開始,未來計劃添加投票和評論功能,并鼓勵開發(fā)者在Runnable上運行測試代碼,并進(jìn)行反饋,在不久的將來,代碼的整體質(zhì)量會有很大的提升。
來源網(wǎng)站: Techcrunch Runnable