写点什么

TIOBE 语言流行度排行显示混合编程时代到来

  • 2008-01-27
  • 本文字数:1342 字

    阅读完需:约 4 分钟

在编程语言流行度的评估方面, TIOBE 一直是最为权威的机构之一。不久前该机构将 Python 评为 2007 年度编程语言

Python 被选为 2007 年度语言。最终,Python 一年来取得了最大的增长 (2.04%)。没有清楚的原因为什么 Python 在 2007 年取得了巨大的进步。上个月 Python 在历史上第一次超越了 Perl,这是 Python 成为“工业标准”系统级粘合剂语言的信号。它尤其受到系统管理员和构建管理人员的喜爱。随着 Python 3 的推出,Python 在 2008 年继续上升的机会很大。

对比 Python 的快速增长,曾被评为 2006 年度编程语言的 Ruby 在 07 年中的流行度不升反降,同比下降了 0.17%。但受到 Python 冲击最大的还是 Perl:0.99% 的下降幅度是主要脚本语言中最严重的。比 Perl 下滑更严重的 C(-1.89%)和 C++(-1.70%)所受的冲击则显然更多地来自 Java、C#和 Visual Basic。台湾 iThome online 对此评论说:

因为 Python 流行指数的上升,将 Perl 的名次往下挤到第 7 名。Paul Jansen 观察 Perl 长期的变化趋势,从 2005 年以后,Perl 的流行指数开始下滑,到 2008 年时,跌到只有最高时的一半。他认为 Perl 被 Python 超越,意味着 Python 未来将取代 Perl,成为用来连结不同软件组件的整合语言。

对于 Ruby 流行度的下滑,笔者认为主要原因——就像当初的快速上升一样——与 Ruby on Rails 的发展有关。经过几年近乎狂热的探索之后,Ruby on Rails 适用的范围已经被基本摸清,甚至可以大胆地说:该用 Rails 开发的应用都已经在用 Rails 开发了。而一些 Rails 之外的 Ruby 实践被证明效果并不理想。例如用 Ruby 做系统管理和项目自动化的尝试,尽管我们看到了《 Everyday Scripting with Ruby 》这样的图书著作,但更多的组织仍然倾向于用 Python 来作为 shell 的替代品。另一方面,Ruby on Rails 朝向企业应用领域的推进也并不顺利。笔者曾经指出,Rails 要进入企业应用领域,必须解决系统整合的问题。

系统整合。与遗留系统是否能够协同工作。这主要体现在两个方面:(1)消息系统;(2)遗留数据库。

但一年时间过去以后,这两方面的进展乏善可陈:关于“要不要(以及如何)用 Ruby 实现一个 Hibernate”的讨论一直在进行,而消息中间件似乎更适合用Erlang 来实现。其结果是,当Ruby on Rails 坚持“做一件事并做好”的理念时,Ruby 语言则越来越呈现“只能做这一件事”的状态。当那些扩展边界的尝试无疾而终时,Ruby 流行度的下滑也就在情理之中了。与此同时Lua 在TIOBE 的的榜单上窜升了30 位。这种几乎专门用于游戏编程的脚本语言和专门用于高性能服务器编程的Erlang 在07 年中受到广泛的关注,似乎预示着混合语言编程时代的到来:人们不再执着于用一种语言解决所有问题,而是根据问题域选择最适合的语言。正像 Ola Bini 陈金洲分别(以不同的方式)说过的:

在未来的几年内,人们会越来越多地采用新的编程语言。当然,这并不意味着当前所用的语言会被取代,而是要结合不同的语言,并且针对特定问题选择恰当的语言。

其实这种趋势早已出现:人们越来越少地——像当年对比 C++ 和 Java 那样——做编程语言之间的对比,更多的注意力被放在“它适合什么场景”这样的问题上。当一个典型的软件系统需要涉及 4~5 种主要编程语言时,这对于程序员究竟是机遇还是挑战?很大程度上这取决于程序员自己。

2008-01-27 22:043488
用户头像

发布了 21 篇内容, 共 38240 次阅读, 收获喜欢 2 次。

关注

评论

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

以用户体验五要素的思路,如何编写产品需求文档(PRD)

小炮

需求文档

剖析GPU未来发展方向

Finovy Cloud

人工智能 云服务器 GPU服务器 GPU算力

二进制文件版本控制工具选择难?看完这篇你会找到答案

龙智—DevSecOps解决方案

perforce Helix Core

2021最新最全Java基础高频面试题汇总(1W字详细解析)

爱好编程进阶

Java 面试 后端开发

活动精彩预告 | 维塔士+龙智:数字化打造游戏行业「头号玩家」

龙智—DevSecOps解决方案

数字化转型 游戏开发 游戏引擎

Kubernetes 中数据包的生命周期 -- 第 1 部分

Se7en

阿里超大规模 Flink 集群运维体系介绍

Apache Flink

大数据 flink 编程 运维 实时计算

机器学习算法和架构在MLOps框架下的工程实践

博文视点Broadview

解决方案| 快对讲调度系统:高效协作

anyRTC开发者

音视频 调度 实时通讯 实时消息 对讲

星汉未来云原生基础治理平台SchedulX V1.1.0 重磅发布,助力企业降本增效

星汉未来

运维 云原生 k8s 智能运维 星汉未来

为什么各大APP都推出了适老版?

InfoQ IT百科

2020年4面美团(多线程+redis

爱好编程进阶

Java 面试 后端开发

星汉未来成为FinOps产业推进方阵共建单位

星汉未来

运维 云原生 星汉未来 FinOps

有道词典Android客户端包体积优化之路

有道技术团队

andiod Groovy

“如何实现集中管理、灵活高效的CI/CD”在线研讨会精彩内容分享

龙智—DevSecOps解决方案

CI/CD CloudBees

2021金九银十最新338道大厂Java架构面试高频题目+答案详解

爱好编程进阶

Java 面试 后端开发

从B站和小红书看,如何做好社区产品?

InfoQ IT百科

中商惠⺠交易中台架构演进:对 Apache ShardingSphere 的应⽤

SphereEx

Apache 数据库 ShardingSphere SphereEx

企业官网有啥用?一定要搭建官方网站吗?

源字节1号

微信小程序 网站开发

一文了解全面静态代码分析

龙智—DevSecOps解决方案

perforce Helix QAC

如何快速搭建一个像叮咚买菜这样的APP?

InfoQ IT百科

现在有没有可以真正称得上是元宇宙的应用?

InfoQ IT百科

教你轻松解决CSRF跨站请求伪造攻击

华为云开发者联盟

CSRF 信任 攻击 跨站请求伪造 跨站

精彩联动!OpenMLDB Pulsar Connector原理和实操

第四范式开发者社区

机器学习 数据库 特征 特征平台 连接器

最佳实践 | 通过使用 Jira Service Management 改进 HR 工作流程

龙智—DevSecOps解决方案

Atlassian jsm

龙智被评估为CMMI [3] 级

龙智—DevSecOps解决方案

CMMI 龙智

星环科技基础软件产品全面落地开花,为企业数字化转型带来“星”动能

星环科技

研讨会回放视频:如何提升Jenkins能力,使其成为真正的DevOps平台

龙智—DevSecOps解决方案

CI/CD CloudBees

IoT平台如何实现业务配置中心

华为云开发者联盟

运维 物联网平台 内存 业务配置 业务配置中心

谁研发了APP弹窗功能?

InfoQ IT百科

InfoQ 入驻快讯

Apache IoTDB

Apache IoTDB

TIOBE语言流行度排行显示混合编程时代到来_Ruby_Jeff Xiong_InfoQ精选文章