说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

Github项目中使用率最高的Java/Ruby/JS库

HTML文档下载 WORD文档下载 PDF文档下载
每个成功项目的背后都离不开一些库的支持,本文评选了Github上的三强语言Java、Ruby、JavaScript所开发的流行项目,并从这些流行项目里评选出最受欢迎的库。

提到开源,相信不少人会想到Github,目前它的托管数量已经超过了一百万。上面几乎涵盖了各种类型的项目库,当然,参与贡献的开发者数量也是极多。因此,它也提供了相当多样的数据资源,一些研发人员利用这些数据来研究开/闭源、企业软件等发展趋势。

开发者每天都会面对一些软件开发库或开源库,在使用一些旧库的同时,每天都会出现许多新库,开发者如何在它们之间做出选择,找出适合自己的软件开发库呢?社区的用户数和贡献者的活跃度对一个库的成功起着非常关键的作用,这也是开发者选择的关键。对于一个开源库来说,开发者很容易知道它的贡献者数量,但一般很难知道有多少开发者使用它。本文作者采用具体的数据来解答这个问题。

作者选择了排名前三的编程语言库来进行分析,这三门语言分别是Java、Ruby、JavaScript。分别分析了它们当中最流行的10000个项目(例如Github仓库),并且从中选出最受这些项目喜爱的库。此外,他们还分析了排名前100库所使用的组件、组合种类(例如测试、数据库、UI等等),并且看看这些语言直接的不同之处。

下面分别列出了10000个Java、Ruby、JavaScript项目中使用率最高的10个库,并把一些值得特别关注的库和趋势进行总结和分析。

Java

注:点击链接可获得关于Java库的全部分析结果。


Java项目中排名前十的库

Guava是Google的开源库,目前,Google代码已成为主流,虽然Spring和Apache库非常普遍,在前100个项目当中,它们占到了高于25%的平均比例。但有些惊讶的是谷歌的一些库,例如GWT和Guava,Guava成功的排在了第7位,在Java的10000个项目中,有4.8%的项目使用了它。

另外值得大家关注的一个库是 ElasticSearch,它是一款非常强大的搜索和数据分析引擎,目前在Java调查的项目里,有110个项目使用了该库。

数据处理占据了Java很大一部分,其中主要集中在数据管理。而在大数据方面,Hadoop处于领先地位。在被调查的10000个项目中,有168个项目采用Hadoop,最知名并且也是最常用的SQL数据库之一MySql被225项目采用,另一个知名的关系数据库PostgreSQL则是121个。

测试驱动开发在Java和Ruby中占据很大一部分,在这三门语言中,测试都扮演着非常重要的角色,在Java和Ruby中,40%-50%的项目都使用了自动测试框架进行项目复查工作。

Mocking是一种在测试和开发中模拟真实世界对象的一种方法,目前该方法也得到了很多项目组的追捧,其中Java中有10%、Ruby里有7%的项目在使用该方法。

Ruby


Ruby项目里排名前十的库

在所调查的10000个Ruby项目中,虽然NoSQL数据库在这些天风靡一时,但关系数据库SQL在Ruby世界里仍在占主导地位——Sqlite、postgreSQL、在研究的项目中,有25%的项目使用MySql,而Redis和MongoDB仅占3%,其中有185个项目采用MongoDB作为数据库,这个数据是Java项目里的两倍。 

在Web开发方面,尽管越来越多的新框架在近几年得到追捧(例如有570个项目采用Sinatra),但Rails仍然是Ruby的中心,有超过7000个项目使用它。Web服务器方面,Thin(有487个项目)使用率则是Unicorn的2倍。CoffeeScript似乎很受Ruby开发者的欢迎,拥有超过1000个项目使用。 

Twitter在Ruby中也有不小的影响力,在百强项目里,有3个库和382个项目使用它们。这是相当庞大的,但仍然没有谷歌在Java里的影响力大。

JavaScript


JavaScript项目中排名前十的库

