Backend bouwen met Python

Python

In de cursus Backend bouwen met Python leer je hoe je een moderne backend ontwikkelt die via een API toegankelijk is. In vier dagen bouw je een Python backend met FastAPI, draai je deze in een Docker-omgeving en koppel je de applicatie aan een PostGIS database. De backend kan GeoJSON data ontvangen, opslaan en via een API beschikbaar maken voor toepassingen zoals webkaarten, dashboards en GIS-applicaties.

Cursusduur: 4 dagen

Gegeven door:

Joram van der Vlist
Nederlands

Introductie tot Python backends en moderne API-architecturen

In moderne data-architecturen speelt de backend een centrale rol. Applicaties, dashboards, mobiele apps en GIS-systemen communiceren vaak met een backend via een API (Application Programming Interface). Een backend verwerkt verzoeken, voert logica uit en slaat data op in databases.

Python is uitgegroeid tot een van de meest gebruikte programmeertalen voor het bouwen van dergelijke systemen. Dankzij moderne frameworks zoals FastAPI kunnen ontwikkelaars snel krachtige en goed gestructureerde API’s bouwen. FastAPI staat bekend om zijn hoge performance, automatische documentatie en goede ondersteuning voor moderne Python-standaarden.

In deze cursus leer je hoe je een Python backend ontwikkelt die via een API toegankelijk is. Je bouwt een backendservice met FastAPI, verpakt deze in een Docker-container en koppelt de applicatie aan een PostGIS database voor het opslaan van geografische data.

Het eindresultaat van de cursus is een volledig werkende backendservice die GeoJSON data kan ontvangen, opslaan en ontsluiten via een API.

De cursus is praktijkgericht opgezet. Basiskennis van Python is voldoende om deel te nemen.

De basis van moderne backend-architecturen

Moderne software bestaat vaak uit meerdere services die via API’s met elkaar communiceren. In plaats van één grote applicatie worden systemen opgebouwd uit kleinere componenten die afzonderlijk kunnen draaien.

Een backend API vormt daarbij de centrale toegang tot data en functionaliteit. Applicaties sturen HTTP-verzoeken naar de backend, waarna de server deze verwerkt en een gestructureerde response terugstuurt, meestal in JSON-formaat.

Frameworks zoals FastAPI maken het mogelijk om snel API-endpoints te definiëren, data te valideren en automatische documentatie te genereren. Hierdoor kunnen ontwikkelaars efficiënt en betrouwbaar backendservices bouwen.

In deze cursus leer je hoe zo’n API-architectuur in de praktijk wordt opgezet en hoe verschillende componenten samenwerken.

Containers en deployment met Docker

Een belangrijk onderdeel van moderne softwareontwikkeling is containerisatie. Met containers kunnen applicaties in een gestandaardiseerde omgeving worden verpakt, waardoor ze eenvoudig kunnen worden uitgerold op verschillende systemen.

In deze cursus werken we met Docker, een platform waarmee applicaties inclusief hun afhankelijkheden in containers worden uitgevoerd. Hierdoor wordt het eenvoudiger om software te ontwikkelen, testen en deployen.

Tijdens de eerste twee dagen leer je hoe Docker werkt en hoe je applicaties kunt containeriseren. Je leert onder andere:

  • hoe Docker-images worden opgebouwd
  • hoe containers worden gestart en beheerd
  • hoe services met elkaar communiceren
  • hoe databases en applicaties in containers samenwerken

Deze basis vormt de infrastructuur waarop later de Python backend wordt gebouwd.

Backendontwikkeling met Python en FastAPI

Na de introductie in Docker ga je aan de slag met het bouwen van een backendservice in Python. Hiervoor gebruiken we FastAPI, een modern framework voor het ontwikkelen van web-API’s.

Je leert hoe je API-routes definieert, hoe HTTP-requests worden verwerkt en hoe data wordt gevalideerd met behulp van Python-modellen. Daarnaast zie je hoe FastAPI automatisch interactieve API-documentatie genereert, wat het testen en gebruiken van de API aanzienlijk vereenvoudigt.

Tijdens de cursus ontwikkel je stap voor stap een backend die verzoeken kan ontvangen, verwerken en opslaan in een database.

Werken met geodata en PostGIS

Veel moderne applicaties werken met locatiegegevens. Daarom wordt in deze cursus gebruikgemaakt van PostgreSQL met PostGIS, een krachtige database-extensie voor het opslaan en analyseren van geografische data.

Je leert hoe een backend verbinding maakt met een database en hoe geografische gegevens kunnen worden opgeslagen in de vorm van GeoJSON.

