python之于GIS與python之于IT類似 GISer采用python的原因也在于“人生苦短,我用python” python在gis中的應(yīng)用非常之廣 1. desktop GIS: ArcGIS從版本10開始不再支持原來的VBA,而改用python QGIS本身大部分的代碼特別是插件部分可以采用python進行開發(fā) 2. 地圖引擎 mapnik—基于C++引擎的頂級地圖引擎庫,和python結(jié)合比較緊密 mapfish—支持部分專題地圖在線制作 3. webgis python+geodjango 是最常用也最龐大的后臺框架 GISer使用python一定要充分發(fā)揮python語言的特性 如ArcGIS集成phthon是利用了python的腳本語言特性 后臺webgis等服務(wù),可以發(fā)揮python作為語言黏合劑的特性,充分利用已有的GIS算法庫
站在用戶的角度思考問題,與客戶深入溝通,找到鼓樓網(wǎng)站設(shè)計與鼓樓網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:網(wǎng)站設(shè)計、網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、空間域名、虛擬主機、企業(yè)郵箱。業(yè)務(wù)覆蓋鼓樓地區(qū)。
看到這個問題的前兩天,我正好看到一個大牛(GIS520社區(qū)站長)寫的經(jīng)驗介紹。
貼下原文:
本文主要介紹小白如何成為初級WebGIS開發(fā)工程師,只適合對應(yīng)人員參考(WebGIS前端的技能要求和互聯(lián)網(wǎng)前端要求有些差距的)。后續(xù)會有中、高級WebGIS開發(fā)工程師相關(guān)文章。
程序員的職業(yè)崗位,一般的公司會根據(jù)技術(shù)能力情況區(qū)分等級。每個等級有對應(yīng)的薪資范圍。
如果不區(qū)分級別的,可能這個公司就不是以技術(shù)驅(qū)動的公司,研發(fā)團隊管理也不夠?qū)I(yè)。一些大公司可能會像阿里那種級別劃分,p1~p10,騰訊百度也類似。小公司可能就簡單的劃分為初級開發(fā)工程師、中級開發(fā)工程師、高級開發(fā)工程師、技術(shù)經(jīng)理、專家/技術(shù)總監(jiān)。
小白一開始的目標(biāo)就應(yīng)該定位為初級開發(fā)工程師,然后通過努力,成長為中級到高級。那么下面我介紹一下需要具備什么樣的技能才能成為一名合格的WebGIS開發(fā)工程師。
技術(shù)基本要求
1. JavaScript、CSS/HTML掌握;
2. 至少掌握ArcGIS API for javascript 或者 openlayers一種;
3. 懂mysql或oracle或postgresql一種;
4. 掌握Arcgis server或者geoserver發(fā)布地圖服務(wù)并展示;
5. 懂得Java后端語言加分(不強制)。
以上要求,是基于我個人經(jīng)驗以及對一些GIS公司工作的理解。如果你都能滿足,可以隨意找webgis的開發(fā)崗位了。具體什么薪資,每個公司會有點區(qū)別,并且要看個人技術(shù)的總體情況。
注意我對技術(shù)的描述關(guān)鍵詞都是“掌握”,并沒有說是“熟練”,如果是熟練的話,那應(yīng)該至少是中級開發(fā)工程師了。下面我在仔細(xì)的說明這些技能如何學(xué)習(xí)和對應(yīng)初級WebGIS開發(fā)工程師的掌握程度。
1. JavaScript、CSS/HTML掌握
這里邊最重要的是html和JavaScript兩個,其次是css。對webgis公司來說,系統(tǒng)頁面和美觀效果和互聯(lián)網(wǎng)的網(wǎng)站相比,有些差距,所以css這邊要求不高;解釋一下js為什么是最重要的,因為js是用的最多的,所有的web頁面邏輯都是用js來實現(xiàn),一般你的js能力的大小可能決定你工作的效率和所能承擔(dān)的任務(wù)難度大小。
js、css、html三者綜合起來占WebGIS崗位技術(shù)比為70%(就是滿分100分,這里占了70分,看你能拿多少了)。
對于小白,我建議就是先學(xué)習(xí)html,然后了解一下css,最后好好學(xué)習(xí)js。學(xué)習(xí)難度上,html最好學(xué),其次到j(luò)s入門容易,最后到css,css入門和學(xué)好都比較花時間的,需要慢慢來,多練習(xí)。而js入門沒啥難度,但是學(xué)好,熟練,精通就難了。
這里推薦三本書:
《JavaScript權(quán)威指南》第六版
《JavaScript高級程序設(shè)計》第三版
《CSS權(quán)威指南》第三版
初學(xué)者不宜看過多類似的書,只需要一種讀好,讀懂一本就夠了,推薦的都是最好的之一。如果在一開始看不到,可以借助一些網(wǎng)站,比如問w3cschool網(wǎng)站手冊,或者慕課網(wǎng)的一些視頻教程。循序漸進,基礎(chǔ)語法掌握后,嘗試多做練習(xí)。如果不知道做什么,我?guī)湍愠鲱}。
2. 至少掌握ArcGIS API for javascript 或者 openlayers一種
作為一名合格的WebGIS開發(fā)工程師,這個技能是不可少的。但是不管是arcgis還是openlayers地圖框架,都是一個api 庫。
這里解釋一下什么是API,因為完全小白的人可能不了解。API 可以簡單的理解為一個工具箱,里邊有錘子、釘子、螺釘、螺母等工具或零件,你做一樣?xùn)|西或者修一樣?xùn)|西需要什么工具,就找到這個工具箱,然后要用錘子就找到錘子使用就行了。這個是最簡單的比喻,實際上是有點區(qū)別,如果不懂得話,暫且可以這么理解。
要掌握ArcGIS API for javascript 或者 openlayers一種的前提是編程語言JavaScript過關(guān)。越熟悉越好。如果你熟悉使用JavaScript,對于ArcGIS API for javascript 或者 openlayers一種就可以做到,邊看文檔邊操作一樣的效果了。學(xué)習(xí)的話就到對應(yīng)的官網(wǎng)看文檔就夠了,官方demo也比較詳細(xì),沒有哪本書做得比官方文檔好。這里不推薦書籍。
3. 懂mysql或oracle或postgresql一種
工作上,我們可能會經(jīng)常做一些業(yè)務(wù)功能,業(yè)務(wù)簡單的可以理解為增刪改查,而這些數(shù)據(jù)的操作都是基于數(shù)據(jù)庫的。數(shù)據(jù)庫,程序員是必須要掌握熟悉的技能,基本的sql要會寫。不管什么數(shù)據(jù)庫,sql語言都很相似,一開始只需要選擇一種去學(xué)習(xí)就夠了。首選mysql或oracle。
4. 掌握Arcgis server或者geoserver 發(fā)布地圖服務(wù)并展示
這個是軟件層面的使用,真正工作上,可能發(fā)布地圖服務(wù)的工作是技術(shù)支持人員操作的,但是,說道學(xué)習(xí)上,開發(fā)人員也是必須要掌握的。
一方面,自己可以安裝軟件,然后通過學(xué)習(xí)發(fā)布地圖服務(wù),有了地圖服務(wù),自己可以在程序中調(diào)用地圖服務(wù),可以做自己的webgis系統(tǒng),編程練習(xí)等;
另一方面,只有了解了地圖服務(wù)這一層面的知識原理,你才能更好的理解到WebGIS是什么,WebGIS地圖是如何展示和工作的。
5. 懂得Java后端語言加分(不強制)
一些小公司可能會把WebGIS開發(fā)工程師叫做GIS開發(fā)工程師,如果你懂得Java,可能會接觸到一些后端開發(fā)的工作,接口的書寫等。
懂得一門后端編程語言,我個人覺得是比較重要的,對日后學(xué)習(xí)的理解,前后端工作流程的理解都相當(dāng)?shù)闹匾?。而且,你可以自己搭后端,自己寫前端頁面,這樣就可以獨自一人完成一個網(wǎng)站。
當(dāng)你有能力一個人完成一個網(wǎng)站的時候,從數(shù)據(jù)庫表結(jié)構(gòu)設(shè)計、后端框架搭建、接口設(shè)計編碼實現(xiàn),到前端框架搭建、前端編碼頁面實現(xiàn),整個過程你會學(xué)到很多東西。如果你懂后端了,不知道怎么開發(fā)網(wǎng)站,你可以來找我,我指導(dǎo)你去設(shè)計,去實現(xiàn)。
當(dāng)然,小白建議忽略這個技能要求,因為學(xué)習(xí)前面的技能要花費很多時間,日后你往更深的技術(shù)層次追求時,再考慮進去。
寫在最后
上邊的技能要求,針對的是小白或入門級的,如果你不是這個群體,可以忽略;如果你已經(jīng)是初級或者中級開發(fā)工程師了,但是發(fā)現(xiàn)自己有些不足,那你就好好對自己的技術(shù)成長路線規(guī)劃一下。對于未知的技術(shù)學(xué)習(xí)建議:
1. 首先,掌握熟悉你所在公司所使用和涉及的技能
好處:幫助自己更好更快完成工作任務(wù),這樣可以減少加班;領(lǐng)導(dǎo)發(fā)現(xiàn)你能力不錯,對自己也有好處。當(dāng)然,如果你覺得公司使用的技術(shù)比較low,你在混,那建議你盡快離職,不要浪費自己的時間;如果你到哪都是混,那建議你還是轉(zhuǎn)行算了。
2. 不要滿足于現(xiàn)狀,不管是技術(shù)上,還是其他
技術(shù)無止境,一個公司的技術(shù)棧在長時間內(nèi)不會變化的,這個時間可能是3年、5年或者10年。
當(dāng)然,不變化的可能是傳統(tǒng)軟件公司,或者是小公司。不要覺得你工作幾年出去有經(jīng)驗就吃得香了。要有危機感,跟進最新技術(shù)發(fā)展情況,觀察大公司流行使用什么框架技術(shù),自己嘗試去學(xué)習(xí)了解。
也不要找借口說沒時間學(xué)習(xí),如果把自己玩游戲或看電視劇的時間用在學(xué)習(xí)上,會是什么樣子呢?
主要是基于已經(jīng)開發(fā)的gis基礎(chǔ)平臺,一些公司都有類似的地理信息系統(tǒng)平臺sitemapIMS,arcgis
,gismap等這些都是市場上主流的開發(fā)平臺。在這類平臺上針對性的電子地圖項目的二次開發(fā),根據(jù)不同企業(yè)和客戶的對電子地圖應(yīng)用的開發(fā)需求,將自己企業(yè)相關(guān)數(shù)據(jù)應(yīng)用調(diào)用地圖數(shù)據(jù)和業(yè)務(wù)數(shù)據(jù)實現(xiàn)電子地圖的功能的查詢,信息搜索,信息展示,定位導(dǎo)航應(yīng)用等地圖功能,并能夠通過系統(tǒng)開發(fā)來進行相關(guān)數(shù)據(jù)的可視化信息處理得出有用的數(shù)據(jù)分析,目前用的比較廣泛的有,林業(yè)gis系統(tǒng),交通gis系統(tǒng),電子圍欄應(yīng)用,管網(wǎng)gis系統(tǒng),房地產(chǎn)電子地圖分析系統(tǒng)等等。上海為卓一直在從事地圖項目開發(fā)
前端:
1、老一代兩大富應(yīng)用(RIA)框架(目前已經(jīng)停止更新):flex、silverlight
2、其他開源(早期項目較多):openlayer2、amap、bmap、ArcgisAPI4JS(3系列版本)
3、較新框架:openlayer3、cesiums、ArcgisAPI4JS(4.0之后版本)、
4、輕型框架(需要二次封裝):WebGL(例如d3.js、three.js)
后端:arcgisServer、geoserver、mapserver
部分效果如下
flex:
img src="" class="content_image"
openlayers:
img src="" class="content_image"
cesiums:
文章名稱:gis地圖前端技術(shù) gis是前端還是后端
轉(zhuǎn)載來于:http://muchs.cn/article48/dojhhep.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、域名注冊、App開發(fā)、企業(yè)網(wǎng)站制作、全網(wǎng)營銷推廣、定制網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)