今天看到SuperMap中一直提到共相式GIS,于是乎搜索一下……SuperMap的共相式怎么理解呢?iServer Java有咋理解呢???

再谈共相式GIS和ArcObjects:ttp://www.cnblogs.com/maweifeng/archive/2007/04/27/730427.html

共相式GIS:http://blog.sina.com.cn/s/blog_4dff486201000asx.html

  对于真实的软件而言,真正的“共相GIS”是不存在的,我们不妨称这样的GIS 为“共相式GIS(Universal GIS)”。就当前技术环境而言,共相式GIS 就是能够支持当前存在的任何计算设备(Any device)、任何操作系统(Any operation system)、任何组件模型(Any component mode)、任何开发语言(Any programming language)、任何数据库(Any database)和任何数据格式(Any dataformat),并可以以很小代价来支持未来的计算设备、操作系统、开发语言、数据库和数据格式的GIS 平台软件。

  共相式GIS 体系架构 共相式GIS 的本质在于通过精心设计的软件架构,把GIS 所特有的功能、分析处理算法和所依赖的信息技术进行有效的隔离,使得两者可以各自独立的发展而不会相互牵连制约,不会因为信息技术的发展变化而导致整个软件从头再来。因此,共相式GIS 的核心思想,就是要建立一套具有普遍适应性的共相式GIS 内核(Universal GIS Core, UGC),实现那些相对稳定的、远离易变技术环境的GIS 核心功能。并在UGC 基础之上扩展那些与不断发展的技术环境关系紧密的外围功能模块和人机交互界面。一旦相关技术环境发展变化,仅仅需要重新实现或调整外部功能模块即可,这将大幅度降低技术升迁的代价。这种模式也可以简单地概括为“核-壳”分离。
  基于UGC,可以封装各种GIS 软件产品,包括组件式GIS、Internet GIS、桌面GIS。其中组件式GIS 与Internet GIS 既可以使用.NET 技术封装,也可以使用Java 技术开发。即使以后出现新的组件技术或高级开发语言,也可以基本不修改UGC,而通过重新封装人机交互接口的方式提供新的组件式GIS 或其它GIS 软件平台。由于这些软件产品具有同一个内核,因此内核功能升级后,基于其上的各种软件产品都得到同步升级,大幅度减少了软件维护的代价。 归纳起来,可以总结出共相式GIS 的研发步骤: 第一步,剥离GIS 中严重依赖技术环境的部分。比如:依赖于操作系统的可视化引擎和软件界面,依赖于程序语言的二次开发接口,依赖于数据格式或数据库的数据引擎等。 第二步,提炼出具有普遍意义的GIS 的核心功能、算法,形成共相式GIS 内核(UGC)。 第三步,在UGC 基础上,扩展那些严重依赖于具体技术环境的外围部分。比如第一步中提到的可视化引擎和软件界面、二次开发接口、数据引擎等。 第四步,封装适用于多种技术环境的各种类型的软件。如组件式GIS、Internet GIS、桌面GIS 和嵌入式GIS 等,以至于未来的其他GIS 软件形态。一旦有新的技术出现,UGC 仅需要进行少量改动,主要重复第三步和第四步工作即可应对IT变化,大幅度缩减了适应技术变化的周期。 共相式GIS 的内核 UGC 除了要求保持相对稳定以外,还需满足三个条件: 首先,UGC 必须支持多种操作系统;
  其次,UGC 必须能被多种程序开发语言调用,以封装各种语言版本的GIS 软件产品; 最后,UGC 必须有很高的运行效率,以满足复杂空间分析运算和大数据量处理的性能要求。Java 是一种在跨平台方面有很强优势的开发语言,实际上已经有一些企业基于Java 编写了GIS 软件,但Java 在性能方面天生的不足影响了基于Java 内核的GIS 软件的进一步发展。与一般的信息管理系统不同,GIS 应用系统不仅处理数据量大,而且分析算法复杂,对性能要求很高。此外,基于Java 的组件在被包括.NET 在内的其它开发语言调用方面也存在不足,因此Java 不适合作为UGC 的开发语言。
 

