首页 百科知识 系统开发模式

系统开发模式

时间:2022-11-06 百科知识 版权反馈
【摘要】:系统是以ComGIS技术为核心,采用客户端/服务器(C/S)的运行模式。指完全借助于GIS工具软件提供的开发语言进行应用系统开发。因此,本系统开发确定选用集成二次开发方式,并以GIS组件技术对系统进行开发。

10.3.3 系统开发模式

系统是以ComGIS技术为核心,采用客户端/服务器(C/S)的运行模式。以大型关系数据库(SQL Server 2000)作为统一的数据管理平台,存放道路交通安全属性数据,利用美国MapInfo公司的工具型地理信息系统软件包MapInfo 7.0制作和转换电子地图,建立统一格式的地图库,利用GIS组件MapX 5.0以及编程开发工具Delphi 6.0完成道路交通安全评价系统的应用程序开发。

10.3.3.1 应用型GIS开发的三种实现模式

1)独立开发

指不依赖于任何GIS工具软件,从空间数据的采集、编辑到数据的处理分析及结果输出,所有的算法都由开发者独立设计,然后选用某种程序设计语言,如Visu-al C++、Delphi等,在一定的操作系统平台上编程实现。

2)单纯二次开发

指完全借助于GIS工具软件提供的开发语言进行应用系统开发。GIS工具软件大多提供了可供用户进行二次开发的宏语言,如ESRI的ArcView提供了Avenue语言,MapInfo公司研制的MapInfo Professional提供了MapBasic语言等等。用户可以利用这些宏语言,以原GIS工具软件为开发平台,开发出自己的针对不同应用对象的应用程序。

3)集成二次开发

集成二次开发是指利用专业的GIS工具软件,如ArcView、MapInfo等,实现GIS的基本功能,以通用软件开发工具尤其是可视化开发工具,如Delphi、Visual C++、Visual Basic等为开发平台,进行二者的集成开发。

集成二次开发目前主要有两种方式:

(1)OLE/DDE

采用OLE Automation技术或利用DDE技术,用软件开发工具开发前台可执行应用程序,以OLE自动化方式或DDE方式启动GIS工具软件在后台执行,利用回调技术动态获取其返回信息,实现应用程序中的地理信息处理功能。

(2)GIS控件

利用GIS工具软件生产厂家提供的建立在OCX技术基础上的GIS功能控件,如ESRI的MapObjects、MapInfo公司的MapX等,在Delphi等编程工具编制的应用程序中,直接将GIS功能嵌入其中,实现地理信息系统的各种功能。其中表10-1是两种常用GIS组件(MapX和MapObjects)的主要功能对比。

表10-1 MapX和MapObjects主要功能比较分析

img372

10.3.3.2 开发模式的比较确定

由于独立开发难度太大,单纯二次开发受GIS工具提供的编程语言的限制差强人意,因此结合GIS工具软件与当今可视化开发语言的集成二次开发方式就成为GIS应用开发的主流。它的优点是既可以充分利用GIS工具软件对空间数据库的管理、分析功能,又可以利用其他可视化开发语言具有的高效、方便等编程优点,集二者之所长,不仅能大大提高应用系统的开发效率,而且使用可视化软件开发工具开发出来的应用程序具有更好的外观效果、更强大的数据库功能,而且可靠性好、易于移植维护。尤其是使用OCX技术利用GIS功能组件进行集成开发,更能表现出这些优势。

目前许多软件公司都开发了很多ActiveX控件,合理选择和运用现成的控件,减少了开发者的编程工作量,使开发者避开某些应用的具体编程,直接调用控件,实现这些具体应用,不仅可以缩短程序开发周期,使编程过程更简捷,用户接口更友好,而且可以使程序更加灵活、简便。

与利用OLE Automation技术作为服务器的MapInfo相比,利用控件开发速度快,占用资源少,而且易实现许多底层的编程和开发功能,具有传统GIS工具无法比拟的优点:①较好的性价比;②提供标准化的、公开的编程接口;③强大的GIS功能;④开发简捷。

因此,本系统开发确定选用集成二次开发方式,并以GIS组件技术对系统进行开发。利用Mapinfo Professional对初期地图和属性数据进行数字化处理,然后利用MapX的Geoset(.gst文件)进行在线式和离线式管理,通过Delphi编程实现系统集成。Delphi是一种基于Object Pascal语言的可视化集成开发工具,尤其在数据库和网络方面,Delphi更是一个十分理想的软件开发平台。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