硬核干货——《中小企业 AI 实战指南》免费下载! 了解详情
写点什么

Java:下一个 COBOL?

  • 2019-10-08
  • 本文字数:1995 字

    阅读完需:约 7 分钟

Java:下一个COBOL?

COBOL,这门受人尊敬的编程语言本月将迎来 60 岁的生日,正如 Steven J. Vaughan-Nichols 所写,它很可能“比我们所有人都要长寿”。COBOL 不仅展示了我们行业的真实增长速度,同时它也可能提供了一些线索,来说明未来类似 COBOL 的将会是什么。Java 和 SQL 中的一个吗?又或者是 Python?


Java 真的会成为下一个 COBOL 吗?


当我们对新事物痴迷时,很容易忘记旧事物陪伴我们的时光。以 COBOL 为例。这门受人尊敬的编程语言本月将迎来 60 岁的生日,正如Steven J. Vaughan-Nichols所写,它很可能“比我们所有人都要长寿”。


事实上,COBOL 提供了一个很好的示例,它展示了我们行业的真实增长速度,同时它也可能提供了一些线索,来说明未来什么会成为 COBOL。是 Java 和 SQL 中的一个吗?又或者是Python

COBOL 的主力

阅读这篇文章的大多数人在 1959 年几乎都还没有出生的,那一年 Mary Hawes 提出了 COBOL (Common Business-Oriented Language,面向商业的通用语言)的概念,Grace Hopper(和其他人一起)随后使其正式化并加以改进。正如 Vaughan-Nichols 所提到的那样,Hawes 的目标是创造“一个类似英语的词汇表,可以在不同的计算机上执行基本的业务任务”,这是一种真正的与供应商无关的语言。


Micro Focus(维护 COBOL 的公司)在与 Vaughan-Nichols 的一次谈话中说到,虽然 COBOL 的年轻时代在 20 世纪 80 年代已经逐渐消失了,但它却支撑着全球 70%的事务处理操作。从自动取款机中取钱?你在用 COBOL。支付抵押贷款?也是用 COBOL。打电话给呼叫中心?没错,那也是 COBOL。即使是假期预订,也完全依赖于 COBOL。


一般认为 COBOL 已经废弃了几十年,但是 2200 亿行 COBOL 仍然存在于我们生活里的大型机中。据软件工程研究中心Lero称,2014 年 COBOL 程序的事务处理数比谷歌搜索高出了 200 倍,使其相形见绌。

谷歌会迎头赶上吗?

COBOL 可不是在大型机上苟延残喘的老糊涂。除了易读之外,这门语言还与它的旁观者保持着联系。如今,COBOL 与 Docker 容器、Java 相结合,可以运行在云、Linux、Windows 上,或是运行在任何地方的任何东西上。它是一种高度可管理的语言,允许程序员专注于编写应用程序,而 COBOL 则负责处理底层操作系统的复杂性。


如今,COBOL 最大的风险是越来越难找到合格的程序员了。考虑到替换基于 COBOL 系统的成本和风险,这种语言可能还有几十年的时间要和我们一起共存,但这并不意味着开发人员从小梦想着编写的第一个程序是 COBOL 程序。这是一个谜题,但不是我打算在这篇文章中要解决的。(对不起!)


另外,纵观 COBOL 60 年的历史,让我思考今天的哪些语言可能成为明天的“COBOL”。也就是说,还有哪些语言/技术会在众多未来技术的背后继续存在?

未来 COBOL 之今日

当然,未来很难预测,但对于 SQL、Python 和 Java 来说,有很多很好的例子。 Dave Kellogg多年来一直宣称 SQL 是新一代的 COBOL。从持久性和它已经过时的知识而言,这可能是真的,但这种类比最终会消失。只有一个 COBOL。尽管 SQL 声称它具有一致性,但它会根据数据库提供者的不同而使用不同的方言。虽然这并没有阻止 SQL 的发展(而且它在未来几十年内肯定还会很重要),但它并不像是 COBOL 的同类。

当然不像 Java 那样

Java 与 COBOL 一样,也是很容易读写的。就像 COBOL 一样,Java 也保持了其现代性。每当 Java 看起来要消失的时候,就会有什么东西使它活跃起来。根据Brian Leroux的说法,Android 肯定对 Java 的持续保持其重要性起了至关重要的作用。不久之后,大数据又让 Java 死灰复燃。正如Nitin Borwankar所强调的那样


“由于 Hadoop 和整个数据科学生态系统(包括 Hive、HBase、Spark、Cassandra、Kafka 和 JVM 语言,如 Groovy 和 Clojure),Java 迎来了第二春。所有这些都不会很快消失。”


