Flyingis

          Talking and thinking freely !
          Flying in the world of GIS !
          隨筆 - 156, 文章 - 16, 評論 - 589, 引用 - 0
          數(shù)據(jù)加載中……

          ArcGIS Server 開發(fā)系列(一)--編程框架總覽

              作者:Flyingis

              本文嚴(yán)禁擅自轉(zhuǎn)載或用于商業(yè)目的,如有需要請事先聯(lián)系作者:dev.vip#gmail.com

              ArcGIS Server是一個發(fā)布企業(yè)級GIS應(yīng)用程序的綜合平臺,如果想對ArcGIS Server基礎(chǔ)有更多的了解,可以先看看《ArcGIS Server 體系結(jié)構(gòu)》、ESRI(中國)BBS論壇ESRI網(wǎng)站。這里及接下來的一系列文章將主要介紹ArcGIS Server開發(fā)相關(guān)的內(nèi)容(如不加說明,后文中Server專指ArcGIS Server),由淺入深,充分利用Server的資源來構(gòu)建我們的企業(yè)級應(yīng)用,同時也可以了解Server的優(yōu)勢及不足,在實(shí)際應(yīng)用中揚(yáng)長避短。

              進(jìn)行Server開發(fā)之前,我們首先需要了解Server開發(fā)的整體架構(gòu)。下圖(截取自官方文檔)可以看到,Server提供了一系列的應(yīng)用開發(fā)途徑,從 1到4難度逐步增加,當(dāng)然功能和可定制性也越來越強(qiáng),我們可以充分利用Server提供的這些資源來構(gòu)建我們的應(yīng)用。


              Web應(yīng)用開發(fā)

              Server為Web應(yīng)用開發(fā)提供了一系列的開發(fā)方式,在visual studio 2005中可以直接使用Web Mapping Application template建立應(yīng)用,它包含了Web ADF框架,是學(xué)習(xí)Server開發(fā)的入口。對照上面的示意圖,可以這樣來理解,如果想使用各種Web控件加上少量代碼來構(gòu)建Web應(yīng)用,可以直接使用第一種途徑,這樣的應(yīng)用比較死板,讓人感覺有點(diǎn)想搭積木,程序員可能沒有任何成就感,好處是開發(fā)迅速,適合入門學(xué)習(xí)或做個簡單的Server演示。如果想在 Common API基礎(chǔ)上,使用各種通用的functionality,通過各種data source類型來定制Web ADF,可以使用第二種開發(fā)途徑。如果想使用Common API,并且需要通過Common API調(diào)用specific API來定制Web ADF,可以通過第三種途徑來開發(fā)。Web應(yīng)用不能使用第四種途徑。

              Web Service開發(fā)

              Web Service是什么不用再介紹,ArcGIS提供了兩種類型的Web Service創(chuàng)建方法:GIS Web Service和Application Web Service。

              GIS Web Service提供了一種將ArcGIS Server Object(Local data source)發(fā)布為ArcGIS Server Web Service(Internet data source)的ESRI標(biāo)準(zhǔn),GIS Web Service不用于開發(fā),通常它們是用來發(fā)布信息和提供資源,ArcMap就可以直接使用GIS Web Service的資源而不用進(jìn)行任何開發(fā),另外Web ADF控件和Common API也可以使用GIS Web Service資源。因?yàn)镚IS Web Service基于標(biāo)準(zhǔn)web service,它可以作為傳統(tǒng)web service來使用,ArcGIS Server提供了SOAP API進(jìn)行相關(guān)的開發(fā),以后的學(xué)習(xí)中會使用到。

              Application Web Service是基于標(biāo)準(zhǔn)web service建立的應(yīng)用,使用一種ESRI的data source進(jìn)行開發(fā)。因?yàn)閣eb service沒有用戶接口,上圖中途徑一不適合這樣的應(yīng)用,途徑四是最適合的,因?yàn)閣eb service可充分利用ESRI提供的各種data source specific API的所有functionality。

              桌面客戶端應(yīng)用開發(fā)

              ESRI在桌面客戶端應(yīng)用中提供了兩種實(shí)現(xiàn)GIS功能和服務(wù)的方法:ArcGIS Engine和data source specific developer APIs,上圖中只有第四種途徑可用于桌面客戶端應(yīng)用。

              ArcEngine不論是和本地GIS資源交互,還是使用遠(yuǎn)程數(shù)據(jù)資源,都擁有豐富的控件和眾多API,但它在使用和分發(fā)之前必須進(jìn)行授權(quán)注冊,而任何data source specific developer APIs都可以在桌面客戶端應(yīng)用中編程使用。

              移動應(yīng)用開發(fā)

              移動應(yīng)用和Web應(yīng)用、web services比較類似,但它們是為某一個特定的客戶端環(huán)境而設(shè)計,如PocketPC。Mobile ADF是為移動應(yīng)用定制的開發(fā)框架,通常使用途徑四來進(jìn)行開發(fā),這樣可以充分利用ArcGIS Server Web services和SOAP API提供的功能。

          posted on 2007-08-09 15:54 Flyingis 閱讀(6549) 評論(2)  編輯  收藏 所屬分類: ArcGIS Server

          評論

          # re: ArcGIS Server 開發(fā)系列(一)--編程框架總覽  回復(fù)  更多評論   

          《ArcGIS Server 體系結(jié)構(gòu)》
          這是一本書嗎?
          2008-06-25 20:42 | lijuan_1202@hotmail.com

          # re: ArcGIS Server 開發(fā)系列(一)--編程框架總覽  回復(fù)  更多評論   

          是發(fā)在博客上的系列文章
          http://flyingis.cnblogs.com
          2008-07-30 14:14 | Flyingis
          主站蜘蛛池模板: 东乡县| 泸定县| 名山县| 永济市| 连城县| 保定市| 海丰县| 齐河县| 长治市| 城市| 晴隆县| 子长县| 稷山县| 将乐县| 龙州县| 盖州市| 莆田市| 安陆市| 宜宾市| 固原市| 恭城| 商洛市| 定州市| 南华县| SHOW| 尼木县| 石棉县| 永新县| 莆田市| 金塔县| 香港 | 通江县| 红桥区| 安西县| 镇江市| 北辰区| 汤阴县| 南木林县| 绥中县| 监利县| 乌恰县|