谈计算机程序设计语言的选择

来源 :科学与财富 | 被引量 : 0次 | 上传用户:marquise
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  [摘 要] 高级编程语言的目的是使编程人员摆脱对计算机硬件知识的依赖性,从面向机器编程的方式转向面向高级语言。当然在最低级和最高级两个极端之间还存在着其他许多种语言可供应用开发者选择。
  [关键词] 计算机 程序 设计语言 选择
  
  应用软件必须采用开发者易懂的程序设计语言的格式进行编写。最低级的编程语言是目标机直接理解的机器代码;与之相反,高级编程语言是指具有自然结构和数据抽象结构的“类英语语言”。高級编程语言的目的是使编程人员摆脱对计算机硬件知识的依赖性,从面向机器编程的方式转向面向高级语言。当然在最低级和最高级两个极端之间还存在着其他许多种语言可供应用开发者选择。
  一、可移植性的两种形式
  从应用可移植性角度来看,一个应用的源程序可能存在两种表示形式,即源码可移植性或二进制码可移植性。
  1)源码可移植性
  这意味着一个应用源程序能在具有相同开发环境的不同平台上运行的编译器(或解释器)间移植,而不需修改应用源程序。
  2)二进制码可移植性
  这意味着一个二进制应用能在不同的平台—上移动,且尤须作任何修改。
  如果一个应用是二进制码可移植的,则不影响应用在其所支撑的平台间的移植。可是,如果一个应用是源码可移植的,则应用开发和运行时间环境包括程序语言必须在其支撑平台间是可移植的;否则,该应用源码是不可移植的。
  程序有不同类型和级别(例如,功能的、源程序、中间代码,解释代码和二进制码)。从可移植性观点看,在源码级和源码级以上(例如功能级)的程序可以较方便地在最广泛的平台范围内进行移植,花的代价少,可移植性的适应性、重用性和协调安全环境均较好,所以我们应把应用程序可移植放在源码级上。
  为了阐明开放程序语言与开放系统环境的相关性,人们一定要充分了解应用平依赖性以及克服依赖性的方法。
  二、克服应用平台依赖性
  1、应用平台依赖性
  利用一个特定的开发环境为一个特定的运行时间环境所产生的一个应用,有时需要作某些改变,使其能适应在支持不同开发和(或)运行时间环境的平台上运行,其原因是由以下的依赖性引起。
  (1)不同的运行时间环境以不同方式运行不同的应用。编写应用过程必须充分考虑进程调度的类型和由基本操作系统所使用的应用资源管理的类型。
  (2)应用可以以不同方式与不同的运行环境服务界面接口。一个应用源程序依赖于操作系统所提供的服务界面,并依赖其所涉及的其他相关应用的服务界面。
  (3)不同开发环境可以要求不同应用源程序产生一个等效的可执行的应用。应用源程序依赖于创建它的开放环境。例如,用第四代语言环境所编制的一个应用,试图移向另一个不同的4GL环境时,用户必须按新的环境要求重新编写应用。
  显然,应用依赖于创建它的开发环境和操作它的运行时间环境以及基本平台。这些内容的任一变化将迫使应用也作相应的改变,因此,一个应用是依赖于基本的应用平台的。仅当这些平台支持相似的开发和运行时间环境的应用界面时,应用才能在这些平台间移植。
  2、克服应用平台依赖性
  克服应用平台依赖性的常用方法是使用一个可移植的应用开发平台和(或)运行时间环境,它有两种选择。
  (1)构建一个异构的应用环境。这个选择是为满足一组特定的应用需求,根据运行平台的配置去开发一个异构的应用开发和运行时间环境。
  (2)购买一个完整的组装应用环境。这个选择意味着,根据支持平台的要求,购买—个可移植的完整的组装应用开发和运行时间环境。
  购买一个商品化的组装应用环境显然比构建一个定制的异构应用环境来得容易,在价格上也比较便宜。但是,即使有一个能适合于特定需求集的组装应用环境,我们也可证明它与定制的异构环境相比较仍存在着一定的局限性。
  组装的应用环境通常是受制约的,在某些情况下它提供的可选服务数量固定且有限。例如,一个典型的4GL环境提供具有网络任选的数据库和用户界面服务。此时如果用户想添加某些服务,如远程过程调用(RPC)服务,则必须使所添加的软件要能与现存的环境集成,从而构成一个含有组装单元的定制的异构环境。因此,我们仍然必须考虑一些与构建一个异构环境相关的问题,即使用户可能很想使用组装环境。
  构建一个定制的异构应用环境的目的是使一个组织机构开发的应用环境能适应它的需求,即在平台和所支持的外部接口的选择上提供比组装应用环境更大的灵活性。但是,相关的开发机构必须承担对环境的维护和支持。
  虽然标准语言和标准服务界面的使用是重要的,但是,单独使用这些标准往往是不充分的。这就要有——个指导使用程序设计设施风格的指南。这样,可移植应用开发可简单地表达为标准语言+标准接口+标准编程风格=可移植应用
  为了避免非可移植的编程风格,一个编程风格指南应包括:
  (1)可移植的编程实践;
  (2)工具用法的规定。
  我们也应该清醒地认识到,一个应用移植仅仅有可移植的程序设计语言是不够的,还需要操作系统环境和应用界面标准。
  程序设计语言经历了四代。前三代语言是过程化的语言,目的是实现各种算法,需要描述“怎样做”;4CL是非过程化的语言,面向应用,仅须说明“做什么”。但是,当前多数4cL是以非过程化机制为主,同时兼有一些过程化机制,以便实现应用系统中需要使用的算法。此外,前三代语言注重算法描述,—次仅处理一个记录或一个数据元素,不支持对大量共享数据的处理;4CL以数据为主,以对数据集合的处理代替对单个记录或数据元素的处理,而且它与数据库密切相关,具有支持对大型数据库进行高效处理的机制。
  传统的程序设计技术忽略了数据和程序之间的内在联系。用这种方法所设计出来的软件系统,其求解空间和问题空间并不一致,令人难于理解。面向对象技术的引入,使传统程序设汁技术有了一个很大进展。面向对象的方法与传统的面向过程的方法在本质上的差别是,面向对象的方法是使描述问题空间和描述解空间在结构上尽可能一致。因此面向对象的软件设计方法已经引起人们的广泛注意。
  参 考 文 献
  [1]王炽鸿。计算机辅助设计[M]。北京:机械工业出版社,1998。
  [2]丁剑洁,基于度量的软件维护过程管理的研究[D],西北大学,2006■
