很多人認為學習編程很難,但事實上,學習編程是未來任何技術工作的基本技能,在不遠的將來,可能會成為一種基本辦公技能,因此,學習 GIS 編程是很重要的。本文將帶大家學習 GIS 編程教程 - 如何編碼,可以根據自己的需要進行參考。
通過實踐學習編碼
有時學習編碼的更佳 *** 是遠離 GIS,只專注于編碼方面,往往練習編碼的次數越多,就會越熟練。學習如何編碼的更流行的 *** 之一是直接通過瀏覽器練習編碼,以下是能夠執行此操作的頂級交互式編碼平臺,如果您對在線交互式編碼平臺感興趣,可參閱以下內容,幫助您培養編程技能:
1.獲得 GIS 編程和 Python 認證
Python 一直是 GIS 中的標準語言,Esri 和開源都傾向于使用它。如果您是 GIS 編程的新手,建議您先學習 Python,它一直非常受大家的歡迎。通過利用 Python 庫,許多人認為這種 GIS 腳本語言是領先者。
添加微信好友, 獲取更多信息
復制微信號
以下是推薦的可以提高 GIS 編程技能的免費課程:
- Python 編程的基礎和更佳實踐: 學習變量、條件和循環來控制程序的流程,利用復雜數據結構的力量,如列表、 *** 、字典和元組。
- 用 Python 編寫代碼:利用 NumPy、Pandas 和 Matplotlib 等 Python 庫來處理數據, 此課程的重點是數據分析和工程。
- 編碼詞典:此課程揭開了開發中常見的令人生畏的術語和行話的神秘面紗,以及了解程序員每天的工作以及版本控制。
2.GIS 應用程序編程 – C++、.NET、C
除了 Python,GIS 程序員還使用 C++、C# 和 .NET。 C++ 允許在多種環境中工作, 具體來說,C# 和 .NET 語言提供了開發工具以及與基于 Windows 的軟件的交互。以下是 3 個入門課程,可應用于您的編程之旅,且所有課程均免費,可根據需要自行安排學習。
- C++ For Programmers:本 C++ 課程側重于“如何”而不是“什么”。它不是教給大家什么是函數,而是指導如何在 C++ 中創建一個函數。
- Java 中的面向對象編程:利用對象、承接和 *** 構建交互式 Java 程序。OOP 將代碼維護為對象并通過實例化重用代碼,無論您選擇哪種編程語言,都可以將 OOP 與其結合使用。
- Esri 培訓課程和 MOOC: 本課程重點是腳本語言以及如何在 Esri ArcGIS 桌面自動化 GIS 任務。
3.JavaScript – 讓網頁更具交互性
如果想讓網頁動態化,JavaScript 會在 Web 瀏覽器中運行并操縱基于 *** 的內容的行為。例如,Esri 的Javascript API 是 Flex 和 Silverlight 的接替者。以下免費課程提供了很好的 JavaScript 基礎,供大家參考:
- JavaScript 簡介: JavaScript 入門課程可幫助您構建現代 Web 應用程序,為任何應用程序、網站或系統奠定基礎。
- 面向對象的 JavaScript:了解如何使用 JavaScript 框架中 的面向對象編程功能來構建具有可維護代碼的應用程序。OOP 無需復制和粘貼代碼行,而是幫助將自己的代碼塊構建為庫。
如今,Web 開發已成為熱門話題……GIS 行業也不例外,如今它也越來越傾向于交互式 Web 地圖和 ArcGIS Online 等基于云的平臺。如果您正在尋找這種需求量很大的編程語言,請查看是否可以在 Codecademy 上找到免費課程。
4.SQL 和 UML – 數據庫管理
GIS 系統依靠數據庫輸入、編輯和維護來管理數據。幾乎所有現代數據庫系統(DBMS)都使用 SQL(結構化查詢語言)。以下是可以升級 SQL 的免費課程,供大家參考:
- 用于數據分析 的SQL: SQL 查詢可幫助管理關系數據庫中的數據。本課程教您如何使用 SQL 來存儲、查詢和操作數據。
- 關系數據庫簡介:學習使用數據庫作為后端編寫代碼的必要技能。此外,它還教授如何使用 Python API 將 Python 代碼連接到數據庫。
- 數據庫系統概念與設計:佐治亞理工學院通過一個主要的現實世界項目教授數據庫設計,例如,數據庫使用查詢、輸入和刪除來微調數據。
如果要在 GIS 中工作,則應熟悉 SQL 并能夠執行 SELECT、INSERT、MODIFY 和 DELETE 語句,同樣,關聯和進一步的 SQL 知識在該領域受到極大的重視。給定數據庫后,您應該能夠瀏覽其中的數據模型,UML 圖概述了每個數據庫的設計結構,這就是 Microsoft Visio 等設計工具可以簡化結構設計過程之處。
5. R Spatial – 統計和數據分析
統計學家和數據挖掘者利用 R 進行開放式統計軟件開發和分析。但您可能不知道的是,GIS 已經通過 R Spatial 采用了這種統計計算、可視化和分析。
同樣,更好學習一些與地理信息系統沒有嚴格聯系的編程語言/軟件包,建議可在 R 注冊這些免費課程:
- 使用 R 進行數據分析:通過 R 利用更正式的統計 *** 對數據進行可視化分析和調查。
- 統計簡介:使用統計數據從數據中提取意義。本課程將向您介紹在數據中的可視化關系技術,以及使用數學理解關系的系統技術。
- 使用 R 進行數據可視化:了解適用于 R 的 ggplot2 數據可視化包中的所有內容,并將此概念應用于基本的條形圖、直方圖、餅圖、散點圖、折線圖和箱形圖。
6.Leaflet 和 OpenLayers – 構建復雜的 *** 地圖
豐富的 Web 地圖通常使用開源 JavaScript 庫(如 Leaflet.js),JavaScript 庫是別人寫的代碼,這往往與 Python 模塊的分布方式相同。例如,JQuery,three.js 和 bootstrap 均是當今使用的 JavaScript 庫。當使用 Leaflet 時,可以從 JavaScript 庫構建自己的 Web 地圖。這就是為什么 JavaScript 在 GIS 中具有如此出色的交互式查看功能的原因。Leaflet.js 有據可查且易于學習,利用 JavaScript 幾乎可以執行任何操作,如從空間分析到強大的底圖服務器。
- Leaflet for Beginners:使用 Leaflet *** 構建基于地圖的應用程序,另外,學習 Leaflet *** 的核心概念。
- OpenLayers 3 示例:這個免費資源提供了集群、動畫、Geo *** ON、熱圖、WebGL 等的代碼示例。
但是,除非應用動態 Web 地圖,否則將無法真正了解如何創建動態 Web 地圖,以及利用更復雜的 Web 地圖工程測試您的知識,例如,制作至少包含 2 個可切換圖層的 Web 地圖。
7.HTML 和 CSS 標記
HTML 是一種標記語言,它為網頁提供結構,如標題、表格和列表等。雖然 CSS 使用布局設計網頁樣式,但它也提供顏色、字體和大小等功能,此外,Dojo 工具包還提供了語言實用程序和 UI 組件。
- HTML 和 CSS 簡介:本課程將教授給大家 HTML 和 CSS 的基礎知識,以及 HTML、CSS 和 JavaScript 協同工作以創建動態 Web 內容。如果您已經在使用 JavaScript,則會發現 HTML、CSS、JavaScript、XML、JQuery 和 AJAX 在 Web 開發中存在價值的原因。隨著 GIS 技術向云端的轉移,Web 開發可能只是一個更好的職業選擇。
GitHub 和 CodeAcademy 編碼社區
GitHub 就像是開發者的 Facebook,它是一個開放的社區,能夠幫助開發人員了解其同行正在做什么。GitHub 開發人員可以按版本檢查項目的整個歷史記錄,還可以研究項目的代碼并自行修改。
- 如何使用 Git 和 GitHub: 在項目的整個生命周期內使用版本控制,并通過 GitHub 進行優化協作。
- CodeAcademy:免費學習編碼。CodeAcademy 為所有級別學員提供交互式動手學習,并在每一步提供技術指導。
接下來就可以挑戰自己了,通過以上提及的 GIS 編程技能將所學的知識付諸實踐,例如,可以從簡單創建個人 Web 地圖項目開始,獲取緯度和經度坐標,并使用 Leaflet、ESRI API 或 D3 將其放在 *** 地圖上。
如果想學習 Python,可以通過構建自己的工具箱來管理和處理。例如,將 Excel 文件導入 ArcGIS 并使用 Python 腳本對該 shapefile 運行分析。使用 Python 的更大優勢是可以自動化工作流程并重復冗余任務。同樣,如果您處于求職中,簡歷中添加您對 Python 編程的應用知識可以提升您的經驗值,錄取通過率會更大。
來源鏈接:https://www.osgeo.cn/post/1cd47
本站聲明:網站內容來源于 *** ,如有侵權,請聯系我們,我們將及時處理。