十一个崛起中的开源编程工具

220px-Opensource.svg

开源模式最具影响力的产物莫过于编程工具了。即使在企业专有系统的最深处,我们依然能看到开源开发工具的影子,开源工具甚至经常是开发的主角。原因很简单,开源协议允许用户修改、完善或扩展代码,而且程序员们比谁都清楚如何雕琢吃饭的工具,于是开源编程工具往往能在开源沃土上大放异彩。Infoworld为我们挑选出了十一个比较有代表性的开源编程工具,其中很多刚崭露头角,但都代表着最新的开发趋势。

一、Rhomobile Rhodes

Rhomobile Rhodes

Ruby可能是Github上第二流行的编程语言,但在iPhone程序开发中却并不好使,iOS应用倾向Objective-C,这也是乔帮主当年创造NeXT电脑时的爱好之一。Rhomobile Rhodes是一个开源平台,能捆绑Ruby网站并将它们塞进一个iPhone程序。你甚至能用iQuery Mobile来设计界面布局。这有点像设计Web程序,你唯一需要谨记的是用户使用的是肥大的手指而不是纤巧的鼠标指针。

二、Git

Git

Git 是 Linux Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。虽然很多开发者还在使用CVS或它的子版本,越来越多的项目都在转向Git,Git是作为一个分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理,也非常适合去中性化的分布式团队。如果说CVS是封建君主制,那么Git就是自由民主制的代表。

三、Gerrit

Gerrit

大型开发项目的代码审核工作量越来越大,自动化审核工具的出现可谓必然,Gerrit就是个中翘楚。Gerrit能与Git和Repo搭配,代码审核人员可以将评价发送到Git的中央库,在代码之上建立一个Meta讨论层。

四、Hadoop

Hadoop

Hadoop并不仅仅是一个用于存储的分布式文件系统,Hadoop还包括用来拆分任务分配给不同服务器的工具集,Hadoop被设计用来在由通用计算设备组成的大型集群上执行分布式应用的框架。Hadoop还派生出很多特定功能的工具,例如Mahout是基于Hadoop的数据挖掘工具,有一个可扩展的机器学习框架,能用来分析大数据可能出现的数据模型;Hive是一个数据仓库,可以通过HiveQL进行并行搜索,Hive是处理海量Web日志的流行方法。

五、jQuery

jQuery

jQuery是一款免费且开放源代码的JavaScript代码库,由John Resig创建。授权协议为GPL和MIT许可证双协议。近来很多web开发者在充分了解JavaScript之前就开始直接学习jQuery,因为用iQuery控制文档对象模型(DOM)更加容易。jQuery成功的原因之一是有一个由众多贡献者支持的插件层。这些插件已经形成一个快速演进的生态系统,不断涌现新的网站优化创意工具。

六、Eclipse

Eclipse

提到编程工具就不得不说Eclipse。这是一个相当成熟的IDE,充满活力的插件生态系统支持几乎所有重要的编程语言,PHP、Ruby、Python和C都可以在Eclipse里茁壮成长。

七、Firebug

Firebug

程序开发人员越来越多地从浏览器内置开发工具中获益,Firefox的插件Firbug就是个中典范。Firebug是Firefox下的一款开发类插件,现属于Firefox的 五星级强力推荐插件之一。它集HTML查看和编辑、Javascript控制台、网络状况监视器于一体,是开发JavaScript、CSS、HTML和 Ajax的得力助手。Firebug如同一把精巧的瑞士军刀,从各个不同的角度剖析Web页面内部的细节层面,给Web开发者带来很大的便利。

八、Preprocessors/CoffeeScript

Preprocessors

CoffeeScript (GitHub repo) 是一个使用纯Ruby编写的新编程语言,创建者 Jeremy Ashkenas戏称它是- JavaScript的不那么铺张(买弄)的小兄弟。因为CoffeeScript会将Ruby编译成JavaScript,而且大部分结构都相似,但不 同的是,CoffeeScript拥有更严格的语法,能将JavaScript的优点以更简洁的形式表达出来。

九、Openvidia

Openvidia

GPU也就是我们平常所说的显卡核心,往往是计算机游戏的代名词。但科学家们发现那些用来玩极品飞车的显卡其实也是非常强悍的并行处理器,大量科学难题例如疾病模拟研究都可以分解成很多并发任务,这方面是显卡GPU的拿手好戏,只需要一个能在单GPU或多GPU的图形硬件上实现了计算机视觉算法——OpenVIDIA。OpenVIDIA是一个基于Opengl和Cg实现的计算机图形学相关的库,提供了包括图像识别和搜索等多种功能。很快将要发布支持 OpenGL 和 Direct Compute API 的例程。

现在,程序员们有了一个堂而皇之的理由让老板给配一个强悍的显卡。

十、NoSQL

NoSQL

NoSQL是一种快速、便携的关系型数据库管理系统,除内存和处理器速度外不受任意限制。NoSQL符合关系模型这两年的发展势头很猛。最新出现的一些工具服务使得在云计算中部署NoSQL变得更加容易。包括亚马逊的SimpleDB、DataStax支持的Cassandra和MongoDB,这个名单还在不断加长。Membase 也是 NoSQL 家族的一个新的重量级的成员。

 

十一、CMS/Drupal

Drupal

Drupal是一个开源的内容管理系统(CMS) 平台,用PHP写成的。主要用于构造提供多种功能和服务的动态网站,这些功能包括用户管理(UserAdministration)、发布工作流 (Publishing Workflow)、讨论、新闻聚合(NewsAggregation)、元数据(Metadata)操作和用于内容共享的XML发布。Drupal有一 个优秀的模块化结构,提供了许多模块,包括短消息、个性化书签、网站管理、Blog、日记、电子商务、电子出版、留言簿、Job、网上电影院、论坛、投票 等模块。并且Drupal模块的下载、安装、定制非常方便。

Via Infoworld

第一时间获取面向IT决策者的独家深度资讯,敬请关注IT经理网微信号:ctociocom

   

除非注明,本站文章均为原创或编译,未经许可严禁转载。

相关文章:


关于作者

IT到底是重要呢还是重要呢还是重要呢

X