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