Flyingis

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

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

              作者:Flyingis

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

              ArcGIS Server是一個(gè)發(fā)布企業(yè)級(jí)GIS應(yīng)用程序的綜合平臺(tái),如果想對(duì)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è)級(jí)應(yīng)用,同時(shí)也可以了解Server的優(yōu)勢(shì)及不足,在實(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ā)的入口。對(duì)照上面的示意圖,可以這樣來理解,如果想使用各種Web控件加上少量代碼來構(gòu)建Web應(yīng)用,可以直接使用第一種途徑,這樣的應(yīng)用比較死板,讓人感覺有點(diǎn)想搭積木,程序員可能沒有任何成就感,好處是開發(fā)迅速,適合入門學(xué)習(xí)或做個(gè)簡單的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í)中會(huì)使用到。

              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)注冊(cè),而任何data source specific developer APIs都可以在桌面客戶端應(yīng)用中編程使用。

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

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

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

          評(píng)論

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

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

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

          是發(fā)在博客上的系列文章
          http://flyingis.cnblogs.com
          2008-07-30 14:14 | Flyingis
          主站蜘蛛池模板: 葵青区| 溧水县| 睢宁县| 大冶市| 平潭县| 武胜县| 宣化县| 杨浦区| 贵港市| 綦江县| 南投市| 河东区| 荆州市| 澄迈县| 酉阳| 治多县| 大兴区| 易门县| 许昌县| 余干县| 房产| 谢通门县| 新津县| 随州市| 平阳县| 新源县| 梧州市| 翁牛特旗| 台东市| 诸城市| 噶尔县| 五大连池市| 临夏市| 招远市| 美姑县| 西宁市| 疏附县| 汪清县| 太仆寺旗| 克山县| 定远县|