Úvodní hodina

Programování v GIS 4

Jan Caha

2025-09-16

Náplň

  • programování v Pythonu s QGIS Python API (také PyQGIS) pro QGIS
  • zpracování a editace dat pomocí QGIS API, vektorová i rastrová data
  • možnosti automatizace v QGIS pomocí Pythonu
  • vytváření skriptů, nástrojů a extenzí pro QGIS v Pythonu

O čem to bude

  • programování skriptů v Pythonu (funkce, objekty, atd.)
  • práce s QGIS Python API a její dokumentací
  • operace s geodaty skrze QGIS API
  • objektově orientované programování (něco málo i funkcionálního programování)
  • odchytávání výjimek - práce s nimi

Dílčí úlohy

  • použitelný a čitelný kód
  • replikovatelné postupy
  • programovací techniky a postupy
  • debugování programů

V čem budeme pracovat

  • VS Code
  • extenze pro VS Code
  • management Pythonu - buď systémový (Linux) nebo skrze OSGEO4W (Windows)
  • použití GitHub Copilot AI viz zde

Materiály

Z čeho vycházíme

  • znalost Pythonu dle předmětu Programování v GIS 2 a Programování v GIS 3
  • znalost QGIS a jeho základních funkcí

Zakončení předmětu

  • samostatný projekt
    • netriviální zpracování samostatně vybraných dat s důrazem na použitelný kód (??? - v řešení)
  • písemka - klíčové položky programování v Pythonu a ArcPy, interpretace kódu

GitHub Copilot

  • budeme s ním zacházet opatrně
  • nenahrazuje znalost programování
  • je v pořádku ✅: napovídání, vysvětlování, revize kódu
  • není v pořádku ❌: generování celých úloh (problém juniorních programátorů), používání AI jako jediného zdroje informací (mamé obvykle i dokumentaci)
  • uživatel by měl stále být ten kdo má kreativní kontrolu a představu, co a jak daný program řeší a případně to upravovat směrem k lepším řešením
  • Pravidlo: “Rozumím tomu, co píšu” -pokud nedokážete vysvětlit, co váš kód dělá, pravděpodobně byste ho neměli používat

Dotazy?