Webentwicklung
Webentwicklung reicht von den Grundprotokollen, über die Browser und Server überhaupt kommunizieren, über Sicherheitsmechanismen im Browser bis zu den Werkzeugen, mit denen Websites gebaut und betrieben werden. Die Begriffe hier bauen stark aufeinander auf - wer HTTP versteht, versteht die meisten anderen Konzepte darauf leichter.
Empfohlener Einstieg
- HTTPDas Grundprotokoll, auf dem fast alles andere hier aufbaut.
- URLWie Ressourcen im Web adressiert werden.
- APIWie Anwendungen strukturiert Daten austauschen.
- REST APIDer verbreitetste konkrete API-Stil.
- CookieWie Zustand über eigentlich zustandslose Anfragen hinweg erhalten bleibt.
Grundlagen
HTTP
HTTP (Hypertext Transfer Protocol) ist das Protokoll, mit dem Browser und Server Webseiten, Dateien und Daten austauschen.
URI
Ein URI (Uniform Resource Identifier) ist ein Bezeichner, der eine Ressource eindeutig identifiziert - eine URL ist eine spezielle Art von URI, die zusätzlich angibt, wie die Ressource erreichbar ist.
URL
Eine URL (Uniform Resource Locator) ist die vollständige Adresse einer Ressource im Web, bestehend aus Protokoll, Domain, Pfad und optionalen Parametern.
API
Eine API (Application Programming Interface) ist eine definierte Schnittstelle, über die Software-Systeme miteinander kommunizieren können.
REST API
Eine REST API ist eine Programmierschnittstelle, die den Prinzipien der Representational State Transfer (REST) Architektur folgt und Ressourcen über HTTP-Methoden wie GET, POST oder DELETE ansprechbar macht.
GraphQL
GraphQL ist eine von Facebook entwickelte Anfragesprache für APIs, mit der Clients genau die Daten anfordern können, die sie benötigen - nicht mehr und nicht weniger.
Webhook
Ein Webhook ist eine automatische HTTP-Benachrichtigung, mit der ein System ein anderes über ein Ereignis informiert, sobald es eintritt.
JSON
JSON (JavaScript Object Notation) ist ein leichtgewichtiges, textbasiertes Datenformat zum strukturierten Austausch von Daten.
WebSocket
WebSocket ist ein Kommunikationsprotokoll, das eine dauerhafte, bidirektionale Verbindung zwischen Browser und Server aufbaut und so Echtzeit-Datenaustausch ohne wiederholte HTTP-Anfragen ermöglicht.
Markdown
Markdown ist eine leichtgewichtige Auszeichnungssprache, mit der sich Texte durch einfache Zeichenfolgen formatieren lassen und die sich sowohl in reiner Textform lesen als auch in HTML umwandeln lässt.
Nutzererlebnis & Performance
Cache
Ein Cache ist ein Zwischenspeicher, der häufig genutzte Daten vorhält, um wiederholte Anfragen schneller beantworten zu können, statt sie erneut zu berechnen oder zu übertragen.
Cookie
Ein Cookie ist eine kleine Textdatei, die eine Website im Browser eines Nutzers speichert, um Zustände wie Logins oder Präferenzen über mehrere Anfragen hinweg zu erhalten.
Session
Eine Session ist ein zusammenhängender Zeitraum, in dem ein Nutzer eine Website oder Anwendung verwendet, während der ein Server ihn anhand einer Sitzungskennung wiedererkennt.
Core Web Vitals
Core Web Vitals sind von Google definierte Kennzahlen, die die reale Ladeleistung, Interaktivität und visuelle Stabilität einer Website messen.
Progressive Web App
Eine Progressive Web App (PWA) ist eine Website, die sich durch zusätzliche Web-Technologien wie ein App-ähnliches Erlebnis, Offline-Funktionalität und Installierbarkeit auf dem Gerät verhält, ohne über einen App-Store vertrieben zu werden.
Sicherheit im Browser
CORS
CORS (Cross-Origin Resource Sharing) ist ein Browser-Sicherheitsmechanismus, der regelt, ob Webseiten Daten von einer anderen Domain per JavaScript abrufen dürfen.
CSP
Content Security Policy (CSP) ist ein Browser-Sicherheitsmechanismus, mit dem eine Website per HTTP-Header oder Meta-Tag festlegt, welche Quellen für Skripte, Styles und andere Ressourcen vertrauenswürdig sind, um Angriffe wie Cross-Site Scripting zu erschweren.
CSRF
CSRF (Cross-Site Request Forgery) ist eine Angriffstechnik, bei der ein Angreifer einen eingeloggten Nutzer dazu verleitet, unwissentlich eine unerwünschte Aktion auf einer anderen Website auszuführen.
XSS
XSS (Cross-Site Scripting) ist eine Sicherheitslücke, bei der Angreifer schädlichen Code in eine an sich vertrauenswürdige Website einschleusen, der dann im Browser anderer Nutzer ausgeführt wird.
OAuth
OAuth ist ein offener Autorisierungsstandard, mit dem Nutzer einer Anwendung erlauben können, in ihrem Namen begrenzt auf Ressourcen bei einem anderen Dienst zuzugreifen, ohne dabei ihr Passwort weiterzugeben.
JWT
JWT (JSON Web Token) ist ein kompaktes, digital signiertes Datenformat, mit dem sich Ansprüche wie Identität oder Berechtigungen sicher zwischen zwei Parteien übertragen lassen.
Rate Limiting
Rate Limiting begrenzt die Anzahl an Anfragen, die ein Client innerhalb eines bestimmten Zeitraums an einen Server oder eine API stellen darf, um Missbrauch und Überlastung zu verhindern.
Infrastruktur & Tools
CDN
Ein CDN (Content Delivery Network) verteilt Inhalte über weltweit verteilte Server, damit Nutzer sie von einem geografisch nahen Standort schnell laden können.
Docker
Docker ist eine Plattform zur Containerisierung von Anwendungen, mit der sich Software samt aller Abhängigkeiten in portable, isolierte Einheiten verpacken lässt, die auf jedem System identisch laufen.
Git
Git ist ein verteiltes Versionskontrollsystem, mit dem sich Änderungen an Dateien über die Zeit nachvollziehen, parallel bearbeiten und zwischen mehreren Personen zusammenführen lassen.
WordPress
Plugin
Ein Plugin ist eine Erweiterung, die einer bestehenden Software zusätzliche Funktionen hinzufügt, ohne den Kern der Software selbst verändern zu müssen.
Theme
Ein Theme bestimmt das visuelle Erscheinungsbild einer Website - Layout, Farben, Typografie -, während Inhalte und Funktionen davon weitgehend unabhängig bleiben.
WordPress
WordPress ist ein quelloffenes Content-Management-System, mit dem sich Websites über eine grafische Oberfläche erstellen und verwalten lassen, ohne zwingend selbst programmieren zu müssen.
Weitere Begriffe
AJAX
AJAX (Asynchronous JavaScript and XML) bezeichnet die Technik, im Browser per JavaScript Daten im Hintergrund nachzuladen, ohne die gesamte Seite neu laden zu müssen.
Alternativtext
Ein Alternativtext ist eine im alt-Attribut eines Bildes hinterlegte Textbeschreibung, die Screenreadern und anderen assistiven Technologien mitteilt, welche Information oder Funktion das Bild trägt, wenn es nicht visuell wahrgenommen werden kann.
ARIA
ARIA (Accessible Rich Internet Applications) ist eine Sammlung von HTML-Attributen, die assistiven Technologien zusätzliche semantische Informationen über Rolle, Zustand und Eigenschaften von Elementen liefern, wenn natives HTML dafür nicht ausreicht.
aria-label
Das Attribut aria-label überschreibt den zugänglichen Namen eines Elements für assistive Technologien mit einem beliebigen Text, der nirgends sichtbar im Dokument steht.
Barrierefreie Formulare
Ein barrierefreies Formular verknüpft jedes Feld eindeutig mit einer sichtbaren Beschriftung, ist vollständig per Tastatur bedienbar und teilt Fehler so mit, dass sie auch ohne visuelle Wahrnehmung auffindbar und verständlich sind.
Barrierefreiheit
Barrierefreiheit bezeichnet die Gestaltung von Websites, Apps und digitalen Diensten so, dass sie von Menschen mit unterschiedlichen körperlichen, sensorischen oder kognitiven Einschränkungen wahrgenommen, bedient und verstanden werden können.
Barrierefreiheitserklärung
Eine Barrierefreiheitserklärung ist die von Gesetzen wie BFSG oder BITV 2.0 verlangte Information darüber, wie eine Website oder App die geltenden Barrierefreiheitsanforderungen erfüllt, mit welchen Einschränkungen und über welchen Weg sich Nutzer bei Problemen melden können.
BFSG
Das Barrierefreiheitsstärkungsgesetz (BFSG) verpflichtet Anbieter bestimmter Produkte und Dienstleistungen für Verbraucher - darunter viele Online-Shops - dazu, diese barrierefrei zugänglich zu machen.
BITV 2.0
Die Barrierefreie-Informationstechnik-Verordnung (BITV 2.0) verpflichtet Behörden und andere öffentliche Stellen des Bundes in Deutschland dazu, ihre Websites, Apps und Intranets barrierefrei zu gestalten.
CI/CD
CI/CD (Continuous Integration / Continuous Deployment) bezeichnet die automatisierte Kette aus Testen, Bauen und Ausliefern von Software bei jeder Codeänderung.
Client
Ein Client ist ein Programm, das aktiv eine Verbindung zu einem Server aufbaut, um Daten oder Funktionalität anzufragen.
Content-Management-System
Ein Content-Management-System (CMS) ist eine Software, mit der sich digitale Inhalte über eine grafische Oberfläche erstellen, verwalten und veröffentlichen lassen, ohne für jede Änderung den zugrunde liegenden Code bearbeiten zu müssen.
CSS
CSS (Cascading Style Sheets) ist die Stylesheet-Sprache, mit der das visuelle Erscheinungsbild von HTML-Inhalten festgelegt wird - etwa Farben, Abstände, Schriftarten und Layout.
DOM
Das DOM (Document Object Model) ist die vom Browser erzeugte, programmatisch veränderbare Baumstruktur eines HTML-Dokuments, über die JavaScript auf Inhalt und Struktur einer Seite zugreift.
European Accessibility Act
Der European Accessibility Act (EAA) ist eine EU-Richtlinie, die europaweit einheitliche Mindestanforderungen an die Barrierefreiheit bestimmter Produkte und Dienstleistungen festlegt und von den Mitgliedstaaten national umgesetzt werden musste.
Farbkontrast
Farbkontrast bezeichnet den messbaren Helligkeitsunterschied zwischen Text- und Hintergrundfarbe; die WCAG legen dafür Mindestkontrastverhältnisse fest, damit Text auch für Menschen mit eingeschränktem Sehvermögen lesbar bleibt.
Fokus
Der Fokus markiert das Element, das gerade per Tastatur bedient werden kann - erkennbar an einem visuellen Indikator wie einem Rahmen -, und muss bei jeder Interaktion sichtbar und in einer logischen Reihenfolge nachvollziehbar bleiben.
Hash-Funktion
Eine Hash-Funktion bildet beliebig große Eingabedaten deterministisch auf eine Ausgabe fester Länge ab, aus der sich die ursprünglichen Daten nicht zurückrechnen lassen.
HTML
HTML (HyperText Markup Language) ist die Auszeichnungssprache, mit der die Struktur und der Inhalt von Webseiten beschrieben werden.
HTTP-Header
HTTP-Header sind Schlüssel-Wert-Paare, die zusätzliche Metadaten zu einer HTTP-Anfrage oder -Antwort übertragen, getrennt vom eigentlichen Inhalt.
HTTP-Methode
Eine HTTP-Methode gibt an, welche Art von Aktion eine HTTP-Anfrage auf einer Ressource ausführen soll - etwa GET zum Abrufen oder POST zum Übermitteln von Daten.
JavaScript
JavaScript ist eine Programmiersprache, mit der sich das Verhalten von Webseiten im Browser dynamisch steuern lässt - von einfachen Interaktionen bis zu vollständigen Webanwendungen.
localhost
localhost ist der reservierte Hostname, mit dem ein Gerät auf sich selbst verweist, meist gekoppelt an die IP-Adresse 127.0.0.1.
MIME-Typ
Ein MIME-Typ ist eine standardisierte Bezeichnung, die das Format einer übertragenen Datei angibt, etwa "text/html" oder "image/png", damit der Empfänger sie korrekt interpretieren kann.
Modale Dialoge
Ein modaler Dialog blendet ein Fenster über dem restlichen Seiteninhalt ein, blockiert dessen Bedienung, bis der Dialog geschlossen wird, und muss dafür den Tastaturfokus aktiv verwalten - beim Öffnen hinein, beim Schließen zurück zum auslösenden Element.
Platform as a Service
Platform as a Service (PaaS) ist ein Hosting-Modell, bei dem Entwickler Anwendungscode direkt bereitstellen und der Anbieter Betriebssystem, Serververwaltung und einen Großteil des laufenden Betriebs darunter übernimmt.
Redirect
Ein Redirect ist eine serverseitige Anweisung, die Browser und Suchmaschinen automatisch von einer ursprünglich aufgerufenen URL zu einer anderen Ziel-URL weiterleitet.
Screenreader
Ein Screenreader ist eine assistive Software, die Bildschirminhalte als synthetische Sprache oder über eine Braillezeile ausgibt, damit blinde oder stark sehbeeinträchtigte Nutzer Websites und Anwendungen bedienen können.
Semantisches HTML
Semantisches HTML bezeichnet die Verwendung von HTML-Elementen entsprechend ihrer inhaltlichen Bedeutung - etwa button, nav oder h1 - statt bedeutungsloser div- und span-Container, damit Struktur und Funktion einer Seite auch für Browser und assistive Technologien erkennbar sind.
Server
Ein Server ist ein Programm oder Computer, der Anfragen von anderen Programmen (Clients) über ein Netzwerk entgegennimmt und beantwortet.
Serverless
Serverless bezeichnet ein Ausführungsmodell, bei dem Code in kurzlebigen, automatisch skalierten Funktionen läuft und Serververwaltung sowie Abrechnung vollständig vom Cloud-Anbieter übernommen werden.
Single Page Application
Eine Single Page Application (SPA) ist eine Webanwendung, die nach dem ersten Laden nur noch Daten nachlädt und die Seite per JavaScript im Browser aktualisiert, statt bei jeder Interaktion ein vollständig neues HTML-Dokument vom Server anzufordern.
Tastaturfalle
Eine Tastaturfalle (Keyboard Trap) liegt vor, wenn der Fokus per Tastatur zwar in ein Element hinein, aber nicht mehr regulär hinaus bewegt werden kann - der Nutzer bleibt in diesem Element gefangen.
Tastaturnavigation
Tastaturnavigation bezeichnet die Möglichkeit, eine Website oder Anwendung vollständig ohne Maus zu bedienen, üblicherweise über die Tab-Taste, Umschalt+Tab, Enter, die Leertaste und die Pfeiltasten.
Überschriftenstruktur
Eine korrekte Überschriftenstruktur ordnet Inhalte einer Seite hierarchisch über die HTML-Elemente h1 bis h6 an, ohne Ebenen zu überspringen, und erlaubt es Screenreader-Nutzern, sich per Überschriften-Navigation einen Überblick über die Seite zu verschaffen.
WCAG
Die Web Content Accessibility Guidelines (WCAG) sind ein vom W3C herausgegebener, international anerkannter Kriterienkatalog dafür, wie Webinhalte für Menschen mit Behinderungen barrierefrei gestaltet werden können.
Web Storage
Web Storage ist eine Browser-Schnittstelle, mit der Websites Schlüssel-Wert-Daten direkt im Browser speichern können, ohne dass sie wie bei einem Cookie automatisch bei jeder Anfrage an den Server mitgesendet werden.
Vertiefende Artikel
BFSG vs. BITV 2.0 - Unterschiede einfach erklärt
Wer unter das BFSG fällt, wer unter die BITV 2.0, und warum eine BITV-Barrierefreiheitserklärung keine gültige Vorlage für ein BFSG-Unternehmen ist.
Core Web Vitals verbessern
Praktische Ansatzpunkte, um Largest Contentful Paint, Interaction to Next Paint und Cumulative Layout Shift zu verbessern.
GraphQL vs. REST
Zwei grundlegend unterschiedliche Ansätze, APIs zu gestalten - und welche Kriterien bei der Wahl zwischen beiden wirklich den Ausschlag geben.
HTTP/2 vs. HTTP/3
Was sich zwischen den beiden aktuellen HTTP-Versionen technisch unterscheidet und warum HTTP/3 auf UDP statt TCP setzt.
OAuth vs. JWT
Zwei Begriffe, die im Kontext von API-Authentifizierung häufig gemeinsam auftauchen, aber völlig unterschiedliche Fragen beantworten - und wie sie in der Praxis zusammenspielen, samt der Sonderfälle, an denen dieses Zusammenspiel oft missverstanden wird.
Progressive Web Apps erklärt
Wie die drei technischen Bausteine einer PWA tatsächlich zusammenspielen, wo die Grenzen zwischen den Plattformen liegen, und ein Entscheidungsrahmen für native App, PWA oder responsive Website.
Website auf Barrierefreiheit testen
Welche Ebenen ein belastbarer Barrierefreiheits-Test kombinieren muss - von automatischen Tools über die Tastatur- und Screenreader-Prüfung bis zur manuellen Inhaltsbewertung - und warum ein perfekter Lighthouse-Score kein Nachweis für Barrierefreiheit ist.
Website nach BFSG barrierefrei gestalten
Welche Websites unter das Barrierefreiheitsstärkungsgesetz fallen, was "barrierefrei" dabei konkret bedeutet, und wie sich ein Angebot in der Praxis darauf prüfen lässt.
WordPress-Caching verstehen
Warum Caching bei WordPress-Websites so wirkungsvoll ist, welche Cache-Ebenen dabei zusammenspielen, welche Sonderfälle regelmäßig zu Problemen führen und wie sich Caching-Fehler gezielt eingrenzen lassen.