您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 咨询培训 > GIS集成与开发复习题
一、名词解释1.COM是组件式对象模型(ComponentObjectModel)的英文缩写,是组件之间相互接口的规范,是OLE(ObjectLinking&Embedding)和ActiveX共同的基础,其作用是使各种软件构件和应用软件能够用一种统一的标准方式进行交互。2.组件:是一个可重用且接口符合特定标准的模块(Module),它是由一组处理过程、数据封装和用户接口组成的业务对象。3.GIS组件:遵循COM接口,具有GIS空间信息处理功能,用于进行二次开发的二进制模块。这种特定的组件称为GIS组件。4.对象(Object):对象是面向对象的基本单位。是一个拥有属性、行为和标识符的实体。对象是类的实例,对象的属性和行为在类的定义中定义。5.类(Class):类是一组对象的描述,这一组对象有共同的行为和属性。6.属性(Attribute):描述对象的特征,在具体环境中属性有其确切的对应值。7.方法(Method):作为类的一部分进行定义,可以用来改变对象的属性,或用来接收来自其他对象的信息以及向其它对象发送信息。8.对象:是面向对象编程的核心部分,是实际存在的具体实体,具有明确定义的状态和行为。9.面向对象(ObjectOrientation)是一种软件开发方法,它包括利用对象进行抽象和封装的类、通过消息进行的通信、对象的生命周期、类层次结构和多态技术等。10.抽象类(AbstractClass):不能用于创建对象,但可以用来指定子类。(通过类型继承)。特点:不可创建,不可实例化;把一些类共同的属性和方法提取出来,用其它类来继承。11.组件类(CoClass):可以直接创建对象,用New关键字创建对象或者从别的对象获得运行实例。特点:可创建的;实例化。12.投影坐标系统(Projectioncoordinatesystem)是将三维地理坐标系统上的经纬网投影到二维平面地图上使用的坐标系统。13.地理坐标系统(GeographicCoordinateSystem),也可以称为真实世界坐标系,是确定地物在地球上位置的坐标系,以经纬度为地图的存储单位。14.原型法:开发人员在初步了解用户需求的基础上构造一个应用系统模型,即原型,用户和开发人员在此基础上共同反复探讨和完善原型,直到用户满意为止。原型法开发信息系统包括以下几个阶段:(1)确定用户的基本需求(2)开发初始原型(3)利用原型来提炼用户需求(4)修正和改进原型15.生命周期法:就是要求将信息系统的开发工作,从开始到结束划分为若干个阶段,并预先规定好每个阶段的任务,再按一定的准则来按部就班地逐一完成。二、简答题1、软件危机的主要体现以及GIS系统开发注意问题。P3阶段主要内容开发软件对软件开发成本和进度的估计不准确软件质量不高用户接受度不高软件产品开发效率低相关的技术文档资料不完备软件可维护性、重用性和可扩展性不高维护软件数据不能得到及时的更新系统需求变更所要求的系统升级不能得到实施网络安全维护得不到贯彻执行GIS系统开发注意问题:开发前中后2、GIS设计的特点。P7○1GIS处理的空间数据:数据量庞大;实体种类繁多;实体间的关联复杂。○2GIS设计过程需要:分析系统的业务流;分析系统所涉及的地理实体类型以及实体间的关系;采用相关的地理数据模型表达这些关系。○3GIS设计以空间数据为驱动:GIS设计以数据为导向进行系统建设系统的功能设计以提高数据的存储、分析和处理效率为原则○4GIS工程投资大、周期长、风险大、涉及部门繁多。因此,在GIS设计中,项目计划管理是一个十分重要的部分○5在项目计划管理中,需要估计系统建设的投资效益;评估系统建设的风险性和必要性;制定系统的建设进度安排,保证系统建设的高效性;建立系统建设的组织机构和进行人员协调。3、GIS系统设计三种方法及比较。P39设计方法特性结构化生命周期法原型法面向对象开发的方法开发思想划分六个阶段,并规定它们自上而下,相互衔接的固定次序借助原型(它反映了最终系统的部分重要特性)来辅助软件开发将客观世界看成相互联系的事物(即对象)组成,以对象为单元进行设计开发开发过程线性、固定次序简单到复杂、部分到全面线性、迭代性和无间隙性开发模式整体开发模式。下一阶段开始前完成上一阶段所有细节非整体开发模式。推迟某些阶段的细节工作,从而较早产生工作软件非整体开发模式,分析阶段由底向上提取对象,实现阶段自顶向下建立对象驱动机制文档驱动需求的可变性和模糊性以对象作为驱动可见性开发过程系统不可见通过试用原型进行沟通开发过程系统不可见优点是一种较为成熟和完善的管理模式,整体性好具有一定灵活性和可修改性;增进了开发人员和用户对系统需求的理解与人类思维方法一致,便于描述客观世界;开发的软件性能稳定、易于重用和维护缺点缺乏灵活性;难修改和维护;模块重用性差;开发周期长整体性差;由于不断地对原型进行修改完善,工作的重复率高,工作量大对象和实体设计存在盲目性;对象间的消息传递不能完整体现系统总体功能;系统结构性较差适用性功能和性能明确完整、无重大变化的软件开发需求不明确,设计方案有一定风险的中小型软件开发数据结构复杂、事物联系密切的软件开发4、GIS根据内容可分为两大基本类型。P41○1指应用型地理信息系统,以某一专业领域或工作为主要内容,包括专题地理信息系统和区域综合地理信息系统。例如:公交线路查询系统、矿山资源管理系统、土地规划管理系统等。○2工具型地理信息系统,即GIS工具软件包,具有空间数据输入、存储、处理、分析和输出等GIS基本功能。例如:ArcGIS、MapInfo、MapGIS、SuperMap等。5、GIS常用的开发模式优缺点、适用范围。P42○1独立开发模式:也称底层开发,指不依赖于任何GIS工具软件,从空间数掘的采集、编辑到数据的处理分析及结果输出,所有的算法都由开发者独立设计,然后选用一种程序设计语言(如C++、Delphi等),在一定的操作平台上编程实现。优点:无须依赖任何商业GIS工具软件,可以在某些情况下减少开发成本,功能上不受限制。缺点:开发难度较高,延长开发周期,往往因受时间和财力的限制,使其在功能上很难与商业化的GIS工具软件相比。适用范围:一般的应用型GIS很少采用这种开发方式,它主要存在于GIS发展初期(很多大型的工具型GIS都是由原来的应用型GIS发展来的,例如国内的MapGIS)。但在一些特殊部门(如:军事、研究单位等),由于安全机密性和特殊的功能需要,独立开发方式被广泛地采用。○2宿主型开发模式:也称单纯/扩展式二次开发,指完全借助于GIS平台软件提供的开发语言进行应用系统开发,开发出自己的针对不同应用领域的应用程序。优点:省时省心,可以快速达到使用者的目的,不需要使用者具有很专业的GIS二次开发能力,也大大缩短了开发周期、减少精力与财力的投入。缺点:宏语言,作为编程语言功能相对很弱,用来开发应用程序无论从界面到功能上都仍然不尽如人意。适用范围:一般的应用型GIS也很少采用这种开发方式,它主要应用于简单的功能扩展。当用户购买GIS软件后,如发现某些功能不能完全满足自己的需要,可以利用该GIS软件提供的宏语言来扩展功能。○3集成二次开发模式:指将GIS平台软件提供的动态链接库(DLL)或组件与通用软件开发工具(如VisualStudio.NET、VisualC++、VisualBasic、Java等)进行集成,开发满足特定需求的应用GIS系统。优点:不但可以简化开发难度,节约开发成本,也基本克服了功能实现单一的弊端。缺点:一定程度上还是局限于所选用的GIS二次开发平台,购买GIS二次开发平台也要花费较大的费用。所以需要合理选取GIS二次开发平台及其提供的功能模块。适用范围:这种应用型GIS开发方式被广泛的应用到各行业,已成为GIS应用系统开发的主流方式。6、三种开发模式的比较。P53○1独立开发难度太大○2宿主型二次开发受GIS平台所提供的脚本语言的限制○3GIS组件开发模式结合了GIS平台软件与可视化开发平台的组件开发模式的优点。利用GIS组件实现对空间数据库的管理、分析功能,又可以利用其它可视化开发平台提供的丰富的、功能强大的编程组件和环境,不仅能大大提高应用系统的开发效率,而且使用可视化软件开发工具开发出来的应用程序具有更好的用户界面,更强大的数据库功能。可靠性好、易于移植、便于维护,学习周期较短,容易上手。7、组件式GIS基本思想及特点。P60基本思想:组件式GIS的基本思想是把GIS的各大功能模块划分为几个控件,每个控件完成不同的功能。各个GIS控件之间,以及GIS控件与其它非GIS控件之间,可以方便地通过可视化的软件开发工具集成起来,形成最终的GIS应用。控件如同一堆各式各样的积木,他们分别实现不同的功能(包括GIS和非GIS功能),根据需要把实现各种功能的“积木”搭建起来,就构成应用系统。组件式GIS特点小巧灵活、价格便宜在组件模型下,各组件都集中地实现与自己最紧密相关的系统功能。在保证功能的前提下。系统表现的小巧灵活,而其价格仅是传统GIS开发工具的1/10。开发简捷由于GIS组件可以直接嵌入MIS开发工具中。广大开发人员可以自由选择自己熟悉的开发工具。大众化组件技术已经成为业界标准,用户可以像使用其他ActiveX控件一样使用ComGIS,是非专业的普通用户也能开发和基础GIS应用系统。与专业的GIS客户端软件相比,采用组件技术不可避免的带来效率上的相对低下,这在访问超大空间数据(如大数据量的遥感图象)的时候表现得尤为明显支持的空间数据量有限支持的功能有限,由于是构件,只覆盖了GIS系统的部分功能,于是对于特殊领域,它就显得无能为力8、ArcEngine开发包三个主要的集合内容、举例。P107控件——是ArcGIS的可视化用户界面组件,它们能够嵌入你的应用程序中。例如,地图控件(MapControl)和目录表控件(TableofControl)能够加入定制的程序中来表现交互式地图。工具条和工具——包含一组GIS工具,它们用来与地图和地理信息进行交互,如漫游、缩放、识别和选择。工具出现在应用程序界面的工具条上。工具简化了定制程序的构建过程,开发者能够很容易地将选中的工具拖放到他们的程序界面上。对象库——是逻辑分组的AO编程组件,范围从空间几何到制图、GIS数据源和Geodatabase。程序员能够在多平台的IDE中使用它们,来建立从简单到复杂的应用程序。这些用来构建ArcGISDesktop和ArcGISServer的基础库能够在常用的开发环境中使用(例如.NET、C++、Java和COM)9、AE与AO联系与区别。P120联系:ArcEngine包括核心AO的功能,是对AO中的大部分接口、类等进行封装所构成的嵌入式组件AE中的组件接口、方法、属性与AO是相同的区别:开发环境:AO必须依赖ArcGISDesktop桌面平台,即购买安装了ArcGISDesktop的同时,安装AO,才能利用其进行开发;AE是独立的嵌入式组件,不依赖ArcGISDesktop桌面平台,直接安装AERuntime和DeveloperKit后,即可利用其在不同开发语言环境下开发功能:AO的功能更强大,AE的功能相对弱些,AE不具备AO的少部分功能10、地图分析类库。P137Location类库:Location类库包含支持地理编码和操作路径事件的对象。NetworkAnalysis类库:NetworkAnalysis类库提供用于在地理数据库中加载网络数据的对象并提供对象用于分析加载到地理数据库中的网络。GeoAnalyst类库:GeoAnalyst类库包含支持核心空间分析功能的对象。这些功能用在SpatialAnalyst和3DAnalyst两个类库中。3DAnalyst类库:3DAnalyst类库包含操作3D场景的对象,其方式与Carto类库包含2D地图对象类似。GlobeCore类库:GlobeCore类库包含操作globe数据的对象,其方式与Carto类库包含操作2D地图的对象类似。SpatialAna
本文标题:GIS集成与开发复习题
链接地址:https://www.777doc.com/doc-2874177 .html