Hallo! Willkommen zur dritten Lektion im Modul "Technische Vokabular für Software-Ingenieure".
In der letzten Lektion haben wir gelernt, wie man einen Software-Entwicklungsprozess beschreibt – von den klassischen Phasen bis zu einem modernen CI/CD-Workflow. Sie können nun erklären, dass Sie Code schreiben, testen und bereitstellen.
Heute gehen wir einen Schritt tiefer. Unser Ziel ist es, die Funktion der Kernwerkzeuge aus Ihrem Tech-Stack zu erklären (z.B. REST-API, Celery, Redis). Statt nur zu sagen "Ich verwende eine REST-API", können Sie nach dieser Lektion erklären, warum und wie Sie sie verwenden. Dies ist eine entscheidende Fähigkeit für technische Diskussionen und Vorstellungsgespräche, um Ihre Expertise zu demonstrieren.
1. Die Funktion einer REST-API erklären
In Ihrer Arbeit als Full-Stack-Entwickler ist die REST-API die Brücke zwischen dem Frontend (z.B. React) und dem Backend (z.B. Django). Wie erklärt man ihre Rolle und Funktionsweise auf Deutsch?
Zuerst sehen wir uns ein kurzes Video an, das die Grundlagen einer REST-API auf Deutsch erklärt.
Was ist eine REST-API? - Einführung in REST-APIs (incl. Authentication) | UPDATE von alten Video
Das Video 'Was ist eine REST-API?' vom Kanal 'Coding Crashkurse' bietet eine sehr klare und kompakte Einführung. Es behandelt die Kernkonzepte wie Client, Server, HTTP-Methoden und Endpunkte.
Sehen Sie sich den Anfang des Videos von 00:00 bis 01:27 an. Konzentrieren Sie sich darauf, die deutschen Begriffe für die Konzepte zu lernen, die Sie bereits kennen: Request, HTTP methods (GET, POST, PUT, DELETE), Endpoint und Request Body.
Die REST-API ist also eine Schnittstelle (interface), die die Kommunikation zwischen verschiedenen Systemen nach festen Regeln ermöglicht.

Hier sind die wichtigsten Vokabeln und Phrasen, um die Funktion einer REST-API zu beschreiben:
| Deutsch | Englisch | Beispielsatz zur Funktionsbeschreibung |
|---|---|---|
| die Schnittstelle | interface | Eine REST-API ist eine Schnittstelle für die Kommunikation. |
| die Anfrage / der Request | request | Der Client schickt eine Anfrage an den Server. |
| die Antwort / der Response | response | Der Server sendet eine Antwort im JSON-Format zurück. |
| Daten abrufen | to retrieve data | Mit einer GET-Anfrage kann man Daten abrufen. |
| Daten erstellen | to create data | Mit einer POST-Anfrage kann man neue Daten erstellen. |
| Daten aktualisieren | to update data | Eine PUT-Anfrage wird verwendet, um Daten zu aktualisieren. |
| Daten löschen | to delete data | Um Daten zu löschen, sendet man eine DELETE-Anfrage. |
| die Zustandslosigkeit | statelessness | Ein wichtiges Prinzip von REST ist die Zustandslosigkeit. |
| ermöglichen / erlauben | to enable / to allow | Die API ermöglicht dem Frontend, auf die Datenbank zuzugreifen. |
Um die fundamentalen Prinzipien hinter REST tiefer zu verstehen und zu erklären, lesen Sie bitte den folgenden Artikel.
Was ist eine REST API? Kurz erklärt!
Der Artikel 'Was ist eine REST API? Kurz erklärt!' von appleute.de vertieft die Konzepte. Er erklärt die architektonischen Prinzipien, die eine REST-API ausmachen, wie Zustandslosigkeit und die einheitliche Schnittstelle.
Lesen Sie die Abschnitte 'Wichtige architektonische Einschränkungen der REST-API' und 'FAQ- Rest-API'. Konzentrieren Sie sich besonders auf die Erklärungen zu 'Zustandslosigkeit' (Statelessness), 'Einheitliche Schnittstelle' (Uniform Interface) und die Antwort auf die Frage 'Was ist der Zweck der REST-API?'.
Test your understanding!
In einem Interview werden Sie gefragt: „Wofür verwenden Sie die POST-Methode bei Ihrer API?“ Wie antworten Sie mit einem vollständigen Satz auf Deutsch?
Show answer
Eine gute Antwort wäre: „Ich verwende die POST-Methode, um neue Ressourcen oder Daten auf dem Server zu erstellen. Wenn ein Nutzer zum Beispiel ein neues Profil anlegt, sendet das Frontend eine POST-Anfrage mit den Nutzerdaten an die API.“
(I use the POST method to create new resources or data on the server. For example, when a user creates a new profile, the frontend sends a POST request with the user data to the API.)
2. Die Funktion von Redis erklären
Redis ist ein weiteres Kernstück Ihres Stacks, oft genutzt für Caching und asynchrone Aufgaben. Wie erklären Sie seine Rolle? Redis ist primär eine In-Memory-Datenbank, was sie extrem schnell macht.
Dieser Artikel gibt einen guten Überblick über die Funktionen und Anwendungsfälle von Redis.
Der Artikel 'Redis - In-Memory-Datenbank' von softwarelogic.co fasst die Stärken und Anwendungsfälle von Redis prägnant zusammen. Dies hilft Ihnen, die Funktion von Redis im Kontext Ihrer Architektur zu beschreiben.
Lesen Sie die Abschnitte 'Was ist Redis?', 'Vorteile von Redis in Business-Projekten' und 'Wofür wird Redis verwendet?'. Achten Sie besonders auf die Anwendungsfälle 'Cache-Layer' und 'Task Queues und Hintergrundjobs', da diese für Ihren Stack am relevantesten sind.
Wie Sie im Artikel gelesen haben, ist einer der wichtigsten Anwendungsfälle die Nutzung als Cache oder als Message Broker für Task Queues.
Hier ist das Vokabular, um die Funktion von Redis zu erklären:
| Deutsch | Englisch | Beispielsatz zur Funktionsbeschreibung |
|---|---|---|
| die In-Memory-Datenbank | in-memory database | Redis ist eine sehr schnelle In-Memory-Datenbank. |
| der Zwischenspeicher / Cache | cache | Wir verwenden Redis als Zwischenspeicher, um Datenbankabfragen zu reduzieren. |
| die Latenz | latency | Redis hat eine Sub-Millisekunden-Latenz. |
| als ... dienen / fungieren | to serve as / to function as | Redis dient als Cache für häufig abgerufene Daten. |
| zwischenspeichern | to cache | Wir zwischenspeichern die Ergebnisse komplexer Berechnungen in Redis. |
| der Nachrichtenvermittler / Message Broker | message broker | Für Hintergrundaufgaben fungiert Redis als Nachrichtenvermittler. |
| die Warteschlange / Queue | queue | Aufgaben werden in einer Redis-Warteschlange platziert. |
3. Die Funktion von Celery (in Verbindung mit Redis) erklären
Celery ist in Ihrem Django-Stack wahrscheinlich für die Verarbeitung von Hintergrundaufgaben zuständig. Die Kombination "Celery + Redis" wurde im vorherigen Artikel bereits erwähnt. Celery ist eine asynchrone Task-Queue.
Wie funktioniert das Zusammenspiel?
- Ihre Django-Anwendung muss eine langlaufende Aufgabe ausführen (z.B. einen Report generieren, eine E-Mail senden).
- Statt die Aufgabe direkt auszuführen und den Nutzer warten zu lassen, übergibt Django die Aufgabe an Celery.
- Celery legt diese Aufgabe als Nachricht in eine Warteschlange (Queue), die von Redis verwaltet wird. Redis agiert hier als Nachrichtenvermittler (Message Broker).
- Unabhängige Prozesse, die Celery-Worker, nehmen die Aufgaben aus der Redis-Queue auf und führen sie im Hintergrund aus.
Diese Architektur entlastet (offloads/relieves) die Web-Anwendung und verbessert die Reaktionsfähigkeit für den Nutzer erheblich.

