( 中國科學(xué)院地理信息產(chǎn)業(yè)發(fā)展中心, 北京 100101)
論文來源:中國圖象圖形學(xué)報
摘要:組件式地理信息系統(tǒng)是適應(yīng)軟件組件化潮流的新一代地理信息系統(tǒng)。本文闡述了組件式地理信息系統(tǒng)的概念和技術(shù)基礎(chǔ), 討論了組件式地理信息系統(tǒng)的特點(diǎn), 及其與萬維網(wǎng)地理信息系統(tǒng)之間的關(guān)系, 進(jìn)而探討組件式地理信息系統(tǒng)的設(shè)計與開發(fā)。
關(guān)鍵詞: 地理信息系統(tǒng), 組件式軟件, 組件式對象模型, 萬維網(wǎng)
1 引 言
經(jīng)歷30多年的發(fā)展, 地理信息系統(tǒng)( Geog raphic Inform ation Sy stems, 縮寫為GIS) 正在形成完整的技術(shù)系統(tǒng)并逐漸建立其理論體系。GIS 應(yīng)用也已形成一個多層次和不同尺度的應(yīng)用格局, 成為信息產(chǎn)業(yè)的重要組成部分[ 1] 。然而, 計算機(jī)技術(shù)和全球信息網(wǎng)絡(luò)技術(shù)的飛速發(fā)展, 對GIS 產(chǎn)生了巨大的沖擊,組件式 GIS( Co mponents GIS, 簡稱Com GIS) 和萬維網(wǎng)GIS( WebGIS) 等新興技術(shù)應(yīng)運(yùn)而生。GIS 正在進(jìn)入一個嶄新的發(fā)展階段。
“組件式軟件技術(shù)已經(jīng)成為當(dāng)今軟件技術(shù)的潮流之一”, 為了適應(yīng)這種技術(shù)潮流, “GIS 軟件象其它軟件一樣, 已經(jīng)或正在發(fā)生著革命性的變化, 即由過去廠家提供了全部系統(tǒng)或者具有二次開發(fā)功能的軟件, 過渡到提供組件由用戶自己再開發(fā)”2) 。無疑, ComGIS 技術(shù)將給整個GIS 技術(shù)體系和應(yīng)用模式帶來巨大影響。
2 ComG IS 的概念
GIS 技術(shù)的發(fā)展, 在軟件模式上經(jīng)歷了功能模塊、包式軟件、核心式軟件, 從而發(fā)展到ComGIS 和WebGIS 的過程。傳統(tǒng) GIS 雖然在功能上已經(jīng)比較成熟, 但是由于這些系統(tǒng)多是基于10多年前的軟件技術(shù)開發(fā)的, 屬于獨(dú)立封閉的系統(tǒng)。同時, GIS 軟件變得日益龐大, 使用戶難以掌握, 且費(fèi)用昂貴, 這些阻礙了GIS 的普及和應(yīng)用。Co mGIS 的出現(xiàn)為傳統(tǒng)GIS 面臨的多種問題提供了全新的解決思路。
組件式軟件是新一代 GIS 的重要基礎(chǔ), Com GIS 是面向?qū)ο蠹夹g(shù)和組件式軟件在GIS 軟件開發(fā)中的應(yīng)用。認(rèn)識ComGIS, 首先需要了解所依賴的技術(shù)基礎(chǔ)——組件式對象模型和Activ eX 控件。
COM 是組件式對象模型( Com po nent Object M odel) 的英文縮寫, 是OLE( Object L inking & Em-bedding ) 和ActiveX 共同的基礎(chǔ)。COM 不是一種面向?qū)ο蟮恼Z言, 而是一種二進(jìn)制標(biāo)準(zhǔn)。COM 所建立的是一個軟件模塊與另一個軟件模塊之間的鏈接,當(dāng)這種鏈接建立之后, 模塊之間就可以通過稱之為 “接口”的機(jī)制來進(jìn)行通信[ 2] 。COM 標(biāo)準(zhǔn)增加了保障系統(tǒng)和組件完整的安全機(jī)制, 擴(kuò)展到分布式環(huán)境。這種基于分布式環(huán)境下的COM 被稱作 DCOM ( Dis-tributed COM ) 。DCOM 實現(xiàn)了COM 對象與遠(yuǎn)程計算機(jī)上的另一個對象之間直接進(jìn)行交互。
Activ eX 是一套基于COM 的可以使軟件組件在網(wǎng)絡(luò)環(huán)境中進(jìn)行互操作而不管該組件是用何種語言創(chuàng)建的技術(shù)。作為A ctiveX 技術(shù)的重要內(nèi)容, Ac-tiv eX 控件是一種可編程、可重用的基于COM 的對象。ActiveX 控件通過屬性、事件、方法等接口與應(yīng)用程序進(jìn)行交互。
一些軟件公司專門生產(chǎn)各種用途的ActiveX 控件, 如: 數(shù)據(jù)庫訪問、數(shù)據(jù)監(jiān)視、數(shù)據(jù)顯示、圖形顯示、圖象處理, 甚至三維動畫等等。幾個著名的 GIS 軟件公司把 COM 技術(shù)應(yīng)用于GIS 開發(fā), 紛紛推出由一系列 ActiveX 控件組成的Co mGIS 軟件, 如 In-terg raph 公司的 GeoM edia、ESRI 的M apObjects、 M apInfo 公司的M apX 等, 國內(nèi)的北京朝夕公司推出了M apEngine, 我們也研制了自己的組件式GIS軟件——ActiveM ap, 并在幾個大型GIS 應(yīng)用項目中成功應(yīng)用[ 3] 。
ComGIS 的基本思想是把GIS 的各大功能模塊劃分為幾個控件, 每個控件完成不同的功能。各個GIS 控件之間, 以及GIS 控件與其它非 GIS 控件之間, 可以方便地通過可視化的軟件開發(fā)工具集成起來, 形成最終的 GIS 應(yīng)用??丶缤欢迅魇礁鳂拥姆e木, 它們分別實現(xiàn)不同的功能( 包括 GIS 和非GIS 功能) , 根據(jù)需要把實現(xiàn)各種功能的 “積木”搭建起來, 就構(gòu)成應(yīng)用系統(tǒng)。
更多內(nèi)容請查看pdf