1.3.2 組件式GIS
組件式軟件技術已經成為當今軟件技術的潮流之一,為了適應這種技術潮流,GIS軟件象其他軟件一樣,已經或正在發生著革命性的變化,即由過去廠家提供了全部系統或者具有二次開發功能的軟件,過渡到提供組件由用戶自己再開發的方向上來。無疑,組件式GIS技術將給整個GIS技術體系和應用模式帶來巨大影響。
組件式GIS
基本思想是把GIS的各大功能模塊劃分為幾個控件,每個控件完成不同的功能。各個GIS控件之間,以及GIS控件與其它非GIS控件之間,可以方便地通過可視化的軟件開發工具集成起來,形成最終的GIS應用。控件如同一堆各式各樣的積木,他們分別實現不同的功能(包括GIS和非GIS功能),根據需要把實現各種功能的 “積木”搭建起來,就構成應用系統。
組件式GIS系統的特點
(1) 小巧靈活、價格便宜
(2)無須專門GIS開發語言,直接嵌入MIS開發工具
(3) 開發簡捷
把GIS的功能適當抽象,以組件形式供開發者使用,將會帶來許多傳統GIS工具無法比擬的優點。
(1) 小巧靈活、價格便宜 由于傳統GIS結構的封閉性,往往使得軟件本身變得越來越龐大,不同系統的交互性差,系統的開發難度大。在組件模型下,各組件都集中地實現與自己最緊密相關的系統功能,用戶可以根據實際需要選擇所需控件,最大限度地降低了用戶的經濟負擔。。組件化的GIS平臺
集中提供空間數據管理能力,并且能以靈活的方式與數據庫系統連接。在保證功能的前提下,系統表現得小巧靈活,而其價格僅是傳統GIS開發工具的十分之一,甚至更少。這樣,用戶便能以較好的性能價格比獲得或開發GIS應用系統。
(2) 無須專門GIS開發語言,直接嵌入MIS開發工具 傳統GIS往往具有獨立的二次開發語言,對用戶和應用開發者而言存在學習上的負擔。而且使用系統所提供的二次開發語言,開發往往受到限制,難以處理復雜問題。而組件式GIS建立在嚴格的標準之上,不需要額外的GIS二次開發語言,只需實現GIS的基本功能函數,按照Microsoft的ActiveX控件標準開發接口。這有利于減輕GIS軟件開發者的負擔,而且增強了GIS軟件的可擴展性。GIS應用開發者,不必掌握額外的GIS開發語言,只需熟悉基于Windows平臺的通用集成開發環境,以及GIS各個控件的屬性、方法和事件,就可以完成應用系統的開發和集成。目前,可供選擇的開發環境很多,如Visual C++、Visual Basic、Visual FoxPro、Borland C++、Delphi、C++ Builder以及Power Builder等都可直接成為GIS或GMIS的優秀開發工具,它們各自的優點都能夠得到充分發揮。這與傳統GIS專門性開發環境相比,是一種質的飛躍。 (3)、 強大的GIS功能
新的GIS組件都是基于32位系統平臺的,采用InProc直接調用形式,所以無論是管理大數據的能力還是處理速度方面均不比傳統GIS軟件遜色。小小的GIS組件完全能提供拼接、裁剪、疊合、緩沖區等空間處理能力和豐富的空間查詢與分析能力。 (4)、 開發簡捷 由于GIS組件可以直接嵌入MIS開發工具中,對于廣大開發人員來講,就可以自由選用他們熟悉的開發工具。而且,GIS組件提供的API形式非常接近MIS工具的模式,開發人員可以像管理數據庫表一樣熟練地管理地圖等空間數據,無須對開發人員進行特殊的培訓。在GIS或GMIS的開發過程中,開發人員的素質與熟練程度是十分重要的因素。這將使大量的MIS開發人員能夠較快地過渡到GIS或GMIS的開發工作中,從而大大加速GIS的發展。
(5) 更加大眾化 組件式技術已經成為業界標準,用戶可以象使用其他ActiveX控件一樣使用GIS控件,使非專業的普通用戶也能夠開發和集成GIS應用系統,推動了GIS大眾化進程。組件式GIS 的出現使GIS不僅是專家們的專業分析工具,同時也成為普通用戶對地理相關數據進行管理的的可視化工具。
(6)組件式GIS開發平臺的結構 組件式GIS開發平臺通常可設計為三級結構:
基礎組件
面向空間數據管理,提供基本的交互過程,并能以靈活的方式與數據庫系統連接;
高級通用組件
由基礎組件構造而成,面向通用功能,簡化用戶開發過程,如顯示工具組件、選擇工具組件、編輯工具組件、屬性瀏覽器組件等等。它們之間的協同控制消息都被封裝起來。這級組件經過封裝后,使二次開發更為簡單。如一個編輯查詢系統,若用基礎平臺開發,需要編寫大量的代碼,而利用高級通用組件,只需幾句程序就夠了。面向通用功能;
行業性組件
抽象出行業應用的特定算法,固化到組件中,進一步加速開發過程。以GPS監控為例。對于GPS應用,除了需要地圖顯示、信息查詢等一般的GIS功能外,還需要特定的應用功能,如動態目標顯示、目標鎖定、軌跡顯示等。這些GPS行業性應用功能組件被封裝起來后,開發者的工作就可簡化為設置顯示目標的圖例、軌跡顯示的顏色、鎖定的目標,以及調用、接受數據的方法等。
GIS組件的構成
GIS軟件的模型包含若干功能單元:
空間數據獲取
坐標轉換
圖形編輯
數據存儲
數據查詢
數據分析
制圖表示 ……
可以想象要把這些所有的功能放在一個控件中幾乎是不可能的,即使實現也會帶來系統效率上的低下。一般可以認為GIS構件的設計主要遵循應用領域地需求。例如ESRI地MapObjects就是以空間數據訪問、查詢、制圖為主要目標的GIS構件。
評論
查看更多