JavaScript可以应用和支持更多类型的应用程序,但一些新特性和功能并未在语言和标准库上得到应用。因此,在研究中我们也看到,在TOP100项目里,有超过50%的框架被JavaScript库所使用。

Grunt自动化框架在JS开发中扮演着非常重要的角色(尤其是node.js),在百强库当中,有23%的库使用它。

在JavaScript库里面,有一大部分的库是用来进行网络和客户端/服务端通信的,数量是Java和Ruby里的3倍。这很有可能是因为Web开发人员不得不在浏览器端处理一些支离破碎的生态系统和相对较早的服务器堆栈。而对于服务器端Web开发,Node.js的express框架占据领先地位,有631个项目采用它进行研发。 

努力朝着结构化方向发展,JavaScript在语言扩展上有很多优势,在调研的1万个项目中,有844个项目具有这一功能。此外,JavaScript还是一门非常灵活的语言,开发者也正在使用更加结构化的方法来塑造它。Underscore.js库提供了函数编程语言功能,类似于一些结构化的语言,例如Scala,它在此次排行中处于第五位。(责编:王果)

最后 附上相关数据文档。

来自: THE TAKIPI BLOG

腾讯X5浏览服务正式开放 30多款APP成为首批受益者 Node.js设计经验谈 LeanKanban University首位中国认证讲师路宁:看板会为更多国内企业带来深刻变革 环信IM沙龙纪实:无分享不IM,无社交不未来 【工具推荐】ESL:更简洁、更高效的标准加载器 【先锋】亲加通讯云:以云服务模式为App提供社交引擎 2014中国移动开发者大调查第一批获奖名单大曝光 移动开发云服务AVOS Cloud宣布完成A轮融资 Uplinq2014:人工智能嵌入硬件 万物互联建生态 Uplinq2014:基于Vuforia的新奇智能玩具 一应俱全!开源跨平台3D应用开发框架Minko 【线下技术培训】敏捷测试实战解析和系统方案 《近匠》Ping++:简单、高效、第三方支付SDK 有关编程的12个猜想 【问底】王帅:深入PHP内核(二)——SAPI探究 【CTO俱乐部走进汽车之家】活动图文实录 只为逼格?超薄便携式无线充电设备Deuce 戴尔未来重心:云计算、大数据、移动互联与安全 【讲师】搜狐于顺治:Container在搜狐PaaS平台中的应用实践 【先锋】从代码层诊断,云端OneAPM平台让开发者专注开发 阿里将推无线领域重磅计划 阿里百川无线开放大会揭晓 提升网站转化率的四步优化方案 开发者应该了解的API技术清单! 【讲师】腾讯刘永峰:Docker时代,公有云面临的挑战和机遇 移动开发工具服务商Mob推出免费短信验证码SDK 遇见他们,MDCC 2014移动开发者大会嘉宾揭秘 揭秘全球最小无线耳机背后的技术 《最终幻想》之父访谈:我为何转战F2P游戏开发 寓教于乐 11款最适合教儿童编程的学习工具 苹果iPhone6获工信部许可 本月17日在内地发售 使用Redis之前5个必须了解的事情 tocamt服务的自动启动和手工启动有何区别? 请教:金山词霸的屏幕取词用的是什么技术。是怎么实现的 用Delphi的朋友,公布我们的MSN帐号,大家互相学习好吗? 哪里有weblogic6.1 sp4 下载!!! window.print怎样才能不在页底打印页面的标题地址信息? 我的显示器怎么会有重影?? 请问如何用jsp实现如vb中的SSTab控件那样的效果? 有没有消息分数线什么时候出来啊??? 源码大放送2(注:适合新手以及和我一样懒的人!! ~v~) UTF-8?将字符转成UTF-8用PHP如何做??急? 类似matlab中simulink的界面如何实现?散分 关于分页显示的问题 截获getprocaddress遇到的问题. 請各位幫幫忙,關於剛開始安裝的問題: sql 查询? 怎样判断程序是否在运行,如果运行怎样关闭他呢? POP3邮件接收问题!!! 几个月来一直未解决的小BUG(多文档的标题) PB中怎么样定义游标变量 本人欲求计算机画图中的橡皮筋技术画线例程,请大家指教并加相关注释,先帖出代码都得分. 只为试一下新下的放分机,10钟后结贴 急急急!!!!!!!!!如何用ADO连接Sybase数据库? 这是广告,不知道是不是真的,没兴趣不要看啊 求购工程设计院信息管理集成系统的设计文档与源代码 想通了过问题,散分 那位大哥做过网络规划,系统集成方面的,我想电话求教,能帮个忙吗??? how to get chinese type method? 如何响应键盘事件? (7)今夜狂放1000分,8:15结帐:)需要分的来吧:)前600分已经放出。。 小问题,恳请帮忙,在线等候! 如何实现两个数据库之间的实时通讯? 高分请教,如何用JAVA实现浏览局域网里的其他机子的目录。在线等待 主板上是USB1。0的接口用USB2。0标准的移动硬盘,有办法安装使用吗?(在线等候) 探讨一下JSP的多国语言实现 这样一个功能怎么实现(在线等待) 调用COM时出错~~~ 问答:仅知类D是由类B按某种形式派生得到的,举一例说明,D不一定是B的子类型。 小问题,帮个忙 刚用C#开发了一个游戏,大家多提意见!有分 关于插入数据的问题 请问:谁有Delphi 5.x分布式多层应用电子商务篇的下载地址, pdf格式 Applet嵌入HTML中的问题!急!急!急! 小小问题,散分100!!!!!!!!!!!!你心动了吗? 如何在程序运行时让用户选择按照哪一列进行分组? 文件合并问题? 帮帮忙 请教如何删除控件 圈点“英雄”,针砭实弊 谁能帮我解决IMail不能外发邮件的毛病? vb请教 如何设置remote_login_passwordfile为exclusive 戛纳基努身材"走样&quo《富春》爆林志玲尼姑造型 牺牲秀发以陈数一家三口穿亲子装温馨郊游 儿子顽王学兵携小女友看话剧 戴情侣墨镜回避孙俪性感裸肩连裤装抢镜 吴秀波造型绅HIT-5新专辑写真曝光 造型国际范邓萃雯遭TVB下封杀令 网友:剧烂还戛纳女星走光照 范冰冰受惊花容失色名模妮娜热辣登杂志 大秀性感身材火力郭晶晶孕态初显:腹部明显隆起 围巾掩卡黛珊脱衣露底秀大肚 怀孕致身材走形娱乐圈女星倒追事件盘点 唐嫣曾为邱泽盘点大胆玩挤奶诱惑的十大胸猛女星高群书忘我挖鼻孔 赴饭局和管虎聊HI郭敬明《小时代》记者会 杨幂双眼皮贴刘烨豪掷800万给谢娜 曝光:中外明林峰带吴千语见家长 典礼上当众甜蜜热实拍日本地下夜店内景 性感女郎奢靡淫36岁范晓萱青春逼人 如同18岁美女古天乐向陈乔恩派定心丸 亲口拒绝吴君米兰达·可儿不慎走光 胸部露出春光外城管行政执法大队党政办百里毅行 关爱孤儿白沙桥校方认为:这套眼保健操更卫生华数传媒再次入选最能藏的狐狸,要数浙江的叶某临安过年,土特产年货置办起来菜鸟遇上菜鸟人气还不如他们的“圣旨文件夹”小寒运动,首推跳绳杭州:90岁奶奶起诉孙子霸房不还 孙浙江省海外留学人员创业园(下沙)杭二中、学军、杭高要来萧山招生啦发展引导资金开始申报了毕业了,他们的校园爱情依然盛放藏在名人旧居中的餐厅但也不能全靠外援冰芭的小秘密,让“天鹅”告诉你一年种出10亿元人行道违章停车、阻挡盲道要被罚老有所乐:打牌、下棋、锻炼,最开心有
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