写点什么

Groovy 首次进入 Tiobe 语言排行前 20 名榜单

  • 2013-10-15
  • 本文字数:1715 字

    阅读完需:约 6 分钟

动态 JVM 语言在 Tiobe 的编程语言排行榜中所占的比重较小,但是在过去的一年里,其排名的变化却十分显著。本月,Groovy 首次进入Tiobe 语言排行前20 名榜单。

Groovy 是一种基于 Java 虚拟机的语言, 其拥护者举出了 Groovy 的很多好处,比如提高了开发人员的工作效率,简化了测试并且支持特定领域语言等。然而在 Tiobe 的搜索排行结果中,Groovy 只占了搜索比例的 0.658%。Tiobe 的执行主管 Paul Jansen 表示:

的确,以 0.658% 的比例进入编程语言的前 20 名确实不太常见,但是值得关注的是 Groovy 排名的变动,上个月,它排在第 22 位,而去年它排在第 53 位。人们对于 Groovy 的突然兴趣并没有什么特别的原因,我发现它和 Java 一起更频繁的被用于我们客户的网站上。

本月坐头把交椅的语言依然是 C 语言,C 语言与排名第二的 Java 的差距显著扩大。虽然 C 语言在上个月的搜索引擎平均点击率为 16.975%,Java 的点击率则是 16.154%。但本月的 C 语言点击率指数为 17.246%,Java 则是 16.107%。

Jansen 说:

C 语言领先的原因是因为 C 应用在编程世界的各个地方,尤其是在小型设备上的应用,并且小型设备的数量还在不断增加,现在,即使我的牙刷里都装有软件,而且它很可能是用 C 语言实现的。因此,C 语言的排名稳定了很多年。 Java 已经在其应用的领域中有了更加激烈的竞争。Groovy 将成为那些竞争者中的一员。多亏安卓系统的成功发展,移动开发领域拯救了 Java。我很怀疑 2014 年即将发布的 Java 第 8 个版本能否阻止 Java 普及性的衰落?

在 Tiobe 排行榜中排名第三的编程语言是 Objective-C,其比例是 8.992%。Objective-C 语言最出名的原因是它用于编写运行在苹果公司的 iPad 和 iPhone 设备上的应用程序。而 C++ 排在第四位,其指数为 8.664%,PHP 语言排在第五位,其指数为 6.904%。Tiobe 通过评估各大搜索引擎和网站如谷歌(Google)、必应(Bing)、雅虎(Yahoo)和维基百科(Wikipedia)来确定与每种编程语言相关的技术熟练的工程师、课程和第三方供应商的数量。

虽然 Tiobe 排行榜的 Jansen 认为 Java 的地位在下降,但 Java 在本月中的 PyPl 排行中仍然遥遥领先。PyPl 编程语言排行榜只着眼于谷歌上关于语言教程的搜索,从而给了 Java26.8% 的份额,并远远领先于排在第二位的 PHP,它只占有了 13.2% 的份额。排名第三的是 Python(9.8%),其次是 C#(9.5%)和 C++(9.1%)。C 语言在 PyPl 指数中排名第六(8.4%)。

最近几年,随着“函数式编程”的复兴,各种动态语言都有了显著的应用,Dan Woods 在“从 Groovy 到 Java 8 ”一文中指出:

Groovy 开发人员早已熟知 Java 8 中新引入的概念和新的语言结构了。在 Java 新版本即将推出的增强特性中,有很多是 Groovy 在几年前就已经提供了的。从用于函数式编程风格的新语法,到 lambdas 表达式、collection streaming 和要把方法引用作为一等公民,Groovy 开发人员在未来编写 Java 代码时具有先天性优势。

而 Neal Ford 在“函数式编程为何崛起”一文中也强调,函数式编程的特点之一是存在强大的抽象,它隐藏了许多日常操作的细节(比如迭代)。用抽象来处理迭代等任务,使得需要维护的代码变得更少,因此可能出现错误的地方也就更少。

