|
原創(chuàng) 開(kāi)源集思 開(kāi)源集思 2022-07-19 09:20 發(fā)表于吉林
很多人認(rèn)為學(xué)習(xí)編程很難,但事實(shí)上,學(xué)習(xí)編程是未來(lái)任何技術(shù)工作的基本技能,在不遠(yuǎn)的將來(lái),可能會(huì)成為一種基本辦公技能,因此,學(xué)習(xí) GIS 編程是很重要的。本文將帶大家學(xué)習(xí) GIS 編程教程 - 如何編碼,可以根據(jù)自己的需要進(jìn)行參考。 通過(guò)實(shí)踐學(xué)習(xí)編碼有時(shí)學(xué)習(xí)編碼的最佳方法是遠(yuǎn)離 GIS,只專(zhuān)注于編碼方面,往往練習(xí)編碼的次數(shù)越多,就會(huì)越熟練。學(xué)習(xí)如何編碼的最流行的方法之一是直接通過(guò)瀏覽器練習(xí)編碼,以下是能夠執(zhí)行此操作的頂級(jí)交互式編碼平臺(tái),如果您對(duì)在線交互式編碼平臺(tái)感興趣,可參閱以下內(nèi)容,幫助您培養(yǎng)編程技能: ● DataCamp 回顧:通過(guò)實(shí)踐學(xué)習(xí)編碼 ● Udacity 回顧: Nanodegree 計(jì)劃 ● Dataquest 回顧: 編碼變得簡(jiǎn)單 1.獲得 GIS 編程和 Python 認(rèn)證Python 一直是 GIS 中的標(biāo)準(zhǔn)語(yǔ)言,Esri 和開(kāi)源都傾向于使用它。如果您是 GIS 編程的新手,建議您先學(xué)習(xí) Python,它一直非常受大家的歡迎。通過(guò)利用 Python 庫(kù),許多人認(rèn)為這種 GIS 腳本語(yǔ)言是領(lǐng)先者。 以下是推薦的可以提高 GIS 編程技能的免費(fèi)課程: ● Python 編程的基礎(chǔ)和最佳實(shí)踐:學(xué)習(xí)變量、條件和循環(huán)來(lái)控制程序的流程,利用復(fù)雜數(shù)據(jù)結(jié)構(gòu)的力量,如列表、集合、字典和元組。 ● 用 Python 編寫(xiě)代碼:利用 NumPy、Pandas 和 Matplotlib 等 Python 庫(kù)來(lái)處理數(shù)據(jù), 此課程的重點(diǎn)是數(shù)據(jù)分析和工程。 ● 編碼詞典:此課程揭開(kāi)了開(kāi)發(fā)中常見(jiàn)的令人生畏的術(shù)語(yǔ)和行話的神秘面紗,以及了解程序員每天的工作以及版本控制。 2.GIS 應(yīng)用程序編程 – C++、.NET、C除了 Python,GIS 程序員還使用 C++、C# 和 .NET。C++ 允許在多種環(huán)境中工作, 具體來(lái)說(shuō),C# 和 .NET 語(yǔ)言提供了開(kāi)發(fā)工具以及與基于 Windows 的軟件的交互。以下是 3 個(gè)入門(mén)課程,可應(yīng)用于您的編程之旅,且所有課程均免費(fèi),可根據(jù)需要自行安排學(xué)習(xí)。 ● C++ For Programmers:本 C++ 課程側(cè)重于“如何”而不是“什么”。它不是教給大家什么是函數(shù),而是指導(dǎo)如何在 C++ 中創(chuàng)建一個(gè)函數(shù)。 ● Java 中的面向?qū)ο缶幊?/span>:利用對(duì)象、承接和集合構(gòu)建交互式 Java 程序。OOP 將代碼維護(hù)為對(duì)象并通過(guò)實(shí)例化重用代碼,無(wú)論您選擇哪種編程語(yǔ)言,都可以將 OOP 與其結(jié)合使用。 ● Esri 培訓(xùn)課程和 MOOC:本課程重點(diǎn)是腳本語(yǔ)言以及如何在 Esri ArcGIS 桌面自動(dòng)化 GIS 任務(wù)。 3.JavaScript – 讓網(wǎng)頁(yè)更具交互性如果想讓網(wǎng)頁(yè)動(dòng)態(tài)化,JavaScript 會(huì)在 Web 瀏覽器中運(yùn)行并操縱基于網(wǎng)絡(luò)的內(nèi)容的行為。例如,Esri 的Javascript API 是 Flex 和 Silverlight 的接替者。以下免費(fèi)課程提供了很好的 JavaScript 基礎(chǔ),供大家參考: 如今,Web 開(kāi)發(fā)已成為熱門(mén)話題……GIS 行業(yè)也不例外,如今它也越來(lái)越傾向于交互式 Web 地圖和 ArcGIS Online 等基于云的平臺(tái)。如果您正在尋找這種需求量很大的編程語(yǔ)言,請(qǐng)查看是否可以在 Codecademy 上找到免費(fèi)課程。 4.SQL 和 UML – 數(shù)據(jù)庫(kù)管理GIS 系統(tǒng)依靠數(shù)據(jù)庫(kù)輸入、編輯和維護(hù)來(lái)管理數(shù)據(jù)。幾乎所有現(xiàn)代數(shù)據(jù)庫(kù)系統(tǒng)(DBMS)都使用 SQL(結(jié)構(gòu)化查詢(xún)語(yǔ)言)。以下是可以升級(jí) SQL 的免費(fèi)課程,供大家參考: 如果要在 GIS 中工作,則應(yīng)熟悉 SQL 并能夠執(zhí)行 SELECT、INSERT、MODIFY 和 DELETE 語(yǔ)句,同樣,關(guān)聯(lián)和進(jìn)一步的 SQL 知識(shí)在該領(lǐng)域受到極大的重視。給定數(shù)據(jù)庫(kù)后,您應(yīng)該能夠?yàn)g覽其中的數(shù)據(jù)模型,UML 圖概述了每個(gè)數(shù)據(jù)庫(kù)的設(shè)計(jì)結(jié)構(gòu),這就是 Microsoft Visio 等設(shè)計(jì)工具可以簡(jiǎn)化結(jié)構(gòu)設(shè)計(jì)過(guò)程之處。 5. R Spatial – 統(tǒng)計(jì)和數(shù)據(jù)分析統(tǒng)計(jì)學(xué)家和數(shù)據(jù)挖掘者利用 R 進(jìn)行開(kāi)放式統(tǒng)計(jì)軟件開(kāi)發(fā)和分析。但您可能不知道的是,GIS 已經(jīng)通過(guò) R Spatial 采用了這種統(tǒng)計(jì)計(jì)算、可視化和分析。 同樣,最好學(xué)習(xí)一些與地理信息系統(tǒng)沒(méi)有嚴(yán)格聯(lián)系的編程語(yǔ)言/軟件包,建議可在 R 注冊(cè)這些免費(fèi)課程: ● 使用 R 進(jìn)行數(shù)據(jù)分析:通過(guò) R 利用更正式的統(tǒng)計(jì)方法對(duì)數(shù)據(jù)進(jìn)行可視化分析和調(diào)查。 ● 統(tǒng)計(jì)簡(jiǎn)介:使用統(tǒng)計(jì)數(shù)據(jù)從數(shù)據(jù)中提取意義。本課程將向您介紹在數(shù)據(jù)中的可視化關(guān)系技術(shù),以及使用數(shù)學(xué)理解關(guān)系的系統(tǒng)技術(shù)。 ● 使用 R 進(jìn)行數(shù)據(jù)可視化:了解適用于 R 的 ggplot2 數(shù)據(jù)可視化包中的所有內(nèi)容,并將此概念應(yīng)用于基本的條形圖、直方圖、餅圖、散點(diǎn)圖、折線圖和箱形圖。 6.Leaflet 和 OpenLayers – 構(gòu)建復(fù)雜的網(wǎng)絡(luò)地圖豐富的 Web 地圖通常使用開(kāi)源 JavaScript 庫(kù)(如 Leaflet.js),JavaScript 庫(kù)是別人寫(xiě)的代碼,這往往與 Python 模塊的分布方式相同。例如,JQuery,three.js 和 bootstrap 均是當(dāng)今使用的 JavaScript 庫(kù)。當(dāng)使用 Leaflet 時(shí),可以從 JavaScript 庫(kù)構(gòu)建自己的 Web 地圖。這就是為什么 JavaScript 在 GIS 中具有如此出色的交互式查看功能的原因。Leaflet.js 有據(jù)可查且易于學(xué)習(xí),利用 JavaScript 幾乎可以執(zhí)行任何操作,如從空間分析到強(qiáng)大的底圖服務(wù)器。 但是,除非應(yīng)用動(dòng)態(tài) Web 地圖,否則將無(wú)法真正了解如何創(chuàng)建動(dòng)態(tài) Web 地圖,以及利用更復(fù)雜的 Web 地圖工程測(cè)試您的知識(shí),例如,制作至少包含 2 個(gè)可切換圖層的 Web 地圖。 7.HTML 和 CSS 標(biāo)記HTML 是一種標(biāo)記語(yǔ)言,它為網(wǎng)頁(yè)提供結(jié)構(gòu),如標(biāo)題、表格和列表等。雖然 CSS 使用布局設(shè)計(jì)網(wǎng)頁(yè)樣式,但它也提供顏色、字體和大小等功能,此外,Dojo 工具包還提供了語(yǔ)言實(shí)用程序和 UI 組件。 GitHub 和 CodeAcademy 編碼社區(qū)GitHub 就像是開(kāi)發(fā)者的 Facebook,它是一個(gè)開(kāi)放的社區(qū),能夠幫助開(kāi)發(fā)人員了解其同行正在做什么。GitHub 開(kāi)發(fā)人員可以按版本檢查項(xiàng)目的整個(gè)歷史記錄,還可以研究項(xiàng)目的代碼并自行修改。 接下來(lái)就可以挑戰(zhàn)自己了,通過(guò)以上提及的 GIS 編程技能將所學(xué)的知識(shí)付諸實(shí)踐,例如,可以從簡(jiǎn)單創(chuàng)建個(gè)人 Web 地圖項(xiàng)目開(kāi)始,獲取緯度和經(jīng)度坐標(biāo),并使用 Leaflet、ESRI API 或 D3 將其放在網(wǎng)絡(luò)地圖上。 如果想學(xué)習(xí) Python,可以通過(guò)構(gòu)建自己的工具箱來(lái)管理和處理。例如,將 Excel 文件導(dǎo)入 ArcGIS 并使用 Python 腳本對(duì)該 shapefile 運(yùn)行分析。使用 Python 的最大優(yōu)勢(shì)是可以自動(dòng)化工作流程并重復(fù)冗余任務(wù)。同樣,如果您處于求職中,簡(jiǎn)歷中添加您對(duì) Python 編程的應(yīng)用知識(shí)可以提升您的經(jīng)驗(yàn)值,錄取通過(guò)率會(huì)更大。 確定 |
|
|
來(lái)自: 風(fēng)聲之家 > 《arcGIS》