Backend bouwen met Python

Python

Van GeoJSON naar API: een schaalbare backend met Python, Docker en PostGIS

Driedaagse cursus waarin je leert een Python-backend te bouwen die geodata ontsluit via een API. Je werkt met Docker, FastAPI en PostgreSQL/PostGIS en ontwikkelt stap voor stap een self-hosted backend waarin GeoJSON-data wordt opgeslagen en via een API beschikbaar wordt gemaakt.

De cursus sluit goed aan op onze cursussen over IoT, microcontrollers en sensordata, maar kan ook volledig los gevolgd worden. De inputdata is een GeoJSON en kan dus uit allerlei bronnen komen: sensoren, GIS-systemen, scripts of externe datasets.

Voorkennis: basiskennis Python.

Cursusduur: 3 dagen

Gegeven door:

Joram van der Vlist
Nederlands

Introductie tot Python backends en moderne API-architecturen

Veel moderne geo-toepassingen bestaan uit meerdere onderdelen: sensoren of datasets die data leveren, een backend die de data verwerkt en opslaat, en applicaties die de data gebruiken in kaarten, dashboards of analyses.

De backend vormt hierbij het centrale onderdeel. Hier wordt data ontvangen, gevalideerd, opgeslagen en beschikbaar gemaakt via een API.

In deze cursus leer je hoe je zo’n backend zelf bouwt met Python en FastAPI, een modern framework dat speciaal ontworpen is voor het bouwen van snelle en schaalbare API’s.

We hosten de backend in Docker, zodat de applicatie eenvoudig te draaien en te deployen is. Dit maakt het mogelijk om een backend consistent te draaien op verschillende systemen en omgevingen.

De backend slaat data op in PostgreSQL met PostGIS, een veelgebruikte database voor geodata. GeoJSON-data wordt via de API ontvangen en opgeslagen als geometrieën in de database.

Je leert daarmee hoe een moderne geo-data architectuur werkt:

GeoJSON → API → backend → database → applicatie

De cursus sluit goed aan op onze cursussen over IoT en microcontrollers, waarin sensoren data verzamelen. In deze backend-cursus bouwen we het systeem dat die data ontvangt, opslaat en beschikbaar maakt.

Maar de cursus is ook zelfstandig te volgen. De GeoJSON-data kan afkomstig zijn uit sensoren, scripts, GIS-software of externe datasets.

Omdat de cursus drie dagen duurt ligt het tempo relatief hoog en richten we ons op het bouwen van een werkende backendarchitectuur, niet op diepgaande DevOps of databaseadministratie.

Wat je leert in deze cursus

Tijdens deze driedaagse cursus leer je hoe je een Python-backend ontwikkelt voor het verwerken en ontsluiten van geodata.

Je leert onder andere:

  • hoe een backend-architectuur voor data-applicaties werkt
  • hoe je Docker gebruikt om een backend-omgeving te draaien
  • hoe je een API bouwt met FastAPI
  • hoe je GeoJSON-data ontvangt en valideert
  • hoe je geodata opslaat in PostgreSQL/PostGIS
  • hoe een backend communiceert met andere applicaties
  • hoe een API wordt gestructureerd en gedocumenteerd

Aan het einde van de cursus heb je een werkende backend ontwikkeld die GeoJSON-data via een API opslaat in een PostGIS-database.

Waarom kiezen voor deze cursus

Veel programmeercursussen behandelen losse onderdelen zoals Python, databases of Docker. In deze cursus combineren we deze technologieën in één samenhangend systeem.

Je leert niet alleen hoe je code schrijft, maar ook hoe je een moderne backend-architectuur opzet.

De cursus sluit goed aan op onze cursussen over:

  • IoT en microcontrollers
  • sensordata en dataverzameling
  • geo-data infrastructuren

Maar is ook geschikt voor iedereen die een backend voor data- of geo-applicaties wil ontwikkelen.

Voor wie is deze cursus bedoeld

Deze cursus is bedoeld voor professionals en studenten die willen leren hoe je data via een backend beschikbaar maakt voor applicaties.

De cursus is geschikt voor:

  • GIS-specialisten
  • geo-data analisten
  • Python developers
  • data engineers
  • onderzoekers die met data-applicaties werken

Voorkennis van Python op basisniveau is vereist. Er is geen voorkennis van Docker, FastAPI of databases nodig.