事实上,和 COBOL 一样,我们可能看到 Java 被刻在我们墓碑上的一个主要原因是,正如Jonathan Eunice所写的那样,Java“被广泛深入地部署在了关键应用程序中,因此值得对它进行系统性的批判。”随着越来越多的公司将 Java 嵌入到他们最关键的应用程序中,Java 就越不可能被分割和取代。这样做可以降低成本和风险。


同样地,Python 可以很好地决定它的持久力。在Lauren Cooney看来,Python 将继续存在下去,因为它是一种“GSD(get stuff done,完成任务)语言且是一种很酷的语言。”它“不花哨”。它就是“有用”。更重要的是,像 Java 一样,Python 也越来越成为现代数据科学的基础。此外,它很可能会成为未来支撑经济系统的事务性工作负载(如前所述,这也是 COBOL 今天仍然很酷的一个重要原因)。


别的呢?好吧,还有一个不是那么随便的答案,那就是 COBOL 也许是未来的 COBOL。正如 Andrew Oliver所说,


几年前我说过 Java 是未来的 COBOL。每个人都用奇怪地眼光看我。但我认为这就是未来。



一幅有趣的 Java 与 COBOL 对比图


原文链接:


https://learnworthy.net/could-java-be-the-next-cobol


2019-10-08 16:563174
用户头像

发布了 538 篇内容, 共 383.2 次阅读, 收获喜欢 717 次。

关注

评论

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

只用了半个Redisson的Semaphore实现并发控制

Java 并发控制 Semaphore redisson

fabric.js开发图片编辑器的细节实现

秦少卫

架构 编辑器 Fabric.js 前端编辑器

TDengine 3.0.2.5 查询再优化!揭秘索引文件的工作原理

TDengine

数据库 tdengine 时序数据库

软件测试/测试开发 | web 控件的交互进阶

测试人

软件测试 自动化测试 测试开发 Web自动化测试

特定领域知识图谱融合方案:学以致用-问题匹配鲁棒性评测比赛验证【四】

汀丶人工智能

自然语言处理 知识图谱 2月月更 2月日更 实体对齐

前端培训学习方法有哪些

小谷哥

Sentinel 是如何实现分布式限流的?

sentinel 分布式限流

嵌入式ARM设计编程(一) 简单数据搬移

timerring

arm

宋红康2023版Java视频发布

小谷哥

大数据培训学习选择哪个机构好

小谷哥

模块6如何设计微服务架构

程序员小张

关于使用消息队列今天被面试官问倒了

秒云加入金兰组织,携手共建信创新生态

MIAOYUN

信创 信创云 信创产业 金兰组织

特定领域知识图谱融合方案:文本匹配算法之预训练Simbert、ERNIE-Gram单塔模型等诸多模型【三】

汀丶人工智能

人工智能 自然语言处理 知识图谱 2月月更 2月日更

大数据培训零基础的方法有哪些

小谷哥

Java培训有哪些不同的学习方法

小谷哥

软件测试/测试开发 | Web 控件定位与常见操作

测试人

软件测试 自动化测试 测试开发 Web自动化测试

面试官:谈谈你对JVM内存结构的理解

Java JVM

SpringBoot 如何保证接口安全?老鸟们都是这么玩的!

Java Spring Boot 接口

软件测试/测试开发 | 网页 frame 与多窗口处理

测试人

软件测试 自动化测试 测试开发 Web自动化测试

MRS+LakeFormation:打造一站式湖仓,释放数据价值

华为云开发者联盟

大数据 后端 华为云 企业号 2 月 PK 榜 华为云开发者联盟

实战分享,电路板设计后这样干,一个人也能轻松搞定项目!

华秋PCB

PCB PCB打样 PCB设计

IoTLink 版本更新 v1.5.2

山东云则信息科技

物联网

新年伊始,谈谈开源软件供应链安全的新趋势

安势信息

开源软件 清源CleanSource SCA 安势信息 ChatGPT 开源软件供应链安全

Svelte框架结合SpreadJS实现表格协同文档

葡萄城技术团队

安擎董事长俞跃渊:打造智能算力,创新产业价值

科技热闻

安势信息入选 SegmentFault思否「2022 中国新锐技术先锋企业」

安势信息

软件成分分析 清源CleanSource SCA 安势信息 技术先锋 SegmentFault

再获权威认证!秒云顺利通过ISO20000、27001双系统认证

MIAOYUN

ISO9001 ISO20000 ISO27001

由浅入深,聊聊OkHttp的那些事(很长,很细节)

Petterp

android okhttp

啊啊啊!小程序小游戏也可以在自己的App上架❗️❗️

没有用户名丶

微信小程序 小程序游戏

Java:下一个COBOL?_语言 & 开发_ALICIA NEWMAN_InfoQ精选文章