营销网络
建言献策——加入欧宝官网体育app
欧宝官网体育app:中级应用能力考试小测验:GIS应用开发基础
发布时间:2022-08-20 04:33:19 来源:欧宝app下载 作者:欧宝体育官方首页

  一个大型实用化地理信息系统的外壳由若干个技术部分组成:空间数据库管理系统、属性数据库管理系统、模型库管理系统、知识库管理系统等。

  1)全部自行开发:根据系统需要的功能,编写所有的程序。用这种方式建立的系统外壳,其各组成部分之间的联系最为紧密、综合程度和操作效率最高。这是因为程序员可以对程序的各个方面进行总体控制。但由于地理信息系统的复杂性,工作量是十分庞大的,开发周期长,并且其稳定性和可靠性难以保证。地理信息系统发展初期一般采用这种方案,但目前地理信息系统的开发已很少采用这种方案。

  2)全部利用现有软件:目前﹐商业化的地理信息系统通用软件和DBMS已经很成熟,模型库管理系统还在发展中,但模型分析软件包很多。编写接口程序把购买的现有软件结合起来,建成系统外壳。用这种方式开发系统外壳的周期短,工作量小,系统的稳定性和可靠性高。用户可以把精力集中在特定的专业应用上。缺点是结构松散,系统显得有些臃肿,操作效率和系统功能利用率较低。这种方案目前采用的较多。

  3)部分自行开发:购买部分软件,自行开发部分软件,来建设系统外壳。这种方案又分为两种情况,其一,购买地理信息系统通用软件和DBMS软件,编写专业分析模型软件和接口软件,开发模型库管理信息系统;其二,利用软件商提供的地理信息系统开发工具,如SDE(ESRI提供),以及应用接口工具API,结合其它开发工具进行开发。前者在目前的大型实用地理信息系统开发中较多采用。后者在目前可用来开发小型实用性地理信息系统。

  (1)基于数据交换的简单综合方式:地理信息系统和模型是两个完全分开的系统,二者的用户界面一般是分开的,但共享数据库和数据文件。地理信息系统与模型系统之间的联系只有数据交换,即地理信息系统预处理的数据作为模型系统的输入,而模型分析的输出数据用地理信息系统来显示。这是一种最通用的方法,因为利用现有的软件只需作较少的修改,只要文件格式和输入输出一致就可以。通常是模型作必要的修改,以适应地理信息系统的格式。

  (2)基于相同数据结构的紧密连接方式:这种方式提供公共的接口和透明的文件,组分之间信息可以共享或转换。有三种方法可以用来实现这一目标:1)使用由地理信息系统软件提供的一种较高级应用语言或应用产生器;2)使用具有标准接口的开放地理信息系统工具箱;3)使用do-it-yourself工具箱,它不仅提供特定的地理信息系统功能,而且提供模拟模型的接口。

  (3)基于组件方式的高度综合:数据获取、数据处理和交互分析功能分别支持具有不同任务的不同用户,这种分层功能概念导致内嵌的地理信息系统功能的产生,例如,地图(和模型输出)显示包括相关的动态模型和模型分析。这种局部镶嵌具有很高的灵活性和可操作性。更高水平的综合将是以下两种方法的合并:模型成为一个地理信息系统的一部分功能;地理信息系统为模型生产和操作参数、输入和阐述变量、构造输出模式、提供附加输出选项,不过,这需要工具充分模块化。显然,这种最好综合形式的开发代价是最高。

  选项C:GeoPandas是一个开源项目,它扩展了Pandas中使用的数据类型DataFrame,允许对几何类型进行空间操作。GeoPandas的目标是使在python中使用地理空间数据更容易。它结合了Pandas和Shapely的能力,提供了Pandas的地理空间操作和多种Shapely的高级接口。GeoPandas可以轻松地在python中进行操作,否则将需要空间数据库,如PostGIS。

  Python支持多种数据类型,包括字符串、数字、列表、元组、字典等。不同类型的数据可以存储不同类型的值,并进行不同类型的操作。其中,字符串是由一个或多个字符组成,这些字符可以是字母、数字或者其他类型的字符;数字可分为整数和浮点数两种;列表、元组和字典是较为复杂的数据类型,它们都是由一组数据元素构成的。

  除了支持多种数据类型之外,Python也支持多种数据结构。Python中最基本的数据结构是序列,序列中的每一个元素都有一个索引值。字符串、列表、元组都是序列。由于不同类型的序列具有相同的数据结构,所以可以对不同类型的序列执行同一种操作。

  字符串、数字和数组是不可变的数据类型,即不能单独修改数据元素的值。列表和字典是可变的数据类型,可以对它们的数据元素进行修改。

  概念来源:《面向ArcGIS的Python脚本编程》/[美] Paul A.Zandbergen 著,李明巨,刘昱君,陶旸,张磊译,人民邮电出版社

  Python脚本使用变量存储信息。每一个变量都有一个变量名。一个变量名代表一个变量值。例如,如果想用一个变量x表示数字17,则需要在Python中输入如下代码:

  这是一个赋值语句,它的功能是将数字17赋给变量x。变量只有被赋值后,才能在表达式中使用。例如:

  这个例子表明在使用变量前需要给这个变量进行赋值,所以将数字17赋给变量x的赋值语句x = 17要在x * 2的前面。

  (1)变量名可以由字母、数字、下划线)变量名不能以数字开头,所以 var1是一个合法的变量名,但是1var就是一个非法的变量名。

  一个表达式就代表一个值,例如2*17是一个表达式,它代表数字34。简单的表达式是由运算符和操作数构成。复杂的表达式是由几个简单的表达式构成。表达式中也可以有多个变量。

  语句可以理解为操作指令,它指示电脑进行何种操作。这些指令包括给变量赋值、在屏幕上输出结果以及导入模块等。

  这里的x=2 * 17是一个语句,通过这个语句,可以给变量x赋值,但是这个语句本身并不是一个值。这是由语句的性质决定的。它只能表示一种操作,而不能表示一个值。因此,在上面的例子中,Python编译器不会自动输出结果,需要使用print语句。

  ArcPy站点包由各种模块、函数、工具和类组成,使用Python中的ArcPy站点包可以访问ArcGIS的地理处理功能。在使用ArcPy之前,需要先导入ArcPy站点包。因此,在常见的地理处理脚本中,第一行代码会是:

  ArcPy包含很多模块,其中有两个专业模块,分别是自动化制图模块(arcpy.mapping)和地图代数模块(arcpy.sa)。可以使用以下语句导入这些模块:

  bergen 著,李明巨,刘昱君,陶旸,张磊译,人民邮电出版社-思考一下(然后再偷看),点击查看基本概念-

  Buffer工具有三个必选参数,四个可选参数。为了指定可选择参数“dissolve_field”,需要跳过两个可选参数。选项A、B、C正确。

  Java语言是面向对象的程序设计语言,Java程序的基本组成单元就是类,类体中又可包括属性与方法两部分。而每一个应用程序都必须包含一个main方法,含有main方法的类称之为主类。

  main方法是类体中的主方法。该方法从“{”号开始,至“}”号结束。public、static、void分别是main方法的权限修饰符、静态修饰符、返回值修饰符,Java程序中的main方法必须声明为public static void。String[] args是一个字符串类型的数组,它是main方法的参数。main方法是程序开始执行的位置。

  在Java语言中可以通过import关键字导入相关的类。在JDK的API中(应用程序接口)提供了130多个包,如java.awt、java.io等。可以通过JDK的API文档来查看这些类。在API文档中主要包括类的继承结构、类的应用、成员变量表、构造方法表等,并对每个变量使用目的作了详细的描述,API文档为程序开发人员不可或缺的工具。

  标识符可以简单地理解为一个名字,用来标识类名、变量名、方法名、数组名、文件名的有效字符序列。

  Java语言规定标识符由任意顺序的字母、下划线(_)、美元符号($)和数字组成,并且第一个字符不能是数字。标识符不能是Java中的保留关键字。

  概念来源+图源:《Java从入门到精通》/李钟尉,马文强,陈丹丹等编著,北京:清华大学出版社

  Java语言规定标识符由任意顺序的字母、下划线(_)、美元符号($)和数字组成,并且第一个字符不能是数字。标识符不能是Java中的保留关键字。选项A正确。

  选项B,第一个字符是数字,错误故不选;选项C,super是Java关键字,错误故不选;选项D,第一个字符是#,错误故不选。

  每一个用C#语言编写的应用程序均由一个或者多个类组成,所有的程序代码都必须封装在某个类、结构、枚举、委托或者接口中。

  命名空间提供了一种组织相关类和其他类型的方式,是避免名称冲突的一种方式。命名空间包含可在程序中使用的类、结构、枚举、委托和接口,一个命名空间又可以包含其他的命名空间。注意,命名空间只是一种逻辑上的划分,而不是物理上的存储分类。

  每一个应用程序都应该有一个入口点,表明该程序从哪里开始执行。为了让系统能找到入口点,入口方法名规定为Main。注意:“Main”的首字母大写,而且Main方法后面的小括号不能省略。

  Main方法声明为public static,除非有特殊理由,一般不要更改Main方法的声明。

  用C#语言编写的类中,每一个方法都要有一个返回值,对于没有返回值的方法,必须声明返回值为void。

  Main方法的返回值只能有两种类型,一种是void,另一种是int。int类型的返回值表示应用程序的终止状态代码(termination status code),此代码的用途是退出应用程序时返回程序运行的状态(0表示成功返回,非零值―般表示错误编号),当返回类型为void时,该方法的返回值为0。

  C#源文件的扩展名为.cs,如WindowsFormsApplication1.cs,一个源文件中可以有一个类,也可以有多个类。但是强烈建议在一个源文件中只包含一个类。因为一个文件包含一个类会让程序员感觉层次上非常清晰,修改、维护也比较方便。

  一个应用程序项目可以由一个文件组成,也可以由多个文件组成,文件名和类名可以相同,也可以不同。

  如果在类的定义中加上.partial修饰符,也可以把一个类分散保存到多个文件中,编译器在编译时会将具有相同名称的类自动组合到一起。

  C#语言中添加注释的方法有多种,不过最有特点的是可以使用XML的格式添加注释,从而减少了许多复杂的工作,也避免了注释和说明文件不一致的情况。

  C#提供的数据类型可以分为两大类,一类是值类型(value type),另一类是引用类型(reference type)。值类型又进一步划分为简单类型、枚举类型、结构类型和可空类型;引用类型则进一步划分为类类型、接口类型、数组类型和委托类型。

  获取2022年地理信息技术与应用能力考试(初、中级)、地理信息技术与应用技能大赛最新信息,请关注:

公司公告 董秘邮箱 员工登陆 建言献策 加入联化 首页 公司概况 企业简介 销售网络