來源:騰訊科技
如今的軟體開發不僅是程式碼編寫,而且也包括程式碼混搭(mashing up,把現有的程式碼片段連線起來)。一些業界人士稱我們進入了 Github 時代。
Github 是開原始碼庫以及版本控制系統,目前擁有 140 多萬開發者使用者。隨著越來越多的應用程式轉移到了雲上,Github 已經成為了管理軟體開發以及發現已有程式碼的首選方法。
Github 網站首頁
在最近召開的 GeekWire 峰會上,前微軟首席軟體架構師雷·奧茲(Ray Ozzie)對 GitHub 本身以及其代表的開源開發模式表示了熱烈支援。
奧茲說:“開發過程比以往任何時候都更加涉及‘組裝’了,因為在 GitHub 上或其它地方有很多元件,你可以非常、非常快速地把它們組裝成一個有效的解決方案。”儘管微軟極為反對開放原始碼,而且仍然是商業性的專有軟體公司的一個堡 壘,但奧茲在任時微軟立場已經軟化,所以他的發言並不是那麼讓人震驚。
使用者獲益
GigaSpaces 的產品管理副總裁尤里·科恩(Uri Cohen)是 Github 的常客,他說 Github 最吸引人的地方是開源開發,不過 Github 上也有一些商業程式碼。
彼得·埃迪(Peter Eddy)是波士頓的一位程式設計師,他稱公司通常需要在“自建還是購買”中做決定,而 Github 為公司增加了一個“回收處理”的新選項。
Github 網站上的一位開發者頁面
埃迪說,Github 就像一個免費的圖書館或一個廉價的託管服務,開發者可以在這裡找到他們需要的幾乎所有功能。這意味著重複使用程式碼,而不是大量編寫程式碼。
十年前,開發人員可以使用免費的作業系統和一些簡單的資料庫。五年前,他們可以用上“非常不錯的免費資料庫”和“相當好的”免費 web 框架。埃迪認為,作為這個趨勢的延續,“現在有大量不錯的,甚至是非常棒的庫和框架,可以用來開發你能想象到的幾乎任何東西,比如谷歌風格的 MapReduce、自然語言處理、統計工具、通訊匯流排、VoIP 伺服器、機器學習等等。”
埃裡克·芬伯格(Eric Fernberg)是 SignedOn.com 的一名開發者,他說,Github 也讓公司重複使用內部程式碼變得更容易了:“我們公司的所有東西都是模組化的,因此對每個客戶,我們都可以重複使用一些程式碼片段。”
獨特優勢
GitHub 庫是可搜尋的,它定期根據人氣給專案和庫排名。GitHub 給開發者提供一個地方,讓它們可以集中管理程式碼本身和相關材料。
“你不僅在原始碼方面,而且也在文件以及任何跟專案有關的東西上跟社群合作,這是一個巨大的加分項,”科恩說,“我們可以與使用者共享文件,可以開啟它、改變它,並把它捐獻出去。這是一個很大的優勢。”
市面上也有 Bitbucket.org 和 Google Code 這樣的程式碼庫,但很多開發者都認為 GitHub 更好。正如科恩所說:“問題是你願不願意把你的工作暴露在一個由 Google 管理的網站上。谷歌是一個巨頭,誰知道他們會用它做什麼呢。”
隨著更多的開發者希望迅速為多種移動裝置建立優質的產品,這種管理、跟蹤程式碼並重復使用它們的敏捷開發模式將繼續扮演重要角色。