Software-Entwicklung
Find a file
2026-08-27 11:12:53 +02:00
docs Inhalte hinzugefügt 2026-08-27 11:12:53 +02:00
.gitattributes Inhalte hinzugefügt 2026-08-27 11:12:53 +02:00
.gitignore Inhalte hinzugefügt 2026-08-27 11:12:53 +02:00
LICENSE Initial commit 2026-07-30 09:57:57 +00:00
README.md Inhalte hinzugefügt 2026-08-27 11:12:53 +02:00

Startseite

Software-Entwicklung

Eine deutschsprachige Dokumentation zum Handwerk der Softwareentwicklung — zu dem, was gleich bleibt, wenn man die Programmiersprache wechselt. Wie aus einer unklaren Anforderung ein Entwurf wird, wie man Quelltext schreibt, den in einem halben Jahr noch jemand versteht, wie geprüft wird, ob er tut, was er soll, wie er zuverlässig auf die Zielsysteme kommt und wie man ihn dort betreibt, absichert und über Jahre am Leben hält.

Der Blickwinkel ist der einer Person, die Software tatsächlich baut und danach auch betreibt — nicht der einer Zertifizierungsstelle und nicht der eines Lehrbuchs. Die Dokumentation beschreibt deshalb nicht nur, welches Verfahren es gibt, sondern auch, woran es in der Praxis scheitert, was es kostet und wann man es besser bleiben lässt.

Konkrete Sprachen und Werkzeuge behandeln eigene Dokumentationen: Python, Rust, TypeScript, Bash, Git, Docker, Podman, Kubernetes, Jenkins, Forgejo. Hier steht, wozu man sie einsetzt und wie sie zusammenspielen — nicht, welche Optionen sie kennen.

Inhaltsübersicht

Die Dokumentation besteht aus zwei Hauptteilen. Das Handbuch erklärt die Zusammenhänge und ist zum Lesen gedacht; die Referenz besteht aus Tabellen und Katalogen und ist zum Nachschlagen gedacht. Wer neu einsteigt, beginnt bei Allgemeines.

Einstieg

Hauptteile

Handbuch

Das Handbuch folgt dem Weg, den eine Anforderung durch die Entwicklung nimmt — von der Frage, was gebaut werden soll, bis zu der, wie das Gebaute Jahre später gepflegt wird.

  • Grundlagen — Was Softwareentwicklung ist, Lebenszyklus, Rollen, Paradigmen, Typsysteme, Datenstrukturen, Komplexität, Kodierung, Speicher, Nebenläufigkeit, Übersetzung
  • Vorgehen — Vorgehensmodelle, Agilität, Scrum, Kanban, Anforderungen, Schätzung, Zusammenarbeit, Dokumentation
  • Entwurf — Entwurfsprinzipien, Kopplung und Kohäsion, Entwurfsmuster, Architekturstile, Domain-Driven Design, Schnittstellen, Datenmodellierung, Fehlerbehandlung, Konfiguration, verteilte Systeme
  • Handwerk — Lesbarer Code, Namensgebung, Funktionen, Kommentare, Code Smells, Refactoring, technische Schulden, Debugging, Protokollierung, Werkzeuge, KI-Assistenten
  • Qualitätssicherung — Teststufen, Unit-Tests, TDD, Integrationstests, Attrappen, Abdeckung, statische Analyse, Code-Review, Leistungstests
  • Versionsverwaltung — Grundlagen, Branching-Strategien, Commits, Pull Requests, Versionsnummern, Änderungsprotokolle
  • Bauen und Ausliefern — Bauprozess, Abhängigkeiten, Artefakte, CI, CD, Umgebungen, Container, Migrationen, Veröffentlichungsstrategien, Funktionsschalter
  • Betrieb — DevOps, Beobachtbarkeit, Protokolle und Metriken, Alarmierung, Störungen, Wiederanlauf, Kosten
  • Sicherheit — Sicher entwickeln, häufige Schwachstellen, Geheimnisse, Lieferkette, Kryptografie, Datenschutz durch Technik
  • Praxis — Altlasten, Wartung, Projekte und Teams, Kommunikation, Lernen, Barrierefreiheit, Lizenzen, Ethik

Referenz

Die Referenz listet auf, was man im Alltag nachschlägt.

Verwandte Dokumentationen