发布网友 发布时间:2023-05-16 18:34
共1个回答
热心网友 时间:2024-01-13 13:25
独立开发
指不依赖于任何GIS工具软件,从空间数据的采集、编辑到数据的处理分析及结果输出,所有的算法都由开发者独立设计,然后选用某种程序设计语言,如VisualC十十、Delphi等,在一定的操作系统平台上编程实现。这种方式的好处在于无须依赖任何商业GIS工具软件,减少了开发成本,但一方而对于大多数开发一者来说,能力、时间、财力方而的*使其开发出来的产品很难在功能上与商业化GIS工具软件相比,而且在购买GIS工具软件上省下的钱可能还抵不上开发者在开发过程中绞尽脑汁所花的代价。
宿主型二次开发
指基于GIS平台软件上进行应用系统开发。大多数GIS平台软件都提供了可供用户进行二次开发的脚本语言,如ESRI的ArcView提供了Avenue语言,MapInfo公司的MapInfo提供了MapBasic语言等等。用户可以利用这些脚本语言,以原GIS软件为开发平台,开发出自己的针对不同应用对象的应用程序。这种方式省时省心,但进行二次开发的脚本语言,作为编程语言,功能极弱,用它们来开发应用程序仍然不尽如人意,并且所开发的系统不能脱离GIS平台软件,是解释执行的,效率不高。
基于GIS组件的二次开发
大多数GIS软件产商都提供商业化的GIS组件,如ESRI公司的MapObjects,Maplnfo公司的MapX等,这些组件都具备GIS的基本功能,开发人员可以基于通用软件开发工具尤其是可视化开发工具,如Delphi,VisualC,VisualBasic,PowerBuilder等为开发平台,进行二次开发。
利用GIS工具软件生产厂家提供的建立在OCX技术基础上的GIS功能控件,如ESRI的
MapObjects,Maplnfo公司的MapX等,在Delphi等编程工具编制的应用程序中,直接将GIS功能嵌入其中,实现地理信息系统的各种功能。
三种实现方式的分析与比较
由于独立开发难度太大,单纯二次开发受GIS工具提供的编程语言的*差强人意,因此结合GIS工具软件与当今可视化开发语言的集成二次开发方式就成为GIS应用开发的主流。它的优点是既可以允分利用GIS工具软件对空间数据库的管理、分析功能,又可以利用其它可视化开发语言具有的高效、方便等编程优点,集二者之所长,不仅能大大提高应用系统的开发效率,而且使用可视化软件开发工具开发出来的应用程序具有更好的外观效果,更强大的数据库功能,而且可靠性好、易于移植、更于维护。尤其是使用OCX技术利用GIS功能组件进行集成开发,更能表现出这些优势。