【自考复习资料】07169软件开发工具和环境(复习题集)_第1页
【自考复习资料】07169软件开发工具和环境(复习题集)_第2页
【自考复习资料】07169软件开发工具和环境(复习题集)_第3页
【自考复习资料】07169软件开发工具和环境(复习题集)_第4页
【自考复习资料】07169软件开发工具和环境(复习题集)_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

07169软件开发工具与环境第一版1、软件开发环境的主要组成成分是什么?什么是软件开发环境?软件开发环境的主要组成成分是软件工具。软件开发环境是指在计算机的基本软件的基础上,为了支持软件的开发而提供的一组工具软件系统。2、软件开发环境可分为哪四层?软件开发环境包括哪些特性?软件开发环境可分为以下四层:(1)宿主层:它包括基本宿主硬件和基本宿主软件。(2)核心层:一般包括工具组、环境数据库和会话系统。(3)基本层:一般包括最少限度的一组工具,如编译工具、编辑程序、调试程序、连接程序和装配程序等。这些工具都是由核心层来支援的。(4)应用层:以特定的基本层为基础,但可包括一些补充工具,用于更好地支援各种应用软件的研制。软件开发环境特性包括:(1)可用性。用户友好性、易学、对项目工作人员的实际支持等;(2)自动化程序;(3)公共性。公共性是指覆盖各种类型用户、各种软件开发活动;(4)集成化程序。(5)适应性。适应性是指符合用户要求的程序。(6)价值。得益和成本的比率。3、软件工具由三部分构成?软件开发工具概念有哪三个要点?软件工具通常由工具、工具接口和工具用户接口三部分构成。软件开发工具概念的三个要点:(1)它是在高级程序设计语言之后,软件技术进一步发展的产物。(2)它的目的是在人们开发软件过程中能够给予各种不同方面、不同程度的支持或帮助。(3)它支持软件开发的全过程,而不是仅限于编码或其他特定的工作阶段。4、软件开发工具有哪些功能要求?软件开发工具有哪些性能要求?软件开发工具的功能要求:可以将软件开发工具应提供的各类支持工作归纳成以下5个主要方面:(1)认识与描述客观系统。这主要用于软件工作的需求分析阶段。由于需求分析在软件开发总的地位越来越重要,人们迫切需要在明确需求、形成软件功能说明书方面得到工具的支持。与具体的编程相比,这方面工作的不确定程度更高,更需要经验,更难以形成规范化。(2)存储及管理开发过程中的信息。在软件开发的各阶段都要产生以及使用许多信息。当项目规模比较大时,这些信息量就会大大增加,当项目持续时间较长时,信息的一致性就成为一个十分重要、十分困难的问题。如果再涉及软件的长期发展和版本更新,则有关的信息保存与管理问题就显得更为突出了。(3)代码的编写或生成。在整个软件开发工作过程中,程序编写工作在人力物力和实践方面占了相当的比例,提高代码的编制速度与效率显然是改进软件工作的一个重要方面。根据目前以第三代语言编程尾注的实际情况,这方面的改进主要是从代码自动生成和软件模块重用两个方面来考虑。(4)文档的编制或生成。文档编写也是软件开发中十分繁重的一项工作,不但费时费力,而且很难保持一致。在这方面,计算机辅助的作用可以得到充分的发挥。在各种文字处理软件的基础上,已有不少专用的软件开发工具提供了这方面的支持与帮助。这里的困难往往在于如何保持与程序的一致性,而且最后归结于信息管理方面的要求。(5)软件项目的管理。这一功能是为项目管理人员提供支持的。对于软件项目来说,一方面,由于软件的质量比较难于测定,所以不仅需要根据设计任务书提出测试方案,而且还需要提供相应的测试环境与测试数据,人们希望软件开发工具能够提供这些方面的帮助;另一方面,当软件规模比较大时,版本更新,各模块之间以及模块与使用说明之问的一致性,向外提供的版本的控制等,都带来一系列十分复杂的管理问题。如果软件开发工具能够提高这方面的支持与帮助,无疑将有利于软件开发工作的进行。软件开发工具的性能要求所谓功能是指软件能做什么事,所谓性能则是指事情做到什么样的程度。对于软件开发工具来说,功能的说明告诉我们它能在软件开发过程中提供哪些帮助,而性能的说明则要求指出这些支持或帮助的程度如何。对于软件开发工具来说,其性能一般应包括以下5种:1)表达能力或描述能力因为(欲开发的)软件项目千变万化,将某个软件开发工具用于某些项目的开发,就要能适应那个软件项目的多种情况。往往是根据使用者的若干参数来生成特定的代码段。如果参数选择合理且详尽,充分规定所需代码段的各种特征,从而生成自己真正需要的代码段,则谓之描述能力/表达能力强;反之,如果该软件工具只能提供很少几个参数,用户无选择余地,从而生成的代码段就会十分死板,很难符合欲开发的具体的应用软件的要求,则谓之描述能力/表达能力差。2)保持信息一致性的能力实际工作要求软件开发工具不但能存储大量的有关信息,而且要有条不紊地管理信息,管理的主要内容就是保持信息的一致性,即各部分之间的一致;代码与文档的一致;功能与结构的一致。这些均需软件开发工具提供有效的支持与帮助。3)使用的方便程度人机界面应尽量通俗易懂,以吸引使用者参与开发过程,是否易用是一项重要的性能指标。4)工具的可靠程度软件开发工具应当具有足够的可靠性。因为它涉及的都是软件开发过程中的重要信息,绝对不能丢失或弄错,故可靠性特别重要。5)对硬件和软件环境的要求如果某一软件开发工具对硬件、软件环境要求太高,会影响它的使用范围,若一软件工具对环境要求太高,则显得其很“娇气”,使用范围很小。对于综合的、集成化的软件开发工具来说,环境的要求总会比单项工具要求高。总之,软件开发工具的环境要求应尽量低,这有利于广泛使用。5、CASE含义是什么?CASE工具不同以往的软件工具,主要体现在哪些方面?CASE是一组工具和方法的集合,可以辅助软件开发生命周期各阶蹬进行软件开发。使用CAsE工具的目标一般是为了降低开发成本;达到软件的功能要求、取得较好的软件性能;使开发的软件易于移植;降低维护费用;开发工作按时完成,及时交付使用。CASE工具不同以往的软件工具,主要体现在以下几个方面:(1)支持专用的个人计算环境。(2)使用图形功能对软件系统进行说明并建立文档。(3)将软件生存期各阶段的工作连接在一起。(4)收集和连接软件系统中从最初的需求到软件维护各个环节的所有信息。(5)用人工智能技术实现软件开发和维护工作的自动化。6、CASE集成环境是哪时出现的?包括哪几种集成?20世纪90年代是CASE系统集成时期,CASE工具发展为CASE环境。包括数据集成、界面集成、功能集成和过程集成等。7、软件开发工具有哪些基本功能?软件开发工具有哪四个技术要素?软件开发工具有哪些基本功能可以归纳为以下5个方面:(1)提供描述软件状况及其开发过程的概念模式,协助开发人员认识软件工作的环境与要求,管理软件开发的过程。(2)提供存储和管理有关信息的机制与手段。(3)帮助使用者编制、生成和修改各种文档,包括文字材料和各种表格、图像等。(4)生成代码。(5)对历史信息进行跨生命周期的管理。四个技术要求:总控部分及人机界面、信息库及其管理、代码生成及文档生成、项目管理及版本管理是构成软件开发工具的四大技术要素。8、软件开发工具的核心是什么?软件开发工具与使用者交流信息桥梁是什么?核心是:信息库。总控部分及人机界面是使用者和工具之间交流信息的桥梁。9、软件开发工具最重要的出口是什么?信息库由哪信息组成?信息库也称为中心库、主库等。涉及四类信息。(1)关于软件应用领域与环境状态的,包括有关实体及相互关系的描述,软件要处理的信息种类、格式、数量、流向,对软件的要求,使用者的情况、背景、工作目标、工作习惯,等等。(2)设计成果,包括逻辑设计和物理设计的成果,如数据流程图、数据字典、系统结构图、模块设计要求等。(3)运行状况记录,包括运行效率、作用、用户反映、故障及其处理情况等。(4)有关项目和版本管理的信息,这类信息是跨生命周期的,对于一次开发似乎作用不太大,但对于持续的、不断更新的系统则十分重要。10、版本管理主要涉及哪些方面?软件开发工具按工作阶段划分,分成哪些工具?版本管理主要涉及档案集中管理,版本升级管理,文件更新保护和不同版本比较。软件开发工具按工作阶段划分,基于其工作阶段,可以分为需求分析工具、设计工具、编码工具、测试工具、运行维持工具和项目管理工具。11、文档中最难处理的是什么?文档中最难处理的是文章12、哪些工具属于总体设计工具?哪些属于项目管理工具?哪些属于软件运行维护工具?属于总体设计工具主要是系统结构图的设计工具。支持项目管理的常用工具有PERT图工具、Gantt图工具、软件成本与人员估算建模及测算工具、软件质量分析与评价工具以及项目文档制作工具、报表生成工具等。属于软件运行维护阶段的工具主要包括支持逆向工程或再造工程的反汇编程序及反编译程序、方便程序阅读和理解的程序结构分析器,源程序到程序流程图的自动转换工具、文档生成工具及系统日常运行管理和实时监控程序等。13、软件工程包括哪四种基本活动?按软件过程的活动划分,软件工具怎样划分?软件工程通常包括四种基本活动:(1)P(Palan)——软件规格说明。规定软件的功能及其运行时的限制。(2)D(Do)——软件开发。产生满足规格说明的软件。(3)C(Check)——软件确认。确认软件能够满足客户提出的要求。(4)A(Action)——软件演进。为满足客户的变更要求,软件必须在使用的过程中演进。软件过程的活动工具通常可分为以下几种:(1)支持软件开发过程的工具;(2)支持软件维护过程的工具;(3)支持软件管理和支持过程的工具。14、CASE工具的评价和选择过程包括哪四个子过程?评价和选择过程由4个子过程和13个活动组成。(1)初始准备过程。(2)构造过程。(3)评价过程。(4)选择过程。15、软件开发工具维护的目的是什么?软件开发工具维护的类型有哪些?软件开发工具维护的目的是保证软件开发工具正常而可靠地运行,并能使软件开发工具不断得到改善和提高,以充分发挥作用。软件开发工具维护的类型:(1)完善性维护;(2)适应性维护;(3)纠错性维护;(4)预防性维护。16、需求工程包括哪些阶段?软件需求包括哪些不同层次?每个层次是怎样的?需求工程包括需求获取、需求生成和需求验证三个阶段。软件需求具有不同的层次性,即业务需求、用户需求和功能需求。业务需求:反映了用户对系统和产品的高层次的目标要求,它们是用户组织机构流程的再现和模拟,是从用户组织机构工作流程的角度进行的需求描述。用户需求:描述了用户使用产品必须要完成的任务,一般通过用例或方案脚本予以说明。它是从系统使用者的角度对待开发系统进行的需求描述。功能需求:定义了开发人员必须实现的软件功能,从而使得用户能完成任务,满足其业务需求。功能需求针对的是系统开发人员,一般情况下大多通过文档对功能需求进行定义和说明。17、软件需求分析的主要方法有哪儿种?SA方法在需求分析阶段用什么描述系统?软件需求分析的方法有很多,主要方法有自顶向下和自底向上两种。SA方法从最上层的系统组织机构入手,采用逐层分解的方式分析系统,用数据流图和数据字典描述系统。18、数据流图由哪些元素组成?在SA方法如何将系统抽象成数据流图?数据流图由数据流和、处理、存储,一个简单的系统可用一张数据流图来表示。分层,第一层描述系统的全貌,第二层分别描述各子系统的结构。在SA方法中,处理过程的处理逻辑常常借助判定表或判定描述,而系统中的数据则是借助数据字典来描述。19、在SA方法中,用什么来描述处理过程的处理逻辑,用什么来描述系统的数据?数据字典是对系统中数据的详细描述,是各类数据结构和属性的清单。处理逻辑通常用判定表或判定树来描述。20、有哪些需求分析的图形工具?从技术观点来看,软件设计包括哪些?常用的需求分析图形工具有:(1)UML(2)数据流图(3)数据词典(4)判定表(5)判定树(6)结构化高级分析语言(7)层次图(8)输入处理输出图(9)Warnier图(10)结构化分析与设计技术(11)软件需求工程方法(12)问题描述语言与问题描述分析器21、模块的独立性的度量标准是什么?模块分解设计方法有哪些标准?模块的独立程序是评价设计好坏的重要度量指标。衡量软件的模块独立性使用耦合性和内聚性两个定性的度量标准。模块分解的五条标准来评价一种设计方法。(1)模块可分解性。(2)模块可组装性。(3)模块的可理解性。(4)模块连续性。(5)模块保护性。22、模块的内聚性如何分类?耦合性如何分类?内聚性由弱到强排列为:偶然内聚、逻辑内聚、时间内聚、过程内聚、通信内聚、顺序内聚和功能内聚。耦合性分:内容耦合;公共耦合;外部耦合;标记耦合;数据耦合;非直接耦合23、结构化设计的基本思想是什么?基本思想:将软件设计成由相对独立且具有单一功能的模块组成的结构,分为概要设计和详细设计两个阶段。结构化设计的基本思想是将软件设计成由相对独立,单一化功能的模块组成的结构。软件结构设计的一个目标就是得出一个系统化的程序结构。24、概要设计工具有哪些?详细设计工具有哪些?结构图是概要设计阶段的工具。详细设计工具种类有:图形工具:程序流程图、N-S图,问题分析图。表格工具:类似于判定表。语言工具:过程设计语言。25、什么是结构图的深度?深度:模块结构的层次数(控制的层数)26、如何衡量一个需求分析CASE工具功能的强弱?衡量一个需求分析CASE工具功能强弱的主要依据包括:所支持的需求分析方法的类型与数量的多少;使用的方便程序;与设计工具衔接的程序;所占资源,即系统开销的多少以及对硬件环境的需求程度;是否提供需求错误检测机制;用户领域知识提示功能。27、数据库设计方法有哪儿种?基于E—R模型的数据库设计方法中ER图中有哪些元素符号?基于范式的关系数据库设计方法中,关系模式至少要达到几范式?数据库设计方法目前可分为四类:直观设计法、规范设计法、计算机辅助设计法和自动化设计法。新奥尔良法将数据库设计分成需求分析(分析用户需求)、概念设计(信息分析和定义)、逻辑设计(设计实现)和物理设计(物理数据库设计)。目前,常用的规范设计方法大多起源于新奥尔良法,并在设计的每一阶段采用一些辅助方法来具体实现。下面简单介绍几种常用的规范设计方法。1)基于E—R模型的数据库设计方法基于E—R模型的数据库设计方法是由P.P.s.chen于1977年提出的数据库设计方法,其基本思想是在需求分析的基础上,用E—R图构造一个反映现实世界实体之问联系的企业模式,然后再将此企业模式转换成基于某一特定的DBMS的概念模式。2)基于3NF的数据库设计方法基于3NF的数据库设计方法是由s.Atre提出的结构化设计方法,其基本思想是在需求分析的基础上,确定数据库模式中的全部属性和属性问的依赖关系,将它们组织在一个单一的关系模式中,然后再分析模式中不符合3NF的约束条件,将其进行投影分解,规范成若干个3NF关系模式的集合。其具体设计步骤分为5个阶段:①设计企业模式,利用规范化得到的3NF关系模式设计出企业模式;②设计数据库的概念模式,把企业模式转换成DBMS所能接受的概念模式,并根据概念模式导出各个应用的外模式;③设计数据库的物理模式(存储模式);④对物理模式进行评价;⑤实现数据库。3)基于视图的数据库设计方法此方法先从分析各个应用的数据着手,其基本思想是为每个应用建立自己的视图,然后再把这些视图汇总起来合并成整个数据库的概念模式。合并过程巾要解决以下问题:①消除命名冲突;②消除冗余的实体和联系;③进行模式重构,在消除厂命名冲突和冗余后,需要对整个汇总模式进行调整,使其满足全部完整性约束条件。除了以上三种方法外,规范化设计方法还有实体分析法、属性分析法和基于抽象语义的设计方法等,这里不再详细介绍。规范设计法从本质上来说仍然是手工没计方法,其基本思想是过程迭代和逐步求精。计算机辅助设计法是指在数据库设计的某些过程中模拟某一规范化设计的方法,并以人的知识或经验为主导,通过人机交互方式实现设计中的某些部分。目前许多计算机辅助软件_丁程(CASE)工具可以自动或辅助设计人员完成数据库设计过程中的很多任务。如Sysbase公司的PowerDesigner和Oracle公司的Design2000。28、数据库设计工具按工具支持的设计阶段划分可分为哪儿类?(1)需求分析工具:主要用来帮助数据库设计人员进行需求调研和需求管理方面的工作。(2)概念设计工具:协助设计人员从用户的角度来看待系统的处理要求和数据要求,并产生一个能够反映用户观点的概念模型(一般采用E—R图形式)。(3)逻辑设计工具:把概念模型中的E—R图转换成为具体的DBMS产品所支持的数据模型。(4)物理设计工具:主要用来帮助数据库开发人员根据DBMS特点和处理的需要,进行物理存储安排,建立索引,实施具体的代码开发、测试工作(例如PL/SQLDeveloper、ObjectBrowserforOracle等)。29、需求分析阶段可分为哪些步骤?数据库设计过程涉及哪些信息?需求分析阶段可分为3个步骤:(1)收集需求。(2)需求的分析和整理。(3)评审分析结果。数据库设计的信息需求:(1)用户需求方面的信息。(2)有关数据库概念设计,逻辑设计和物理设计的信息。(3)数据库实施和维护期间由维护人员收集和整理的信息。30、数据库殴计过程面临哪些困难?数据库设计工具的功能需求有哪些?1)数据厍设计过程中的困难软件开发工作是一项充满挑战性的工作。对于个体的软件开发工作而言,他们所面临的困难主要是用户和软件技术人员之间理解的鸿沟。在我们的生活中同一个单词、同一句话,对不同行业的人会有截然不同的理解。正是这些生活背景和理解方式的差异造成了软件开发工作的巨大困难。解决这个问题的办法是使用标准的方法和直观的图形化工具来描述目标系统。但是对于一个数据库设计团队而言,他们遇到的问题比个体开发时更多也更加复杂,比较常见的有以下几种。(1)无法保证不同的模型之间,一个模型的不同子模之间信息的一致性。造成这种情况的原因是多方面的。有团队成员不同的生活背景、经验和习惯的问题,有数据库设计过程中不同阶段问反复,迭代所造成的版本控制困难,也有用户需求随环境的变化而变化的原因。(2)对于大型系统而言测试更加困难,通常的情况是牵一发而动全身。(3)工作进度难于控制。造成这种困难的原因有两个方面。一是对于软件开发这种智力活动而言,不易准确估计工作量;二是团队设计的过程中协调和沟通困难。(4)文档编制困难。软件开发过程中需要将不同的文档交给不同的用户审阅。要保证不同文档间信息的一致性,以及文档和代码之间的信息的一致性就变得非常困难。(5)版本控制困难。数据库设计过程本身的复杂性和多变性,造成了版本的控制极其困难。2)数据库设计工具的功能需求通过以上对数据库设计的过程以及难点的分析,我们可以发现在这个阶段的功能要求如下。(1)认识和描述客观世界的能力。由于需求分析在软件开发中的地位至关重要,是数据库设计的依据,所以,数据库设计工具对客观世界的描述能力是评价其优劣重要标准。(2)管理和存储数据库设计过程中产牛的各类信息。如成员沟通的信息、需求变更的信息等。(3)根据用户的物理设计,自动生成创建数据库的脚本和测试数据。(4)根据用户的需要,将数据库设计过程中产生的各类信息自动组织成文档,从而最大程度地减少数据库设计人员花在编写文档方面的时间和成本,并保证文档之间信息的一致性。(5)为数据库设计的过程提供团队协同工作的帮助。为团队成员之问提供信息共享和信息沟通的机制;为项目经理提供对项目进度、成本和质量进行监控的手段。31、什么是4GL语言,如何确定一个语言是4GL语言?4GL:即第四代语言,是一种编程语言或是为了某一目的的编程环境。在演化计算中,第四代语言是在第三代语言基础上发展的,且概括和表达能力更强。确定一个语言是否是4GL,主要应从以下标准来进行考察:(1)生产率标准;(2)非过程化标准;(3)用户界面标准;(4)功能标准。32、用户界面设计按工作流程分为哪些部分?用户界面设计按工作流程分为:结构设计、交互设计、视觉设计3个部分。33、用户界面设计主要包括哪些问题?用户界面设计主要包括:(1)系统响应时间(2)用户帮助(3)出错信息(4)命令交互34、用户界面设计有哪些原则?用户界面设计原则有:(1)易用性原则(2)规范性原则(3)帮助设施原则(4)合理性原则(5)美观与协调性原则(6)菜单位置原则(7)独特性原则(8)快捷方式的组合原则(9)排错性考虑原则35、哪些属于平面设计软件?哪些属于网页设计工具?平面设计软件基本可分为三类:(1)第一类图像处理(2)第二类图形绘制(3)第三类排版软件网页设计工具有:(1)MicrosoftFrontPage2000(2)Netscape编辑器(3)AdobePagemill3.0(4)ClarisHomePage3.036、多媒体开发工具有哪些类型?多媒体开发工具类型有:(1)基于时基的多媒体创作工具;典型代表:Director和Action。(2)基于图标或流线的多媒体创作工具;典型代表:Authorware和IconAuthor。(3)基于卡片或页面的多媒体创作工具;典型代表:ToolBook和HyperCard。(4)以传统程序语言为基础的多媒体创作工具;如:VB、VC、Delphi等。37、什么是多媒体开发工具的交互式特性?交互式特性:交互式特性使项目的最终用户能够控制内容和信息流。创作工具应提供一个或多个层次的交互特性。简单转移:通过按键、鼠标或定时器超时等,提供转移到多媒体产品中另外一部分的能力。条件转移:根据if-then的判定或事件的结果转移,支持goto语句。结构化语言:支持复杂的程序设计逻辑,如嵌套的if-then,子程序、事件跟踪,以及在对象和元素中传递信息的能力。38、多媒体开发工具有哪些?多媒体开发工具有:(1)Authorware(2)lconAuthor(3)Action(4)ToolBook(5)Ark39、根据测试方法的不同,测试工具分为哪几类?根据测试对象和目的不同,测试工具分为哪几类?什么是静态测试工具?动态测试工具分为哪几种?根据测试方法的不同,测试工具分为:白盒测试工具和黑盒测试工具。根据测试对象和目的不同,测试工具分为:单元测试工具、功能测试工具、负载测试工具、性能测试工具和测试管理工具。静态测试工具直接对代码进行分析,不需要运行代码,也不需要对代码编译链接,生成可执行文件。静态测试工具一般是对代码进行语法扫描,找出不符合编码规范的地方,根据某种质量模型评价代码的质量,生成系统的调用关系图等。动态测试工具分为:结构测试与功能测试。40、有哪些典型的测试工具?(1)功能测试工具WinRunner(2)性能优化工具EcoScope(3)PC-LINT(4)VectorCAST(5)数据库测试数据自动生成工具——TestBytes(6)WebKing41、根据管理对象的不同,项目管理软件分为哪几种?根据管理对象的不同,项目管理软件分为(1)进度管理(2)合同管理(3)风险管理(4)投资管理等软件。42、项目管理软件选择的标准有哪些?项目管理软件选择的标准有:(1)容量(2)操作简易性(3)文件编制和联机帮助功能(4)可利用的功能(5)报表功能(6)与其他系统的兼容能力(7)安装要求(8)安全性能(9)经销商的支持43、软件配置管理有哪些内容?软件配置管理模式有哪几种?软件配置管理的最终目标是什么?软件配置管理有什么作用?软件配置管理有三个方面的内容:(1)VersionControl——版本控制(2)ChangeControl——变更控制(3)ProcessSupport——过程支持软件配置管理模式主要有4种:(1)恢复提交模式(2)面向改变模式(3)合成模式(4)长事务模式软件配置管理的最终目标是管理软件产品。功能:(1)权限控制(2)版本控制(3)增强的版本控制(4)变更管理(5)独立的工作空间(6)报告(7)过程自动化(8)管理项目的整个生命周期(9)与主流开发环境的集成。44、软件配置管理的核心是什么?量软件配置管理的核心是:版本控制45、SCM工具中,权限控制的主体是谁?其核心概念是行为、行为主体、行为客体。46、UML作为一种语言,它包括哪两个部分?UML的特点是什么?主要有如下4个特点:(1)统一的建模语言(2)支持面向对象(3)支持可视化建模(4)强大的表达能力47、UML图中,各图形化工具的作用是什么?类别图形名称作用静态建模用例图描述系统实现的功能类图描述系统的静态结构对象图描述系统在某时刻的静态结构构件图描述系统系统组成构件上的关系配置图描述系统运行环境的配置情况动态建模顺序图描述系统某些元素在时间上的交互协作图描述系统某些元素之间的协作关系状态图描述某个用例的工作流活动图描述某个类的动态行为48、RUP-裁剪可以分为哪几步?RUP-裁剪可以分为以下几步:(1)确定本项目需要哪些工作流;(2)确定每个工作流需要哪些制品;(3)确定4个阶段之间如何演进;(4)确定每个阶段内的迭代计划;(5)规划工作流内部结构。49、软件产品线的开发有哪些技术特点?软件产品线的开发有四个技术特点:过程驱动、特定领域、技术支持和架构为中心。50、软件工具酶作用的对象是什么?在各个软件开发阶段,软件工具酶作用的对象是什么?软件工具酶作用的对象是:软件底物。在软件开发阶段,软件工具酶作用的对象,或底物不一定相同。在需求分析阶段,软件工具酶作用的对象是用户需求;在设计阶段,软件工具酶作用的对象是用户需求说明书;在编程阶段,软件工具酶作用的对象是详细设计说明书;在测试阶段,软件工具酶作用的对象是程序单元和整个软件系统;在运行维护阶段,软件工具酶作用的对象是整个软件系统;而对于项目管理来说,软件工具酶作用的对象是整个软件开发过程的活动。51、软件工具酶按阶段划分可分成哪几种?软件工具酶按阶段划分可分成:(1)开发阶段(2)一体化程度(3)按功能划分(4)按软件开发方法划分;(5)按产品所属公司划分52、软件工具酶有什么作用?作用:软件开发工具作为酶,它是催化剂,可使用户需求转化为程序的过程加快。软件开发工具作为酶,也是粘合剂,它可以把底物分开,也可把碎片连接起来。这就是酶切和酶连接。53、VisualBasic6.0的工具箱各控件的名称是什么,怎样使用?工具箱:提供一组工具,用于窗体设计时往窗体中放置控件。使用时,只要在所需控件上双击,IDE会自动放置一个该控件于窗体设计器的正中央,然后再调整控件的位置、大小;另一种方法是先单击选择工具箱内某控件,然后在窗体设计器中按住左键不放,划出一个区域,放开左键,此时画下的区域就是所需控件。第二版软件开发工具与环境一、单项选择题1.安装VisualStudio2005,最低硬盘配置3GB2.Dispose方法所在的文件是Form1.designer.cs3.下列正确的C#标识符是Person4.~5的值为25.decemal型数据在计算机内存中占的位数为1286.为用户提供多个选项,用户可依次选中任意数量的是CheckBox7.i=5,执行语句5>7&&i++>4后i的值为58.主菜单控件是MenuStrip9.switch(表达式)中表达式的值不可以为double10.定义或初始化一个规则的整形二维数组的定int[,]a=newint[2,3]11.int型数据在计算机内存中占的字节为412.保存程序集信息的文件是AssemblyInfo.cs13.下列正确的C#标识符是ca_se14.11&3的值为315.多行文本框是RichTestBox16.下面变量初始化正确的是decimald=2.5m17.5>3||2>3&&7<8的结果为true18.i=5,执行语句9>7|i++>4后i的值为619.创建通明窗体的属性是Capacity20.SQL语句中,检索产品名以字母X、Y、Z中任意一个为结尾的产品可使用%[XYZ]《软件开发工具与环境》复习题第1章全身心投入:VisualC#2008编程之旅填空题VisualStudio.NET中的Visual在中文中是可视化的意思。VisualStudio2008是一个完整的开发环境,被称为集成开发环境(或IntegratedDevelopmentEnvironment,IDE)。VisualStudio.NET支持的开发语言有C#.NET、VB.NET、C++.NET、J#.NET。(至少写出三种)。Windows窗体应用程序项目创建标准的Windows应用程序。每个对象都有一组独特的特性称为属性。VisualStudio2008IDE中的“属性”窗口用于修改窗体或控件的属性。通过设置图片框PictureBox的Image属性来显示图像。按钮控件的默认事件是Click事件。名词解释可发布的组件——项目最后编译的应用程序版本,它可以发布给其他人和其他计算机,只要有运行环境不需要开发环境就可以运行。项目——可以编译以创建可发布组件的文件集合。项目有类型有多种,复杂的应用程序可能包含很多项目。解决方案——用于生成应用程序或可发布组件的项目与文件的集合。第2章VisualC#2008导航填空题VisualStudio2008的设计窗口、属性窗口、工具箱、解决方案资源管理器等窗口都有4种主要状态:关闭,浮动、停靠和自动隐藏。要使得将鼠标指向其选项卡时停靠的设计窗口显示而移开鼠标时消失,应将窗口设置为自动隐藏状态。VisualStudio2008的工具箱窗口列出了常见的Windows控件,可以通过将其中的控件拖放到设计窗口的方式设计用户界面。在解决方案资源管理器窗口中,可以选择项目以设置其属性。动态帮助可以根据您当前执行的操作调整显示的帮助信息。在设计环境中访问帮助,可按F1键。设置窗体的背景色应该使用Form类的BackColor属性。用C#程序MessageBox.Show(“Texttodisplaygoeshere.”);可以弹出如图2-1所示的消息框。图2-1消息框名词解释类模块——一种特殊的模块,让用户能够创建面向对象的应用程序。窗体模块——窗体是构成应用程序界面的可视化窗口,窗体模块是一种可用于设计窗口的类模块。用户控件——用户自定义的用于在窗体上设计用户界面的控件。第3章理解对象和集合填空题定义对象状态的特征称为属性;有些属性只能读取不能修改,称为只读属性;有些属性只能修改不能读取,称为只写属性。类中的函数称为方法;方法是对象是可以执行的行为。用类创建一个对象也称为类的实例化。为帮助程序员编程,VisualStudio2008显示一个包含已输入对象的所有属性和方法的下拉列表,这种功能称为智能感知(IntelliSense)。this是是一个保留字,表示该保留字所在类的当前对象。一组相似的对象称为集合。使用对象浏览器可以查看对象的成员。判断题VisualC#.NET是真正面向对象的编程语言。(T)对象的属性可以是另一个对象。(T)名词解释对象——对象是将数据和功能封装为一体的编程结构,公开访问它的唯一方法是通过该编程结构的接口即属性、方法和事件。集合——集合就是对象的集合,集合使得对大量相似对象的操作变得简单,即可以对集合中的元素进行迭代处理。封装——封装就是将函数或类的接口与实现分离,使和函数或类的调用者只需关心接口的原型,无需关心接口的实现。这样客户程序便不依赖于接口实现的变更。第4章理解事件填空题在事件处理程序中编写代码,使得该事件不断被触发,此时便产生了递归调用。所有的事件处理程序一般都有两个参数,其中一个为触发事件的对象的引用,其类型为object,名称为sender,另一个为事件参数,其类型为EventArgs或其子类,名称为e;事件处理程序的返回值一般为void。在TextBox中每输入一个字符或改变TextBox中的文本都会触发TextChanged事件。如果Timer控件的Enabled属性为true,则每隔Interval属性指定的时间间隔(单位为毫秒)触发Tick事件。判断题所有对象都支持同一组事件。(F)名词解释事件处理程序——事件处理程序是一种特殊的方法,对象使用它来告知一些对客户有用的状态变更,事件处理程序的调用比较特珠,通常通过用户与窗体中的控件交互或Windows本身来调用,即通过触发相应的事件来调用,当然也可以用代码语句调用。事件——C#.NET中的事件实际上是对象的一个属性。一般在该属性前加上event关键字。该属性是一个委托类型,可以通过用一个事件处理程序构建一个委托类型的对象赋值给该属性。这样一旦该事件触发,便会调用该事件处理程序。委托——委托是C#.NET中的一种特殊的引用数据类型,其构造函数的参数是一个方法,然后便可以用委托类型的实例来调用该方法。C#.NET中使用委托来实现事件机制。简答题过程驱动与事件驱动编程的区别。答:过程驱动编程时,程序本身完全指明在什么时候执行什么代码,即代码以事先完全确定的路径执行。事件驱动编程中,事件发生的顺序没有预先确定,用户可以通过与程序交互来触发特定的事件,从而控制要执行哪些代码。简要介绍有哪几种方式可以触发事件?答:触发事件的方式有:用户与程序交互;由对象触发事件;操作系统触发事件;VisualC#代码调用事件代码触发事件。第5章创建窗体:基础知识填空题窗体标题栏中显示的文本是由窗体的Text属性决定的。要设置窗体的背景图片,需要设置其BackGroundImage属性。要设置窗体的图标,需要设置其Icon属性。要修改窗体边框的外观和行为,需要设置其FormBorderStyle属性。窗体图标显示的三个位置分别为:标题栏,任务栏和用户按Alt+Tab键时。标题栏比正常标题栏更小的窗口称为工具窗口。要使窗体的最小化和最大化按钮可见,则其ControlBox属性必须设置为true。要将窗体的起始位置在屏幕中居中显示,则需将窗体的StartPosition属性设置为CenterScreen。要将窗体在程序启动时即为最大化显示,则将其WindowState属性设为Maximized,如果要为最小化,则将其设为Minimized,该属性的默认值为Normal。要显示隐藏的窗体,则将窗体的Visisible属性设置为true。相反,要显示该窗体,则要将该属性设置为false,或调用窗体的Hide方法。在C#.NET中,每一个窗体的图标和标题栏文本都会在任务栏中显示,为使得某窗体的图标和标题栏不在任务栏中显示,可将窗体的ShowInTaskBar属性设置为false。在VisualStudio2008中,按F5键调试运行程序,按Ctrl+F5键则不调试运行程序。简答题模态窗体与非模态窗体的区别。答:非模态窗体是不会导致本应用程序其他窗口不能使用的窗体。在C#中使用窗体对象的Show()方法显示非模态窗体。模态窗体显示时,同一应用程序的其他所有窗口都不可用,直到本模态窗体关闭;其他窗体将不会接受键盘或鼠标输入,用户只能处理模态窗体,模态窗体关闭后,用户才可与程序中其他窗体交互。在C#中使用窗体对象的ShowDialog()方法显示模态窗体。第6章创建窗体:高级技能填空题Anchor属性将控件边缘锚定到窗体边缘。布局工具栏包含均匀排列控件和对齐控件的功能。使用布局工具栏的“Tab键顺序”按钮设置窗体上控件的Tab键顺序后,会改变控件的Tab属性。在代码中调用控件的BringToFront()和BringToBack()方法,可以将控件前移或后移,改变控件的堆叠顺序。要创建透明窗体,则要设置窗体的Opacity属性。该属性默认值为100%,意味着窗体完全不透明。要使窗体拥有滚动条,则将其AutoScroll属性设置为true。要使窗体成为MDI父窗体应使其IsMdiContainer属性设置为true。MDI父窗体有ActiveMdiChild属性,通过它可获得对当前活动子窗口的引用。判断题在一系列选中的控件中,第一个选中的控件总是活动控件。(T)简答题简述从工具箱添加控件到窗体中的几种方法。答:有4种主要的方法:双击工具箱中的工具;拖拽工具箱中的工具到窗体中;单击工具箱的工具然后在窗体中绘制;复制并粘贴控件。如果双击工具箱中的工具,它将放在窗体的什么位置?答:放在当前选中的控件上;如果没有选中控件,则放在窗体的左上角。SDI和MDI的区别。答:SDI程序中,每个窗体都与其他窗体平等,窗体间不存在层次关系。而MDI程序包含一个父窗体以及一个或多个子窗体。编程题第7章使用传统控件填空题要显示用户不能编辑的文本应使用标签Label控件,该控件的Text属性决定了其显示的文本内容。要为标签Label分配热键,在其Text属性的热键字符前加&符号。当用户按下Alt键加该热键后,其Tab键顺序紧邻该Label标签的可获得焦点的控件便会获得输入焦点。指定文本框TextBox的TextAlign属性,可以指定控件内文本的对齐方式。对齐方式有Left左对齐、Center居中对齐和Right右对齐三种。只有将文本框TextBox控件的Multiline属性设置为true时才能在其中输入多行文本并调整它的高度。将文本框的ScrollBars属性设置为Vertical、Horizontal或Both,从而给其添加滚动条。水平滚动条仅在WordWrap属性设置为false时才能显示。有时候不希望用户能够与控件交互,可以将其Enabled属性设置为false。要很制用户输入字符的个数,可设置文本框的MaxLength属性,该属性的默认值为32767。要将文本框作为密码框,可以给其PasswordChar属性设置一个字符,这样用户不能看到输入其中的文本,只能看到设置的字符串。尽管其它控件获得焦点,但当用户按回车键时也将触发按钮的Click事件,这样的按钮称为接受按钮。通过设置窗体的AcceptButton属性设置该按钮。取消按钮在用户按Esc键时,其Click事件被触发,不管焦点在哪个控件上。通过设置窗体的CancelButton属性设置该按钮。复选框CheckBox控件用于向用户显示是/否值。单选按钮RadioButton在其所处的容器内是互斥的,即每个容器内只能同时有一个单选按钮被选中。可以使用分组框GroupBox或面板Panel控件作为其容器。可以通过遍历列表框ListBox中的Items属性来访问列表框中的所有项。使用列表框ListBox的Items属性的Insert()方法可以添加元素到列表框中指定的位置,Add()方法将元素添加到列表框最后一个元素之后,Remove()方法删除指定字符串,RemoveAt()方法删除指定索引处的元素。通过列表框ListBox的SelectedItem属性返回列表框中选中的项,其SelectedIndex返回选中项的索引。当列表框的Sorted属性设置为true时可对其中的项排序。将组合框ComboBox的DropDownStyle属性设为DropDownList,则只能从列表选择项。如果将其设为DropDown,则即可以从列表中选择项,也可以输入列表中没有的项。如果将组合框ComboBox的DropDownStyle属性设为DropDown,然后将AutoCompleteSource设为ListItems,将AutoCompleteMode设为Suggest,则输入过程中会自动列出下拉表框中前端匹配的项,如果将AutoCompleteMode设为Append,则输入过程中会自动列出下拉列表框中最接近的项。第8章使用高级控件填空题Timer控件的Interval属性以毫秒作为时间单位。Tab控件的TabPages属性可以添加新选项卡。返回Tab控件当前选中的选项卡的索引使用其属性SelectedIndex。当用户切换了选项卡,会触发其SelectedIndexChanged事件。ListView控件的显示选项主要有五种,设置方法是设置其View属性,其五种属性值分别为LargeIcon,SmalIcon,Tile,List,Detail要查看ListView控件中的列,必须将View属性设置为Details。ListView中的元素保存在Items中,其中的每一个元素的图标由其ImageIndex属性决定,文本由其Text属性决定,可加入到ListView控件元素中的额外数据列应存储每一个Items属在SubItems集合属性中。ListView在Details模式下,其列标题的内容由Columns属性决定。要判断ListView有多少元素被选中,应使用其SelectedItems的Count属性。要在ListView中增加元素,应使用其属性Items的Add方法,删除元素应使用其Remove方法,清除所有元素应使用其Clear方法。TreeView控件的每个元素称为node(节点),要在TreeView控件tvFunc中增加一个根节点“VisualC#”,其语句为:tvFunc.Nodes.Add(“VisualC#”);。删除节点用其Nodes属性的Remove方法,清除所有节点使用其Clear方法。判断题应使用不同的ImageList控件来存储大小不同的图像。(T)使用ImageList控件的目的主要是为了在其他类型的控件之间共享其中的图片。(T)默认请况下,ImageList控件的TransparentColor设置为Transparent,所以其图片是透明的,可以将该属性设置为一种颜色值。(T)ListView允许链接到两个ImageList:一个用于大图标,一个用于小图标。(T)第9章给窗体添加菜单和工具栏填空题要创建某菜单项上访问键,在字符前面使用&字符。要在菜单项旁边添加复选标记,应设置菜单项的Checked属性。工具栏控件的类名为ToolStrip。状态栏StatusStrip控件用于在窗体底部向用户显示信息。判断题窗体菜单栏使用ContextMenuStrip控件创建。(F)工具栏上的每个按钮都有自己的Click事件。(T)第10章创建和调用方法填空题一个或一组过程以循环的方式不断地互相调用称为递归。定义一个类的实例方法OpenPicture,有一个string类型参数filename,无返回值,该方法可以被任务一个类访问,请写出该方法的原型:publicvoidOpenPicture(stringfilename)。判断题要访问类的方法,必须首先创建一个对象。(F)名词解释类——类是将数据与功能封装在一起的一种编程结构,它是创建对象的模板。对象——对象是类的实例,是由类模板创建的。类是将数据与功能封装在一起的一种编程结构。方法——方法是类中的函数过程,表达了封装在类中的功能。params参数(*)——params是C#的一个关键字,用来实现可以有任意多个形参的方法。一个函数中只能有一个params参数,并且必须作为最后一个参数出现,其实参是一个数组类型。简答题静态成员和实例成员的区别。答:实例成员与类的实例相关联,只能用类的实例即对象来访问调用实例成员;静态成员属于整个类,而不是类的具体实例,静态成员只能由类来访问。简述private、protected、public、internal修饰符的访问权限。答:private:私有成员,在类的内部才可以访问。protected:保护成员,该类内部和继承类中可以访问。public:公共成员,完全公开,没有访问限制。internal:在同一命名空间内可以访问。按引用和按值传递参数的区别。值类型与引用类型的区别。答:值类型的实例在内存中占用实际的存储空间,如果定义了一个值类型的实例,则这个实例将实际存在于内存中。定义引用类型的实例时,C#并不立刻在内存中开辟空间保存实际数据。一个引用类型的值,只是一个到该类型的实例的引用信息。ref参数和out参数的区别。(*)答:ref参数与out参数都是传引用的参数,即如果在被调函数中更改了参数的值,主调函数可以获得该更改的值。但ref参数在被调函数中可以不需给参数赋值,而out参数则在被调函数中一定要给参数赋值,即一定要输出一个值。第11章使用常量、数据类型、变量和数组填空题ushort类型的取值范围是0到65535。货币应使用decimal数据类型。object数据类型是一种通用的数据类型,可以存储任何类型的数据,因为任何一种数据类型都是从它继承而来。通过使用常量而不直接使用字面量可以避免幻数的出现。数据变量stringstrMyArray[5]中,第一个索引是0,最后一个索引是4。声明一个10行10列的二维整型数组iarr:int[,]iarr=newint[10,10];。声明一个包含10个元素的字符串锯齿数组strarr:string[][]=newstring[10][];。作用域描述了常量、变量和过程的可见性。C#中有三种作用域,分别是:块级,方法级和私有作用域。选择题以下标识符中,正确的是:(A)A._TimeB.typeofC.3aD.a3#以下标识符中,错误的是:(C)A._a97B.t234C.3_579D.nMemberHeight以下类型中,不属于值类型的是:(D)A.整数类型B.布尔类型C.字符类型D.字符串类型以下类型中,属于值类型的是:(CD)A.类类型B.接口类型C.结构体类型D.枚举类型判断题一般说来,作用域应该尽可能小。(T)第12章执行算术运算、字符串操作和日期/时间调整填空题13.6%4.3=0.7。获取字符串strFullName中第5个字符开始的10个字符,其语句为:strFullName.Substring(4,10);。返回字符串strFullName的长度:strFullName.Length。返回字符串strFullName中子串“ncusc”的位置:strFullName.IndexOf(“ncusc”);。删除字符串strFullName中的前、后空格:strFullName.Trim();删除字符串strFullName中第5个到第10个字符:strFullName.Remove(4,6);替换字符串strFullName中的字符串ncusc为soft.ncu:strFullName.Replace(“ncusc”,”soft.ncu”);返回当前时间:DataTime.Now。定义一个日期时间类型变量,使其表示今天的日期(2010年10月19日):DateTimedtToday=newDateTime(2010,10,19);。假设dtToday表示当天的日期时间型变量,返回上个月的今天:DateTimedtNewDay=dtToday.AddMonths(-1);。假设dtToday表示当天的日期时间型变量,获得现在是星期几:intiResult=dtToday.DayOfWeek;。假设dtToday表示当天的日期时间型变量,输出期长日期格式:dtToday.ToLongDateString();。第13章使用VisualC#代码做出决策判断题在C#的switch语句中,绝对不可能执行一次执行多个case语句的代码。(T)结构化程序设计的三种结构是顺序结构、选择结构和循环结构。选择题已知a、b、c的值分别为4、5、6,执行下面的程序段后,判断变量n的值为:(C)if(c<b)n=a+b+c;elseif(a+b<c)n=c-a-b;elsen=a+b;A.3B.-3C.9D.15C/C++与C#中的switch语句的区别在于:(B)C#中同一个switch语句中可以有两个或多个case标签后面的常量表达式具有相同的值,C/C++中则不行。C#中如果省略switch语句中除最后一个分支外的任何一条break语句,都将会引起程序编译错误,但C/C++不会由此引起程序错误。C#中,多个case可以共用一组执行语句,这是C/C++中所不允许的。C/C++中,多个case可以共用一组执行语句,但C#中是做不到的。在C/C++和C#中,switch语句中的各条case语句及default语句的出现次序不是固定的,只是在C/C++中它们出现次序的不同不会对执行结果产生任何影响,但在C#中则会对执行结果产生影响。第14章使用循环提高效率选择题While语句与do…while语句的区别在于:(D)while语句的执行效率较高。do…while语句编程较复杂。无论条件是否成立,while语句都要执行一次。do…while循环是先执行循环体,后判断条件表达式是否成立,而while语句是先判断条件表达式,再决定是否执行循环体。下面有关for语句的描述有错的是:(A)使用for语句时,可以省略其中的某个或多个表达式,但不能同时省略全部3个表达式。在省略for语句的某个表达式时,如果该表达式后面原来带有分号,则一定要保留它所带的分号在for语句的表达式1中,可以直接定义循环变量,以简化代码。For语句的表达式可以是逗号表达式。下面有关break、continue、goto语句描述正确的是:(D)Break语句和continue语句都是用于终止当前整个循环。使用break语句可以一次跳出多重循环。使用goto语句可以方便跳出多重循环,因而编程时应尽可能多使用goto语句。Goto语句必须和标识符配合使用,break和continue则不然。判断题要使用for循环时,必须在设计时知道循环变量的起始值和终止值。(F)C#不允许嵌套循环语句。(F)第15章调试代码填空题编译错误将阻止VisualC#编译和运行代码。运行错误又能叫异常。//字符用于表示单行注释/**/表示在其中的文本是注释。要使代码在特定语句处停止,可设置断点。输出调试信息可以用:Debug.WriteLine()。判断题必须在try结构中指定catch部分。(F)必须在try结构中指定finally部分。(F)必须在try结构中指定catch部分和finally部分之一。(T)简答题解释出现在代码编辑器灰色区域中的黄色箭头与红色圆圈的作用。答:黄色箭头表示在调试过程中将要执行的下一条语句;红色圆圈表示断点——到达这里后停止运行。第16章使用类设计对象名词解释字段——类的数据成员,一般为私有的,有静态字段和实例字段两种。只读字段——字段的一种,用readonly关键字说明,只能在初始化和构造函数中给它赋值,在其它方法中不可改变其值。构造函数——在对象创建时自动调用的函数。析构函数——在对象释放时自动调用的函数。封装——把复杂的概念包装成简单的形式,并由明确规定的接口,作为与外界唯的联系。继承——面向对象方法中实现一组类中共有性质的共享和复用的有效机制,即派生类可以共享基类的所有数据和功能,并可以增加自己的数据和功能。多态——一个类中或在基类与派生类之间存在多个同名的方法,称为多态。把抽象功能和目的相同,而具体实现因不同情况而异的方法命名为同名方法,符合面向对象程序设计中抽象、提升概念、封装、隐藏细节的特点,从而提高了程序的简洁性和可读性,降低了类和程序模块直接的相互耦合和依赖。简答题早期绑定与晚期绑定接口与对象的绑定有两种形式:早期绑定与晚期绑定。早期绑定是在编译阶段完成的绑定,晚期绑定是在运行阶段发生的绑定。重载与覆盖的区别。答:覆盖和重载是实现多态的两种方式。覆盖是子类重新定义父类中已有的方法,重载是在一个类内部定义与已存在的方法同名但是参数列表不同的方法。接口与抽像类的区别。答:接口是用来实现类间多重继承功能的结构。接口与类相似,但是接口中只能包括常量和抽象方法。定义接口相当于定义了一组抽象的功能、属性集合,可以使程序的类层次结构更加合理,并实现多重继承。可以定义类实现某接口。实现某接口的类必须实现该接口中的所有抽象方法。抽像类依然是一种类,即是一种将数据与功能封装在一起的编程结构。只不过抽像类中一定存在着抽像方法,即没有实现的方法。无法构建抽像类的实例,但可以构建其子类(具体类)的实例并用抽像类的引用来引用它。抽像类不允许多重继承。简述类中可包含哪些成员?答:C#类包含的成员有:常量,字段,方法,构造函数,析构函数,属性,事件,索引器。除常量外的成员都有实例成员与静态成员两种。简述接口中可包含哪些成员?答:C#接口中可以包含的成员有:常量,方法,属性,事件和索引指示器。第17章与用户交互填空题在消息框中显示文本“你确认要删除吗?”,其标题栏为“提示”,显示一个询问图标和“是”、“否”两个按钮并将“否”按钮作为默认按钮,写出判断其返回值是否为OK的语句:if(MessageBox.Show(“你确认要删除吗?”,”提示”,MessageBoxButtons.YesNo,MessageBoxIcon.Question,MessageBoxDefaultButton.Button2)==DialogResult.OK){}。第18章使用图形填空题在Windows操作系统中,负责将文本、线条和图形等绘制到屏幕上的代码称为图形设备接口(GraphicsDeviceInterface,GDI)。在.NET中,使用Graphics对象绘制(二维)图形。要设置Graphics对象以直接在窗体上绘制图形,应调用窗体的CreateGraphics方法返回一个Graphic对象。使用Pen对象定义线条的特征,使用Brush对象定义填充图案。会随用户的Windows设置调整的颜色称为系统颜色。使用Rectangle对象绘制形状的边界。使用Rectangle的式DrawEllipse方法绘制椭圆和圆。使用Graphics对象的DrawString()方法输出文本。为确保图形在窗体上持久化,必须在窗体的Paint事件中绘制图形。第19章执行文件操作填空题OpenFileDialog与SaveFileDialog对象的Filter属性用于设置文件过滤器,其中用|将过滤器描述与扩展名分开。对文件进行操作的类一般在System.IO命名空间中。对文件夹进行操作的类名为System.IO.Directory。判断题调用OpenFileDialog对象的ShowDialog方法且用户单击“打开”按钮之后便已打开了一个文件。(F)用System.IO.File.Delete()删除的文件将被发送到回收站。(F)第20章处理文本文件和注册表填空题在Windows注册表中,用户配置信息应存储在HKEY_CURRENT_USER节点下。要在注册表的HKEY_LOCAL_MACHINE的Software节点下创建一个ncusc的节点,完整的语句(包含完整的命名空间)是Microsoft.Win32.Registery.LocalMache.CreateSubKey(@“software\ncusc”);要删除注册表中的键,DeleteSubKey()方法删除一个键,仅当该键没有子键时才管用;DeleteSubKeyTree()方法删除一个键及其所有子键。使用StreamWriter类写入文本文件;使用StreamReader类读取文本文件。SreamReader的ReadToEnd方法一次性读取文本文件的全部内容。第21章使用数据库填空题DBMS的含义是DatabaseManageSystem数据库管理系统。SQL有DDL,DML,DCL三种基本语句形式。.NET平台下的数据库访问技术称为ADO.NET。在.NET框架中,使用的数据访问的命名空间是System.Data。访问SqlServer数据库的命名空间为System.Data.SqlClient,访问其它数据库则可以通过System.Data.OleDb命名空间访问。在DataSet中包含DataTable对象以表示一个二维表,其成员Rows属性是DataRow类型的集合,表示表中的行。使用DataAdapter对象的Fill方法将数据填充到DataSet的DataTable中。如果要访问SqlServer数据库,一般使用SqlConnection对象连接到数据源。CommandBuilder对象可以为其DataAdapter对象自动生成数据更新、删除和插入的SQL语句。判断题Access、Foxpro、Paradox都属于桌面数据库。(T)SQLserver、Oracle、Sybase都是大型数据库管理系统。(T)SQLserver不属于关系数据库管理系统。(F)SQL的DDL是数据库定义语句。(T)SQL的DML是数据控制语句。(F)简答题ADO.net常用的对象有哪些?DataSet和DataReader的区别是什么?(7分)答:ADO.NET常用的对象有:Connection,DataAdapter,Command,CommandBuilder,DataReader,DataSet,DataTable,DataView,DataRow,DataColumn等。DataSet是相当于一个临时数据库,可以保存数据库表以及表之间的关系,数据集中的数据表可以增加、删除、修改和过滤,可以前向和后向滚动。DataReader只是映射一张二维表的数据,其数据是只读的,不可更新,并且只能前向滚动,不能后向滚动。第22章使用自动操作控制其他应用程序填空题使用来自其他应用程序的对象的操作称为自动操作。暴露对象供其他应用程序使用的程序称为服务器,而而用其它应用程序对象的程序称为客户端。要调用自动操作服务器中的对象,必须添加服务器类型库的引用。如果在“添加引用”对话框中没有找到自动操作服务器的类型库,最可能的原因是该自动操作服务器没有安装。要引入与Excel进行互操作的命名空间并将其命名空间定义别名Excel,则其C#语句为usingExcel=Microsoft.Office.Interop.Excel。第23章部署解决方案填空题VisualStudio2008提供了两种安装技术:ClickOnce和WindowsInstaller。用户可以从网页、网络文件共享或CD-ROM等媒体安装ClickOnce程序。使用发布向导创建ClickOnce程序。判断题ClickOnce程序可自动更新。(T)ClickOnce程序比WindowsInstaller更灵活。(F)第24章广阔的视野名词解释.NET框架(.NETFramework)——组成微软.NET组件和技术统称为.NET框架。.NET框架包含大量的类和组件,如通用语言运行时、微软中间语言和ADO.NET等。通用语言运行时(CommonLanguageRuntime,CLR)——是.NET框架中支持程序得以在目标计算机上运行的基础平台,它由所有应用程序之间的共享代码组成。微软中间语言(MicrosoftIntermediateLanguage,MSIL)——在.NET中,任何一种语言开发的程序都将被编译成中间语言。当运行程序时,通用语言运行时将中间语言编译成本地代码运行。命名空间(namespace)——命名空间是将所有类创建层次结构的一种编程机制,有助于避免名称冲突,即在不同命名空间中允许标识符同名,命名空间实际上创建了类的作用域。通用类型系统(CommonTypeSystem,CTS)——通用类型系统确保所有.NET应用程序都使用相同的数据类型,它提供了自描述的类型信息(即元信息),并控制所有的数据操作机制,使所有.NET应用程序中的数据操作都以相同的方式进行。垃圾回收——垃圾回收机制是一种计算机内存等资源管理的一种机制,即应用程序只管创建对象,对象用完后由垃圾回收器统一释放对象占用的内存与资源并加以回收。这样,减除了程序员负责自己管理内存的苦恼,避免了内存泄漏,保证的数据安全。.NET中的垃圾回收机制是由垃圾回收器监视程序使用的资源,当消耗的资源达到预定义的阈值后,垃圾回收器开始寻找没有使用的对象并将其销毁并释放对象占用的内存与资源。第三版《软件开发工具》串讲笔记第一章绪论重点背诵:1、对于CASE工具有两种理解,一种是“计算机辅助软件工程”,另一种是“计算机辅助系统工程”。2、软件开发工具是引导人们建立正确、有效的概念模式的一种手段。3、从几十年软件开发工具发展历史中,可以看到软件开发工具一个值得注意的特点是多样性和趋同性的并存。4、进入二十一世纪以来,软件开发工具的发展有两个鲜明的特点,第一个特点是面向网络,另一个特点是开源软件的兴起和运用。5、当前我们所要开发的信息系统不同于以前。其重要特征是具有复杂性、多样性和相互关联性。1.1软件开发工具的由来简述软件开发工具的范围?在高级程序设计语言(第三代语言)的基础上,为提高软件开发的质量和效率,从规划、分析、设计、测试、成文和管理各方面,对软件开发者提供各种不同程序帮助的一类新型软件。(2)软件开发工具的发展过程包括以下四个阶段:工具产生之前、通用工具的使用、专用工具的出现、一体化工具的出现。论述工具产生之前,第一代到第四代程序设计语言的主要特征?1)第一代机器语言阶段:使用“0”和“1”代码进行编程,难于阅读,难于维护,而且程序高度依赖于计算机硬件,难于移植;2)第二代汇编语言:使用助记符来编写程序,由汇编系统将汇编指令转化为机器指令,编程工作量大大降低,但依然依赖于计算机硬件。与此同时,操作系统的出现从另一方面改善了人们应用计算机的条件;3)第三代高级程序设计语言,高级语言突破了与机器指令一一对应的限制,实现了对机器的独立性,从而大大提高了程序的可移植性。程序员需要逐行编写语句来实现算法的过程,因此它属于过程化的语言;4)第四代语言(4GL)是非过程化的程序设计语言,用户只说明要求做什么,而把具体的执行步骤交由软件自动执行。5)利用通用软件作为辅助工具的阶段利用文字处理软件来编写文档,利用绘图软件来绘制流程图。6)专用软件开发工具阶段专用软件开发工具是面对某一工作阶段或工作任务的工具,优点是能提高软件开发的质量和效率;缺点是一致性的保持,对软件开发缺乏全面的、统一的支撑环境。7)集成的软件开发工具阶段产生的背景:集成的软件开发工具称为软件开发环境,是指包括支持全过程、全阶段的软件开发工具。以往的专用软件开发工具对软件的开发缺乏全面的、统一的支撑环境。这些零散地、分散地支持各个工作阶段、各项具体工作的专用工具之间没有有机地联系起来,必然会造成冲突与矛盾,以致抵消了工具带来的益处。这种情况导致了集成化软件开发工具的产生。(3)用通用软件辅助软件开发的缺点?答:用通用软件来帮助软件开发人员编写文档或画图可以减少不少工作量,但是这种帮助实在是太表面、太初步了。用通用软件帮助软件开发有三个主要的弱点。1)有许多工作是通用软件所无法完成的;2)用通用软件完成某些工作,只能表现出其表面的形式,而不能反映其逻辑内涵,只能做到“形似”,不能做到“神似”;3)难于保持一致性。1.2软件开发工具的概念(4)软件开发工具的概念、地位及作用软件开发工具的概念:在高级程序设计语言(第三代语言)的基础上,为提高软件开发的质量和效率,从规划、分析、设计、测试、成文和管理各方面,对软件开发者提供各种不同程序帮助的一类新型软件。其要点是:1)它是在高级程序设计语言(第三代语言)之后,软件技术进一步发展的产物;2)它的目的是在人们开发软件中给予各种不同方面、不同程度的支持或帮助;3)它支持软件开发的全过程,而不是仅限于编码或其它稳定的工作阶段。软件开发工具的地位:软件开发工具的提出与使用,是软件技术发展的一个新阶段,它是软件发展的必然趋势,是软件技术发展到一定阶段的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论