文章目录

  • GIS开发模式
  • 组件式GIS
  • AO与AE
  • 区别
  • 开发环境
  • 功能
  • 联系
  • AE


GIS开发模式

  1. 独立开发模式
    自己独立开发
  2. 宿主型开发模式
    基于某个GIS平台或GIS工具软件,用该平台的自带语言进行开发
  3. (组件式GIS基本思想)组件式GIS开发模式
    用某些商业软件或公司已经开发好的components进行二次开发(用其他公司封装好的包)

详细:

  1. 独立开发
    指不依赖于任何GIS工具软件,从空间数据的采集、编辑到数据的处理分析及结果输出,所有的算法都由开发者独立设计,然后选用某种程序设计语言,在一定操作系统平台上编程实现。
    好处:不依赖商业GIS工具软件,减少成本
    坏处:门槛高,成品无法和商业化软件媲美
  2. 宿主型二次开发
    指基于GIS平台软件上进行应用系统开发。大多数GIS平台软件都提供了可供用户进行二次开发的脚本语言,如ESRI的ArcView提供了Avenue语言,MapInfo的MapBasic
    好处:省时省力
    坏处:功能较弱,所开发的系统不能脱离GIS平台软件,是解释执行的,效率不高
  3. 组件式GIS开发模式
    GIS软件产商提供提供商业化的GIS组件进行二次开发,如ESRI公司的MapObjects,MapInfo的MapX
    好处:商业组件成熟与好用,具有GIS工具软件对空间数据库管理、分析功能,又可以结合其他可视化开发语言
    坏处:要钱

组件式GIS

组件式GIS(Component Object Model GIS)采用了面向对象技术组件式软件的GIS系统

组件式GIS开发平台的结构

  1. 基础组件:面向空间数据管理,提供基本的交互过程
  2. 高级通用组件:面向通用功能
  3. 行业性组件:抽象出行业应用的特定算法,固化到组件中,进一步加速开发过程

AO与AE

区别

开发环境

  1. ArcObjects只有安装了ArcGIS Desktop和ArcObjects,才能进行AO开发
  2. AE是独立的嵌入式组件,不依赖ArcGIS Desktop,直接安装ArcEngine Runtime和Developer Kit后,即可在不同语言环境下开发

功能

AO功能更强大,AE功能相对弱,AE不具备AO的少部分功能

联系

  1. AE包括AO核心的功能,其是对AO中的大部分接口、类、库进行封装所构成嵌入式组件
  2. 组件中的组件接口、方法、属性与AO是相同的

AE

ArcGIS Engine由ArcGIS Engine Runtime和ArcGIS Engine Developer Kit(SDK)组成

ArcGIS Engine developer Kit:是一套地理制图组件和开发资源库,是官方提供添加动态制图和GIS功能的库。
开发包不是面向终端用户的产品,而是专门为开发应用程序的人员设计的,只是一个包而已

AE从功能层次上分为五个部分:

  1. 基本服务(Base Services):由GIS核心ArcObjects构成,如要素几何体(feature geometry)和显示(display)
  2. 数据存储(Data Access):AE可以对很多栅格和矢量格式进行存取
  3. 地图表达(Map Presentation):创建和显示带有符号和标注的地图
  4. 开发组件(Developer Components):用于快速开发应用程序的界面控件
  5. 运行时选项(Runtime Options):AE运行时可以与标准功能或其他高级功能一起部署