ESP - Einführung in sichere Programmierung
ESP: Einführung in sichere Programmierung
ESP steht für Einführung in sichere Programmierung. In diesem Fach geht es darum, Programme nicht nur zum Laufen zu bringen, sondern sie verständlich, wartbar und möglichst robust zu schreiben.
Der Schwerpunkt der Unterlagen liegt auf der Programmiersprache C. C ist nah an Speicher, Datentypen und Maschinenlogik. Genau deshalb eignet sich C gut, um zu verstehen, wo typische Programmierfehler und Sicherheitsprobleme entstehen.
Worum geht es in ESP?
ESP verbindet Programmiergrundlagen mit Sicherheitsdenken.
Zentrale Fragen sind:
- Wie ist ein C-Programm aufgebaut?
- Was passiert beim Kompilieren?
- Welche Rolle spielen Datentypen, Literale und Operatoren?
- Wie funktionieren Präprozessor, Makros und Header-Dateien?
- Wie zerlegt man Programme sinnvoll in Funktionen?
- Wie steuert man Abläufe mit Bedingungen und Schleifen?
- Was sind Felder, Zeiger, Strings und Speicherbereiche?
- Warum sind Eingabeprüfung, Grenzen und klare Zustände sicherheitsrelevant?
Themenbereiche
C-Grundlagen
Literale und Präprozessor
#include, #define, Makros und Header-Dateien.Operatoren und Funktionen
Sichere Programmierung bedeutet
Sichere Programmierung heißt nicht nur, „keine Hacker hereinzulassen“. Es beginnt viel früher:
- Eingaben prüfen
- Speichergrenzen beachten
- Fehlerfälle behandeln
- Datentypen bewusst wählen
- Zustände nachvollziehbar halten
- Funktionen klein und verständlich schreiben
- unnötige Seiteneffekte vermeiden
- Code so schreiben, dass andere ihn prüfen können
Materialgrundlage
Die ESP-Dokumentation basiert auf den bereitgestellten Unterrichtsmaterialien:
- Folien zu Organisation, Grundlagen und erstem C-Programm
- Folien zu Literalen, Präprozessor, Operatoren, Funktionen, Bedingungen, Feldern und Zeigern
- Übungsaufgaben zu Datentypen, Makros, Bitoperatoren, Schleifen, Strings und Game of Life
- Projektdateien zu ASCII-Art, C-Programmen und einem Tamagotchi
- ergänzende Materialien zu Java und zusammengesetzten Datentypen
Merksatz
Sichere Programmierung beginnt dort, wo Code bewusst geschrieben wird: mit klaren Datentypen, geprüften Eingaben, kontrolliertem Speicherzugriff und verständlichen Funktionen.
Zuletzt aktualisiert: 6. Juni 2026