Java 开发人员习惯于框架 级别的重用;在面向对象的语言中进行重用所需的必要构件需要非常大的工作量,他们通常会将精力留给更大的问题。函数式语言在更细化的级别提供重用,在列表和映射等基本数据结构之上通过高阶函数提供定制,从而实现重用。在面向对象的命令式编程语言中,重用的单元是类以及与这些类进行通信的消息,这些信息是在类图中捕获的。在 OOP 的世界中,鼓励开发人员创建独特的数据结构,以方法的形式附加特定的操作。 函数式编程语言尝试采用不同的方式来实现重用。它们更喜欢一些关键的数据结构(如列表、集和映射),并且在这些数据结构上采用高度优化的操作。传递数据结构和高阶函数,以便 “插入” 这种机制,针对某一特定用途对其进行定制。函数级的封装支持在比构建自定义类结构更细的基础级别上进行重用。此方法的优势之一已经体现在 Clojure 中。最近,库中的一些巧妙创新重写了 map 函数,使它可以自动并行化,这意味着所有映射操作都可以受益于没有开发人员干预的性能提升。

2013-10-15 07:392957
用户头像

发布了 501 篇内容, 共 272.6 次阅读, 收获喜欢 62 次。

关注

评论

发布
暂无评论
发现更多内容

腾讯T4:结合我多年工作经验给程序员的几点忠告,别再埋头苦干了

Java 程序员 后端

聊聊MyBatis的历史,mysql原理详解

Java 程序员 后端

脉脉上瞬间爆火的Java高级面试题被全网封杀,这套资源到底有什么魅力?

程序员 后端

腾讯启动有史以来最大校招:苦逼程序猿,拿头发换了高质量生活

Java 程序员 后端

蚂蚁金服二面被血虐,spring-并发-JVM把我直接问懵,我经历了什么-

Java 程序员 后端

聊聊多线程(一)线程的基础,linux集群架构师

Java 程序员 后端

架构实战营- 模块二作业

危险游戏

架构实战营

腾讯五面、快手三面已拿offer(Java岗位,linux基础教程第二版pdf

Java 程序员 后端

若依集成 WebSocket,linux学习步骤

Java 程序员 后端

蚂蚁金服Java开发岗面试挂了以后,流泪总结了这份大厂常问面试题!

Java 程序员 后端

肝完这份Linux网络编程笔记,感觉2年开发白干了,nginx反向代理原理转发过程

Java 程序员 后端

腾讯T8纯手写66个微服务架构设计模式,全部学会真的“变强

Java 程序员 后端

腾讯技术大牛带你玩转Spring全家桶,赠三本Spring实战篇电子文档

Java 程序员 后端

膜拜!华为内部都在强推的783页大数据处理系统:Hadoop源代码pdf

Java 程序员 后端

蘑菇街Java大牛纯手打肛出的一份多线程文档,请别丢进收藏夹吃灰

Java 程序员 后端

聊聊RabbitMQ RabbitMQ相关面试题,kafka入门教程步骤

Java 程序员 后端

脑筋急转弯:如何用两个栈实现一个队列?用两个队列实现一个栈(1)

Java 程序员 后端

蘑菇街大牛熬夜整理的Java多线程知识点总结(思维导图+源码笔记

Java 程序员 后端

腾讯、美团等六家大厂收到offer,浅谈大数据面试经历,2021Java面经

Java 程序员 后端

获12w+星标的神仙文档再度上榜,简直是一套活生生自学Java的福星

Java 程序员 后端

膜拜!京东T9大牛沉淀三年终于整理出了这份架构核心修炼之道

Java 程序员 后端

自己搭建电商平台初期,原来“超卖,java书籍百度网盘

Java 程序员 后端

老面试官问我:LRU 和 Innodb Buffer Pool 有什么关系?

Java 程序员 后端

聊聊多线程(四)线程安全之AtomicInteger类,最全面试考点与面试技巧

Java 程序员 后端

蚂蚁金服+拼多多+抖音,java从入门到精通第四版视频

Java 程序员 后端

脑筋急转弯:如何用两个栈实现一个队列?用两个队列实现一个栈

Java 程序员 后端

蓦然回首,十余年的程序员生涯最后就只剩下了这些!希望我犯过的错误你不要再犯

Java 程序员 后端

聚焦WAVE SUMMIT 2021,大咖齐聚共研深度学习,关于线程池的五种实现方式

Java 程序员 后端

腾讯T4架构师:刷3遍以下面试题,你也能从小公司成功跳到大厂

Java 程序员 后端

聊聊MySQL主从复制的几种复制方式,上岸蚂蚁金服

Java 程序员 后端

聚焦WAVE SUMMIT 2021,大咖齐聚共研深度学习(1),java在大数据技术中的运用

Java 程序员 后端

Groovy首次进入Tiobe语言排行前20名榜单_后端_崔康_InfoQ精选文章