Inschrijven






    Korting: 10% bij 3 cursisten
    15% vanaf 4 cursisten

    €1795,- Excl. btw

    €1795,- Excl. btw

    Dag indeling

    Dag 1 — Backend omgeving opzetten

    Op de eerste dag zetten we de volledige backend-omgeving op.

    We gebruiken Docker om een ontwikkelomgeving te maken waarin de Python-backend en database samen draaien. Zo leer je hoe moderne applicaties worden opgebouwd uit meerdere services.

    Onderwerpen van dag 1

    • introductie containerisatie
    • wat is Docker en waarom gebruiken we het
    • werken met Docker images en containers
    • Docker Compose gebruiken voor meerdere services
    • opzetten van een backend-ontwikkelomgeving
    • introductie PostgreSQL en PostGIS
    • verbinding maken tussen backend en database

    Aan het einde van deze dag draait een werkende backend-omgeving met Python en PostGIS in Docker.

    Dag 2 — API bouwen met FastAPI

    Op de tweede dag bouwen we de Python-backend zelf.

    We gebruiken FastAPI om een API te maken waarmee applicaties data kunnen versturen en ophalen.

    Onderwerpen van dag 2

    • introductie FastAPI
    • structuur van een Python-backend
    • endpoints bouwen voor een API
    • werken met request en response modellen
    • validatie van data
    • automatische API-documentatie
    • testen van API-endpoints

    Aan het einde van deze dag heb je een werkende API die data kan ontvangen en teruggeven.

    Dag 3 — GeoJSON verwerken en data opslaan

    Op de laatste dag koppelen we alle onderdelen aan elkaar.

    De backend ontvangt GeoJSON-data via de API en slaat deze op in een PostGIS-database.

    Onderwerpen van dag 3

    • werken met GeoJSON in een API
    • geodata opslaan in PostgreSQL/PostGIS
    • API-endpoints voor data-opslag
    • data ophalen via de API
    • testen van de backend
    • structuur en uitbreiding van een backend-project

    Het eindresultaat van de cursus is een self-hosted Python-backend die GeoJSON-data via een API opslaat in een PostGIS-database.

    Cursusduur: 3 dagen
    Schrijf me in

    Leerdoelen

    Na afloop van deze cursus kun je:

    • uitleggen hoe een moderne backend-architectuur met API’s, services en databases is opgebouwd.
    • een REST API ontwikkelen met Python en FastAPI.
    • API-endpoints definiĂ«ren en HTTP-requests verwerken en valideren.
    • een applicatie containeriseren en draaien met Docker.
    • een backend koppelen aan een PostgreSQL/PostGIS database.
    • GeoJSON-data opslaan, ophalen en ontsluiten via een API voor gebruik in GIS- en webapplicaties.
    Profiel foto van Suzy Palmer-Smith. Onze Opleidingscoördinator Internationaal

    Meer informatie?

    Heb je vragen over de inhoud van de cursus? Of twijfel je of de cursus aansluit bij jouw leerdoelen of wensen? Liever incompany of een privé cursus? We helpen je graag verder.

    Veelgestelde vragen over Backend bouwen met Python

    FastAPI is een modern Python-framework dat speciaal is ontwikkeld voor het bouwen van snelle en goed gestructureerde API’s. Het framework maakt gebruik van Python type hints voor automatische validatie van data en genereert automatisch interactieve API-documentatie via OpenAPI en Swagger. Hierdoor is FastAPI zeer geschikt voor het ontwikkelen van data-API’s en microservices. In vergelijking met frameworks zoals Flask biedt FastAPI meer ingebouwde functionaliteit voor API-ontwikkeling, terwijl het lichter en eenvoudiger is dan een full-stack framework zoals Django.

    Docker maakt het mogelijk om applicaties samen met alle afhankelijkheden in een container te verpakken. Hierdoor draait de applicatie in elke omgeving op dezelfde manier, ongeacht het besturingssysteem of de configuratie van de server. Dit voorkomt veelvoorkomende problemen zoals verschillen tussen ontwikkel-, test- en productieomgevingen. Daarnaast maakt Docker het eenvoudig om meerdere services, zoals een backend en een database, samen te laten draaien in een gecontroleerde en reproduceerbare omgeving.

    Ja, zolang deelnemers basiskennis van Python hebben. Tijdens de cursus worden de belangrijkste concepten van backend ontwikkeling stap voor stap uitgelegd, zoals API-routes, HTTP-requests en databaseverbindingen. Ook containerisatie met Docker wordt vanaf de basis behandeld. Hierdoor kunnen deelnemers zonder eerdere backendervaring toch een goed begrip ontwikkelen van hoe moderne API-gebaseerde systemen werken.

    De backend die tijdens de cursus wordt ontwikkeld kan worden gebruikt als dataservice voor verschillende toepassingen. Omdat de API GeoJSON-data kan opslaan en ontsluiten via HTTP-endpoints, kan deze bijvoorbeeld worden gekoppeld aan webkaarten, dashboards, mobiele applicaties of GIS-systemen. Hierdoor kan de backend dienen als centrale datahub voor geografische data in toepassingen zoals monitoringplatforms, smart city-projecten of geodata-analyses.

    GeoJSON is een veelgebruikt formaat voor het uitwisselen van geografische data via web-API’s. In de backend wordt GeoJSON meestal eerst ontvangen via een API-endpoint en vervolgens omgezet naar een geometrie-object dat kan worden opgeslagen in een PostGIS-kolom. PostGIS ondersteunt verschillende geometrische typen, zoals punten, lijnen en polygonen. Door GeoJSON-data op deze manier op te slaan kan de database ruimtelijke queries uitvoeren, zoals afstandsberekeningen, intersecties of gebiedsanalyses.