单选题 修改软件以适应外部环境(新的硬件、软件配置)或数据环境(数据库、数据格式、数据输入输出方式、数据存储介质)发生的变化是指(    )。
   A.改正性维护    B.适应性维护
   C.完善性维护    D.预防性维护
【正确答案】 B
【答案解析】使用高级语言(Fortran、C等)以接近自然语言的方式编写程序。这样的程序可理解性强,结构化、模块化都很好,除了与硬件、相关软件(如操作系统)和数据库管理系统有关的部分外,都可以用它们编写程序。但每种类型的计算机,即使提供同一种高级语言,也有可能渗入它自己特有的功能。为了做到可移植性,必须避开这些特殊的功能,使用语言的标准文本来编写程序。
   当前,许多软件开发商以一些高级语言为核心,开发了众多功能强大的软件编程环境,如Delphi(以Pascal为编程语言)、Visual C++(以C++为编程语言)、Visual Basic(以Basic为编程语言)、PowerBuilder(以C++为编程语言)等。在这些软件中提供了大量的控件或类库,可以帮助程序员以最小的工作量实现多种功能,还可以与多种数据库连接。所有这些,对于适应性维护,都有有利的影响。但事情也不是绝对的。在Microsoft Windows或Microsoft Windows NT环境下开发的软件不一定能够直接移植到Linux环境下。虽然许多人在这方面正在努力。
   国外一些计算机厂商在硬件、软件结合的环境下综合考虑软件跨平台使用的问题。例如,Oracle数据库管理系统在几乎所有的硬件平台上、微软公司的Windows环境下都可以安装,这样使用Oracle SOL编写的程序在多种硬件平台上,多种数据库和操作系统的环境下,不用修改程序,或修改少量程序,就可以直接运行。