我刚才正在查看微软的Visual Studio页面,在广告边栏中,我突然看到了一个令人难以置信的广告:
“Net Express是一个COBOL开发环境,用于将核心业务流程扩展到.NET Framework和其他分布式平台。”
当然我跟着link找到了一家这样做的公司,但有些地方还在使用COBOL吗?有没有人在.NET框架中实际使用COBOL?
编辑:感谢大家的以下信息,我今天肯定学到了一些东西!
答案 0 :(得分:44)
Micro Focus制作一个COBOL开发套件,主要用于维护传统大型机应用程序。它讲的是来自各种平台的20种COBOL方言,并且具有CICS仿真功能。截至2004年,他们建议将大型机工作负载替换为400 MIPS左右。请记住,在20世纪90年代早期,您仍然可以从Amdahl购买额定值为22 MIPS的大型机系统。大型机上的400 MIPS是相当大的工作量。
将传统的COBOL后端集成到现代前端是一件大事。对于各种协议(如CORBA和SOAP),terminal emulation software,screen scrapers,interfacing libraries和RPC wrappers都有相当大的生态系统。
几年前,Micro Focus推出了COBOL .NET compiler,允许您在CLR后端运行COBOL应用程序。您可以编译任何支持的方言,它将运行所有旧版仿真功能。这允许您在现有COBOL应用程序上放置GUI或Web前端(或Web服务层),从而保留您在现有代码库中的投资。前端可以用几乎任何支持CLR的开发工具编写。您希望将C#/ Windows窗体,MS Workflow Foundation,SSIS,IronPython,ASP.NET或SQL Server CLR与您的COBOL后端集成 - 将您自己淘汰。
因此,对于遗留应用程序的完全重写和迁移,它通常是一种非常有吸引力的替代方案。
这种类型的工作占据了他们的大部分业务,但仍有一些利基,其中COBOL本身确实做得相当不错。对于许多大型批处理作业来说,打开面向记录的文件并在程序上处理它是一个很好的范例,可以使应用程序变得简单,易懂和快速。我曾经读过一篇帖子(在Slashdot IIRC上),有人在谈论COBOL应用程序,该应用程序读取35GB的信用卡退款文件并每小时处理 。这是很久以前发布的,在20世纪90年代的某个时候 - 当时35GB比大多数PC的磁盘容量大得多。
即使在现代硬件上,让RDMBS在一小时内批量加载和处理35GB数据(一次猜测为1亿到2亿条记录)也不一定是一项微不足道的工作。通常,从SQL获取性能需要您采用一种稍微倾斜的处理方法,这可能会模糊代码的含义;高度优化的SQL可以完全“只写”。
COBOL已经在这种类型的应用中使用了50年,并且是一种成熟的,易于理解和可靠的技术,实际上做得非常好。
答案 1 :(得分:8)
Rob,有一个很多的地方仍然在做COBOL,虽然不一定是.NET;我们仍然进行大量的大型机开发,绝大多数财务应用程序仍然使用COB与CICS连接编写。
此外,您仍然可以获得Windows平台的COBOL编译器(例如,富士通)。
答案 2 :(得分:8)
我在COBOL编码时真的很开心 - 在Fortran,Pascal和C上学习过,但是我在前5年的大部分时间里专注于IBM / 390s上的COBOL编码。但是15年来没有碰过它。
COBOL是卓越的批处理财务处理语言。正确的结构,它可以做它最擅长的事情 - 处理大量的财务数据 - 比其他任何事情都要好。它也是嵌入其他系统的非常好的语言 - 通常作为其他系统之间的粘合剂运行。
把它想象成一个火车头:-)。在19世纪,每个人都习惯乘火车旅行,因为这是我们所拥有的一切,但是对于大多数人而言,汽车和飞机取而代之。虽然铁路系统仍然是可行的,但为了搬运大量重型货物。你不经常在日常生活中看到机车,但他们会让你的发电站运转煤炭。
值得注意的是,Lisp在AI编码中的位置仍然相似。我觉得有趣的是,三十年代“大型”20世纪70年代/ 70年代语言中的另一个成员--Fortran--比其他语言下降得更多,这不是我当时的预期。然而,我们仍然有BASIC在很大程度上,这实际上是Fortran的私生子,所以可以说这三个人都像以往一样活跃和踢腿。
答案 3 :(得分:5)
我认为更常见的情况是互操作性,例如,Windows和ASP.NET应用程序与COBOL / CICS应用程序通信,反之亦然。
几年前,我参与了这个项目,为我国的一家大银行做过工作,我可以想象,对于任何拥有40多年IT经验的银行来说,这都是相当普遍的。答案 4 :(得分:3)
COBOL是一个利基市场。一个美好,舒适,有利可图的利基。那可能(迟早)将不存在,但现在仍然存在。在这里,几家主要的银行组织都在COBOL中开发了他们的核心系统。这不仅是维护,也是发展!
已经存在了50年左右,每10年就有人宣布它已经死了,但它仍然存在。
答案 5 :(得分:1)
来自维基百科的文章让我很吃惊:
COBOL计划正在全球范围内使用 政府和军事机构 商业企业,等等 IBM的z / OS等操作系统 微软的Windows和POSIX 家庭(Unix / Linux等)。 1997年 Gartner集团报告称,80% 世界的业务在COBOL上运行 超过2000亿行代码 存在并且估计有5个 每年十亿行新代码。
http://en.wikipedia.org/wiki/COBOL
我认为Cobol是“木材”。这不是真的。 顺便说一下,Fujitsu NetCOBOL for .NET和Micro Focus Net Express® with .NET是 相当全面的实施。也许我们应该学习这门语言,然后找到薪水很高的好工作? :)
答案 6 :(得分:0)
我知道Raincode,Fujitsu和Microfocus。 Microfocus使用COBOL Codebehind尝试ASP.NET。富士通我不确定他们是否仍在提供自己的Web解决方案或trypig以适合ASP.NET。
Raincode提供了一个针对.NET的标准cobol编译器,而没有尝试利用ASP.NET