如今的软件开发不仅是代码编写,而且也包括代码混搭(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管理的网站上。谷歌是一个巨头,谁知道他们会用它做什么呢。”
随着更多的开发者希望迅速为多种移动设备创建优质的产品,这种管理、跟踪代码并重复使用它们的敏捷开发模式将继续扮演重要角色。 |