De backend die je ontwikkelt kan GeoJSON-data ontvangen via een API, opslaan in een PostGIS database en deze gegevens weer beschikbaar maken via API-endpoints.

Hierdoor ontstaat een backendservice die geschikt is voor toepassingen zoals:

  • webkaarten
  • geo-dashboards
  • data-analyse
  • GIS-applicaties

Praktische backend-architectuur: van API tot database

Tijdens de cursus bouw je een complete backendarchitectuur bestaande uit meerdere componenten:

  • een FastAPI-applicatie
  • een PostGIS database
  • een Docker-omgeving waarin de services draaien

Je leert hoe deze componenten samenwerken en hoe data via API-requests wordt verwerkt en opgeslagen.

Aan het einde van de cursus heb je een werkend prototype gebouwd: een self-hosted Python backend die via een API GeoJSON data kan ontvangen, opslaan en ontsluiten.

Waarom kiezen voor deze cursus?

Het volgen van deze cursus biedt een aantal belangrijke voordelen voor developers en data-professionals.

Praktijkgerichte aanpak
Je bouwt zelf een werkende backendservice met een API en database.

Moderne technologieën
Je werkt met actuele tools zoals Python, FastAPI, Docker en PostGIS.

Inzicht in backendarchitecturen
Je leert hoe moderne API-gebaseerde systemen zijn opgebouwd.

Toepassing op geodata
De cursus laat zien hoe geografische data via een API kan worden opgeslagen en ontsloten.

Na afloop van de cursus heb je een goed begrip van hoe backendservices worden ontwikkeld en hoe Python kan worden gebruikt om schaalbare API-gebaseerde systemen te bouwen.

Lees meer

Inschrijven






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

    €1795,- Excl. btw

    €1795,- Excl. btw

    Dag indeling

    Dag 1 – Introductie tot Docker en containerisatie

    Op de eerste dag maak je kennis met de basisprincipes van containerisatie en moderne softwaredeployment. Je leert waarom containers een belangrijke rol spelen in moderne softwarearchitecturen en hoe ze worden gebruikt om applicaties in een gestandaardiseerde en reproduceerbare omgeving te draaien.

    Je werkt met Docker en leert hoe Docker-images worden opgebouwd en hoe containers worden gestart en beheerd. Daarnaast krijg je inzicht in hoe applicaties en databases binnen containers kunnen samenwerken. Aan het einde van de dag heb je een goed begrip van hoe containeromgevingen werken en hoe je een eenvoudige applicatie in Docker kunt draaien.

    Dag 2 – Docker voor applicaties en databases

    Op de tweede dag ga je verder met Docker en leer je hoe meerdere services samen kunnen draaien in een containeromgeving. Je werkt met configuraties waarin een applicatie en een database met elkaar communiceren.

    Je leert hoe je containeromgevingen configureert, hoe volumes worden gebruikt voor dataopslag en hoe services met elkaar kunnen verbinden binnen een Docker-netwerk. Daarnaast wordt aandacht besteed aan het structureren van projecten zodat applicaties eenvoudig kunnen worden gestart en beheerd in een containeromgeving.

    Aan het einde van de tweede dag heb je een werkende Docker-opstelling waarin een applicatie en een database samen draaien.

    Dag 3 – Backendontwikkeling met Python en FastAPI

    Op de derde dag verschuift de focus naar backend ontwikkeling met Python. Je leert hoe een backend API wordt opgebouwd en hoe applicaties via HTTP met een server communiceren.

    Je werkt met FastAPI, een modern Python-framework voor het ontwikkelen van web-API’s. Je leert hoe API-routes worden gedefinieerd, hoe requests worden verwerkt en hoe data wordt gevalideerd. Daarnaast zie je hoe FastAPI automatisch documentatie genereert voor API-endpoints.

    Tijdens deze dag ontwikkel je een eerste versie van een backend service die verzoeken kan ontvangen en verwerken.

    Dag 4 – Database-integratie en werken met geodata

    Op de vierde dag wordt de backend gekoppeld aan een database. Je werkt met PostgreSQL en PostGIS om geografische data op te slaan en te beheren.

    Je leert hoe een backend verbinding maakt met een database, hoe data kan worden opgeslagen en hoe deze via API-endpoints weer beschikbaar wordt gemaakt. Daarbij werk je met GeoJSON als formaat voor het uitwisselen van geografische data.

    Aan het einde van de cursus heb je een werkend prototype gebouwd: een self-hosted Python backend die GeoJSON-data via een API kan ontvangen, opslaan in een PostGIS database en weer beschikbaar kan maken voor toepassingen zoals webkaarten, dashboards of GIS-applicaties.

    Cursusduur: 4 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.

    Andere cursussen

    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.