共相式GIS的更多相关文章

  1. SuperMap iObject入门开发系列之一组件式GIS开发平台介绍

    本文是一位好友“炀炀”授权给我来发表的,介绍都是他的研究成果,在此,非常感谢.平台介绍:SuperMap iObjects Java/.NET 是面向GIS应用系统开发者的组件式GIS开发平台,具有强 ...

  2. (1)从底层设计,探讨插件式GIS框架的实现

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 研一时,听当时的师兄推荐,买了蒋波涛的一本关于GIS插件框架的书.当时 ...

  3. GIS在水利中的应用

    摘要  GIS具有数据存储.查询.统计.图形显示.分析.模拟.决策和预测等功能,在水利中得到越来越广泛的应用,可谓水利现代化的“火车头”. 关键词 GIS 水利 应用 地理信息系统GIS通常泛指用于获 ...

  4. GIS专业书籍、文档、数据、网站、工具等干货

    整理.分享一些个人整理的GIS专业书籍.文档.数据.网站.工具等.也希望大家将自己的心得也分享出来,一起交流,共同进步. 如果下载链接失效,请到这里去:地信网 一.原理应用类 GIS基础类 01.地理 ...

  5. GP的使用心得

    在ArcEngine时,GP无疑是GIS开发者的神器.自ArcEngine9.2开始新增一个程序集ESRI.ArcGIS.Geoprocessor,它能调用包含扩展模块在内的所有Geoprocessi ...

  6. 单源最短路径——Dijkstra算法学习

    每次都以为自己理解了Dijkstra这个算法,但是过没多久又忘记了,这应该是第4.5次重温这个算法了. 这次是看的胡鹏的<地理信息系统>,看完之后突然意识到用数学公式表示算法流程是如此的好 ...

  7. WebGIS博客文本分析(词频分析)手动扒取 去除格式 词语分割 统计分析

    1.      [置顶](一)开篇—杂谈WebGIS 摘要: 文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.前言 ...

  8. GDAL线面互转换(2)

    在上一个文章中介绍了线转化为面和面转化为线,其主要的实现思路就是把面中的点取出来构成线,把线中的点取出来构成面,实际上就是一个硬拷贝,无奈客户的实际需求并非如此,客户想要线转面的时候几条相交线构成面, ...

  9. Cordova+Asp.net Mvc+GIS跨平台移动应用开发实战1-系统初步搭建(附演示,apk,全部源码)

    1.前言 身处在移动互联网的今天,移动应用开发炙手可热,身为程序猿的我们怎么能错过开发一款我们自己的APP.本人算是一个基于.net的GIS开发入门者(马上就大四啦), 暑假在学校参加GIS比赛有大把 ...

随机推荐

  1. 什么是SDN(软件定义网络)(转载)

    软件定义网络(Software Defined Network, SDN)在InfoWorld于2011年11月公布的将影响未来10年的十项新技术中排名第二.2012年7月,SDN代表厂商Nicira ...

  2. 在字符串资源文件里加入HTML元素,直接使用字符串资源,HTML元素没起作用的解决的方法

    escape  html  in string resource 一. 需求描写叙述 给TextView赋值res资源库中的字符串资源,注意这里是一个string资源,要实现以下的效果 "未 ...

  3. 2016/07/07 apmserv5.2.6 Apache启动失败,请检查相关配置。MySQL5.1已启动。

    因为要用PHP做一个程序,在本机上配PHP环境,下了个APMServ5.26,安装很简单,不再多说,装好后,启动,提示错误,具体是:“Apache启动失败,请检查相关配置.√MySQL5.1已启动”, ...

  4. 安装Ubuntn 和 pycharm

    Ubuntu安装之python开发   什么??公司要用Ubuntu(乌班图)?不会用??怎么进行python开发??? 乌班图操作系统下载地址:http://releases.ubuntu.com/ ...

  5. EasyIPCamera高性能摄像机RTSP服务器RTSPServer解决方案

    EasyIPCamera EasyIPCamera是由EasyDarwin团队开发的一套非常稳定.易用.支持多种平台(包括Windows/Linux 32&64,Android,ARM his ...

  6. echart地图下钻

    需求:展示中国地图,鼠标点击显示对应的省份 在echart的github上下载需要的 地图文件China.js,各个省份的json文件 遇到的问题:直接在浏览器打开报错,跨域问题,用webstrom打 ...

  7. The Little Match Girl,摘自iOS应用Snow White and more stories

    Many years ago on a cold and snowy New Year's Eve, a poor little girl was wandering arround on the s ...

  8. spring定时器的配置

    首先,新建一个java项目,下面导入需要的jar包: 这里有你需要的jar包哦. jar包下载 在src文件夹下,新建一个applicationContext.xml文件 <?xml versi ...

  9. PAT天梯赛 L2-027. 名人堂与代金券 【排序】

    题目链接 https://www.patest.cn/contests/gplt/L2-027 思路 在输入的时候 判断分数 是否符合领取代金券条件 如果符合 SUM 就加上对应的代金券价值 然后在对 ...

  10. 在oc中一些常用的宏定义总结

    1.打印CGRect,Size,Point #define NSLogRect(rect) NSLog(@"%s x:%.4f, y:%.4f, w:%.4f, h:%.4f", ...