外文翻译-程序设计语言对开发分布式系统的影响

外文翻译-程序设计语言对开发分布式系统的影响

ID:12626399

大小:152.10 KB

页数:26页

时间:2018-07-18

外文翻译-程序设计语言对开发分布式系统的影响_第1页
外文翻译-程序设计语言对开发分布式系统的影响_第2页
外文翻译-程序设计语言对开发分布式系统的影响_第3页
外文翻译-程序设计语言对开发分布式系统的影响_第4页
外文翻译-程序设计语言对开发分布式系统的影响_第5页
资源描述:

《外文翻译-程序设计语言对开发分布式系统的影响》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、1.外文资料翻译译文程序设计语言对开发分布式系统的影响摘要:编程语言对分布式系统的发展具有深远的影响。虽然很多中间软件和分布式系统开发代码继续利用当今主流的语言如Java和C++,但是最近一些联合起来的力量带动了人们对其他编程语言的新兴趣。这些力量的结果已经促进了编程语言的使用,例如Erlang,Scala,Haskell,还有Clojure,都允许抽象的编程,得到更高水平、更好的模块,提高开发速度,并增加了且正在开发有关系统的推理能力。这样的语言,也可用于开发嵌入式领域特定语言,在分布式系统中是意味深长而简洁的模型,包括并发固有的问题,平行度,和容错。在

2、本文中,我们首先介绍编程语言的历史和分布式开发系统,然后探讨几种可供选择与现代系统一起使用并内置其中的语言。我们注重语言和应用程序功能、注重如何解决分配问题,并发问题,简洁的代码,可扩展性,和维护的担忧。最后,我们推测目前的替代编程语言可能对中间件和分布式系统未来的发展产生影响。关键词:分布式系统中间件ErlangScalaRPCJavaC++互通性可移植性编程语言函数式编程1.简介分布式系统和编程语言早就相互影响。因为它们与分布式系统的实现和使用特定语言分布式系统的行为都揭示了该语言优势和弱点。同样地,许多分布式系统的功能和特性有,无论是好还是坏,都被不

3、同的编程语言的习惯用法所影响。在本文中,我们研究从过去四十年中各种分布式系统和中间件的发展来考察编程语言如何影响这些系统。然后,我们详细的分析从使用分布式系统项目的效益以及非常有用的非主流编程语言两个方面的特征和能力。最后,我们推测分布式系统和中间件的未来相对于编程语言可能是什么样。2.过程调用的影响早期的文件揭示编程语言的影响已经对分布式系统发表于1975年:RFC707[1]。它解决了分布式应用程序的需要,首先通过调用注意一个事实,即当时支持的命令语言的网络资源用于人类,而不是应用程序的交互。该RFC则提出了关注开发人员是否可以合理地编写网络应用程序,

4、鉴于开发和使用进程间通信(IPC)设施的难度。为了解决这些问题,RFC的作者,詹姆斯E.White,提出了“过程调用模式”(PCM),以帮助开发人员构建网络应用。他的理由是,开发人员已经熟悉调用程序库编写应用程序,因此,PCM将会对网络应用程序的调用看起来就像是正常的过程调用。从怀特的PCM继尼尔森的远程过程调用(RPC)[2]。不幸的是,今天的“RPC”一词已被错误地泛型化指任何远程消息的发送,但是最初它处理的特别是程序在远程系统上的调用。透明度是关键;在调用应用程序实现语言的文本中,远程过程调用是为了看起来就像是一个普通的本地程序的调用。RPC已经对分

5、布式系统的研究和开发显著影响,但在20世纪80年代它不是唯一的影响力。截止到那个时候,交易监控,最初发明并部署在20世纪60年代时,美国航空公司和IBM共同创建的SABRE机票预订系统,建立了中间件的价值,代码具有既不应用也不操作系统(OS),但并不是建立在提供清晰而有用且时而关键的业务之间的计算能力。计算机系统从大型机发展到小型机工作站到个人电脑。这些新系统,尤其是工作站,需要网络连接等网络技术,如令牌环系统和以太网也不断发展。同时,新的编程语言都被发明即使旧的仍然不断成熟和进步。例如,在20世纪80年代的Lisp,Pascal,C++,Smalltal

6、k,Eiffel,Objective-C,Perl和Erlang全都不是发明就是正在接受值得注意的关注。大约在20世纪80年代初,结构化编程方法已经越来越流行,但在面向对象编程(OOP)方面的兴趣已开始上升。随着上世纪80年代的进展,研究人员和开发人员意识到,对象是一个用于跨包输出功能方便的单位分布式应用程序。这些力量一起对20世纪80年代的分布式系统研究有显著的影响,从而导致了操作系统领域,编程语言和分布式应用程序的重要发展。许多在此期间开展的学术体系是完全的顶部至底部系统-OS,编程语言,分布中间件和应用程序编程接口(API),全部概括起来,主要是因为

7、所有这些层次都还是在紧张的研究和正在开发的对象。这里有几个显着的研究系统,包括:Argus[3],分布式编程语言和系统,旨在帮助与可靠性问题,如网络分区和节点崩溃。Eden[4],全面向对象的分布式操作系统,使用RPC。Emerald[5],分布式的基于RPC的对象语言提供本地/远程透明度,并解决诸如对象移动时新的难题。像这些系统倾向于依赖RPC,注重统一性,如在整个系统中的本地/远程透明性和强/静态类型,并使用隐藏在每个系统中自己封闭分发协议作为其基本RPC机制的一部分。随着企业计算网络在20世纪80年代的增长,厂商知道他们需要将分布式系统的研究转化为实

8、际应用。但在那个时期他们的客户希望使用标准的编程语言,如Pasca

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。