Wichtige Phrasen, um diese Architektur zu beschreiben:
- Celery ermöglicht die asynchrone Verarbeitung von Aufgaben. (Celery enables asynchronous processing of tasks.)
- Wir nutzen Celery, um langlaufende Prozesse in den Hintergrund auszulagern. (We use Celery to offload long-running processes to the background.)
- Redis dient als Message Broker zwischen der Django-App und den Celery-Workern. (Redis serves as the message broker between the Django app and the Celery workers.)
- Das entlastet den Webserver und verbessert die User Experience. (This offloads the web server and improves the user experience.)
Test your understanding!
Sie müssen einem Projektmanager ohne technischen Hintergrund erklären, warum eine bestimmte Funktion (z.B. der Versand von 10.000 E-Mails) mit Celery und Redis implementiert wird. Wie würden Sie das in einfachen Worten tun?
Show answer
Eine gute, einfache Erklärung wäre:
„Wir benutzen Celery und Redis, damit der Nutzer nicht warten muss, bis alle 10.000 E-Mails versendet sind. Wenn der Nutzer auf 'Senden' klickt, gibt unsere Anwendung die Aufgabe sofort an ein Hintergrundsystem ab und die Webseite reagiert wieder. Celery arbeitet die lange Liste dann im Hintergrund ab, ohne die Anwendung für den Nutzer zu blockieren. Redis hilft dabei, diese Aufgabenliste zu verwalten.“
Zusammenfassung und Ausblick
Ausgezeichnet! Sie können nun die Funktion Ihrer wichtigsten Backend-Werkzeuge präzise auf Deutsch erklären.
Ihre heutigen Kernkompetenzen:
- Sie können erklären, dass eine REST-API als Schnittstelle dient, um die Kommunikation zwischen Client und Server über HTTP-Methoden wie
GET,POST,PUTundDELETEzu ermöglichen. - Sie können die Rolle von Redis als schnelle In-Memory-Datenbank beschreiben, die als Cache zur Reduzierung der Datenbanklast oder als Message Broker für Warteschlangen dient.
- Sie können das Zusammenspiel von Celery und Redis erklären, um asynchrone Hintergrundaufgaben zu verarbeiten und so die Hauptanwendung zu entlasten.
In der nächsten Lektion verlassen wir die reine Technik und wenden uns den Prozessen zu, in denen Sie diese Technik einsetzen. Wir werden das deutsche Vokabular für agile Methoden wie Sprint, Backlog und Daily Stand-up lernen. So können Sie nicht nur über Ihre Architektur, sondern auch über Ihre Arbeitsweise im Team sprechen.