文章版權由作者李曉暉和博客園共有,若轉載請於明顯處標明出處:http://www.cnblogs.com/naaoveGIS/
1.背景
最近由團隊HWG主導的GIS開源工具集基本告一段落,該項目雖然由我發起,但是百分之八十均由HWG完成,我個人主要進行工具各模塊功能的設計、代碼優化、架構以及進度方面的把控。這里,權當做一個初略的總結。
公司為應對各種項目數據需求,以及系統的快速搭建,團隊積累了大量小工具。這些小工具的管理以及維護逐漸開始占據越來越多的研發資源。總結起來,主要有以下幾個問題:
a.工具均是基於AE開發,導致為了支持不同項目環境,出現了10.0到10.4的版本。
b.針對支持不同的數據庫環境,又出現了不同的數據庫版本工具。
c.目前有近20個工具,過於零散,沒有統一管理。
d.工具的操作不夠扁平,不夠人性化。
在這樣的背景下,我在今年九月底時申請了工具集升級立項。
2.整體設計
3.整體設計說明
a.采用插架框架,該框架需支持插件與宿主之間的通信。
b.舍棄AE,使用開源的GDAL,避免因為空間引擎不同導致多個工具版本出現。
c.整合數據庫操作,將Mysql和Oracle操作整體封裝,避免因為數據庫不同導致多個工具版本出現。
d.進行公用模塊封裝,將GDAL空間數據操作模塊、數據庫操作模塊、日志模塊均封裝成公用DLL庫,供其他各系統集成。
e.各工具進行開源化、插件化改造。
4.功能優化設計
a.權限管理,增加普通用戶和超級用戶概念。
b.數據共享,各插件中新增數據源后,其他插件可以共享該數據源,而不需要重復添加操作。
c.交互優化,減少不必要的的點擊和填寫操作,可以自動填充的欄目進行自動填充,可以省略的操作進行簡化操作。
d.中文支持優化,由於GDAL對中文支持問題比較多,需徹底優化該部分。
e.多庫支持優化,將SQL提取成配置文件,針對不同庫的使用不同的SQL文件,使核心代碼統一,修改部分轉移至配置文件上。
f.效率優化,在多線程以及數據庫SQL操作部分進行優化。
5.成果展示
6.總結
該工具基於開源架構處理空間數據,並且實現了對多庫的支持,從而將之前繁復的工具和版本整合成了一個統一的版本,將很大程度上提升產品的維護和管理,也方便了工程同事的使用。后續其他工具,也將陸續集成至該版本中。
-----歡迎轉載,但保留版權,請於明顯處標明出處:http://www.cnblogs.com/naaoveGIS/
如果您覺得本文確實幫助了您,可以微信掃一掃,進行小額的打賞和鼓勵,謝謝 ^_^