其他文献
随着国家整体经济的不断发展以及外部环境的复杂多变,国家预算管理工作在控制国家宏观经济发展速度方面具有重要意义。由于各种信息的复杂性以及各种信息化系统的不统一,本文认
通过对造纸工业的预测和分析,论证了必须把发展造纸木材资源的重点放在国内;介绍了日本和巴西的成功模式,提出了发展速生林的对策和建议.
近几年来,一些地区陆续暴发一种以高热为典型症状的综合症,此疫病传播速度之快,流行面积之广、死亡率之高部是养猪史上罕见,曾掀起了一场谈“高热”色变的风暴,给集约化养猪生产带
电子商务是一项朝阳产业。本文针对电子商务的税法问题,对电子商务的概念界定与基本特点展开了简要论述,围绕我国电子商务税收工作的现存问题以及电子商务税收法律制度进行阐释
[摘 要] 2009年1月1日起,我国成品油税费改革正式实施,取消原在成品油价外征收的公路养路费、航空养护费、公路运输管理费、公路客运附加费、水路运输管理费、水运客运附加费等六项收费,逐步取消政府还贷二级公路收费,燃油税的改革终于尘埃落定。本文针对燃油税改革的实施效果,分析了此举对我国构建和谐社会的积极作用,并指出了燃油税的改革对社会关系中的政治关系和经济关系的具体影响。  [关键词] 燃油税 改
处置网络危机,这是网络时代赋予政府的一项重要任务。要想正确有效的处置好网络危机,必须严格把握处置网络危机的基本原则,形成正确有力的处置措施,并在危机结束以后进行深入
草料装球目前还没有理想的定型设备,下面介绍由安丘市昌隆造纸机械有限公司生产的新型装球机.
中国绿色时报 报道 一项旨在实现生态效益与经济效益双赢的大型林纸一体化工程——盘古集团林纸一体化项目,6月12日在内蒙古乌兰布和沙漠启动。
[摘 要] 简述悬壁灌注桩在深基坑支护中的适用条件、工作原理,以及悬壁灌注桩桩深、最大弯矩、截面配筋计算等。并根据工程应用实例进行深基坑边坡支护计算。   [关键词] 悬壁 灌注桩 深基坑 支护  The application of cantilever filling pile in deep foundation pit  ZOU Peng  (Guangxi Electric Power
周庵铜镍矿采用地下开采方式,本文根据矿山地质、开拓方案、提升运输、采掘工艺、排水、通风、压气、供电等系统,全面分析辨识了矿山存在的危险有害因素,为矿山消除隐患,实现