Das KISS-Prinzip – ein Akronym für „Keep it simple, stupid“ existiert bereits seit 60 Jahren. Es ist eine von mehreren Methoden, die die Verständlichkeit von Quellcode zu erhöhen und so den Umgang mit diesem zu vereinfachen.
Code sollte idealerweise gut strukturiert und „inline“ kommentiert werden, um die Lesbarkeit zu vereinfachen.
KISS steht für „Keep It Simple, Stupid“, wahlweise existieren aber auch andere, ähnliche Auflösungen des Akronyms. Es ermahnt Entwickler und Entwicklerinnen dazu, Code möglichst einfach zu halten, und gilt als eine der lose gewählten Säulen der Clean Code-Prinzipien. Was genau KISS beinhaltet, ist nicht eindeutig definiert. Generell gelten jedoch folgende Faustregeln:
Unnötige Komplexität im Code ist zu vermeiden.
Die Problemlösung sollte so simpel wie möglich erreicht werden.
Zu bedenken ist dabei jedoch, dass es sich bei KISS um eher subjektive Einschätzungen handelt. Code, der für die einen Programmierenden unkompliziert erscheint und einfach zu lesen ist, könnten andere als komplex und schwer zu verstehen einstufen. Ob Code daher simpel ist oder nicht, lässt sich kaum anhand objektiver Kriterien belegen, was immer wieder zu Diskussionen über „sauberen Code“ führt.
Neben der Softwareentwicklung ist KISS auch in andere Branchen und Bereiche übergetreten. Beispielsweise wird KISS auch im Marketing angewendet: Kunden sollen alle Vorteile von Produkten und Dienstleistungen aufgezeigt werden, aber dies soll auf eine so simple Weise wie möglich geschehen, damit die Zielgruppe alle Vorteile auf Anhieb versteht.
Welche Vorteile bringt KISS?
Für einen einzigen Developer ist KISS nicht zwingend relevant. Sofern eine Person den selbstgeschriebenen Code versteht und damit umgehen kann, ist bei einem Projekt, das von nur dieser Person betreut wird, kein Problem zu erwarten. Der Code kann sehr komplex und wenig „sauber“ sein und trotzdem funktionieren. Für die Maschine macht es am Ende keinen Unterschied, ob Code nach KISS-Prinzip geschrieben wurde oder nicht.
Seine Vorteile spielt KISS daher meist erst aus, sobald mehrere Programmierende an einem Projekt beteiligt sind. Müssen mehrere Personen Code (oder Teile des Codes) verstehen, führt eine simple Strukturierung des Codes zu einem leichteren Verständnis aller Inhalte. Dies zeigt sich in mehreren Aspekten:
KISS-Code macht beispielsweise die Aufgaben von Klassen, Funktionen oder Variablen sofort verständlich.
Der Ausführungsablauf folgt einer klaren Strukturierung, die Sinn ergibt und leicht zu erfassen ist.
Klassen und Methoden sind eher klein gehalten, außerdem wird ihnen nur eine einzige Funktion zugewiesen.
Durch Arbeitsrichtlinien wie diese wird sichergestellt, dass andere Entwicklerinnen und Entwickler den Code schneller verstehen können. Befolgt ein Entwickler KISS während der eigenen Arbeit, kann dieser später die Entwicklung am Projekt auch komplett einstellen und anderen Personen überlassen. Dies würde wahrscheinlich ohne größere Schwierigkeiten ablaufen, da der Code leicht verständlich ist und die Weiterarbeit keine Probleme mit sich bringt.
KISS in der Softwareerweiterung
Softwareentwicklung steht selten still, meistens werden Anwendungen im Laufe der Zeit um weitere Funktionen ergänzt. KISS kann in diesem Bereich wertvolle Hilfe in mehreren Bereichen leisten:
Einfacher Code ist schneller zu lesen: Führen neue Funktionen im Code zu Bugs, lassen diese sich wahrscheinlich schneller finden. Dies kann vor allem in komplexeren Projekten sehr viel Zeit sparen.
Leicht erfassbarer Code lässt sich einfacher erweitern: Ist der Code leicht zu verändern, gelingt die Einbindung neuer Features wahrscheinlich schneller und reibungsloser - was Zeit und Geld spart.
Vor allem in Open-Source-Projekten kann KISS Vorteile in Bezug auf die Fehlersuche bringen. Andere Developer, die auf Plattformen wie GitHub in fremden Code schauen, finden unter Umständen kritische Fehler oder Sicherheitslücken schneller, wenn der Code verständlich geschrieben ist. Gerade in Anwendungen, in denen Sicherheitslücken unter Umständen drastische Folgen haben können, ist dies bedeutend.
Die Grenzen von KISS
Ein übergroßer Fokus auf eine simple Codestrukturierung kann, sofern falsch angewendet, Nachteile haben. Beispielsweise könnten Variablen nur aus einem Buchstaben oder einer Ziffer bestehen. Was sich genau hinter Variablennamen wie "a" oder "1" verbirgt, ist jedoch unklar. Vollständig formulierte, für Menschen lesbare Variablen machen deutlich, was der Zweck der Variable ist.
Dieses Beispiel soll zeigen, dass KISS nicht gleichbedeutend ist mit "möglichst wenig Code". Stattdessen steht einfacher, aber gleichzeitig für Menschen erfassbarer Code im Vordergrund. KISS ist kein Wettrennen um jedes Kilobyte Code und sollte nicht missverstanden werden, da sonst Probleme entstehen, die KISS eigentlich aus der Welt schaffen soll.
Historisches: Wie entstand KISS?
Ursprünglich geht KISS auf einen Ingenieur, Clarence Johnson, beim US-amerikanischen Rüstungskonzern Lockheed Martin zurück. Seinen Mitarbeitern stellte er Aufgaben, die es zu lösen galt, während dabei nur einfachste Werkzeuge zu benutzen waren.
Stand: 08.12.2025
Es ist für uns eine Selbstverständlichkeit, dass wir verantwortungsvoll mit Ihren personenbezogenen Daten umgehen. Sofern wir personenbezogene Daten von Ihnen erheben, verarbeiten wir diese unter Beachtung der geltenden Datenschutzvorschriften. Detaillierte Informationen finden Sie in unserer Datenschutzerklärung.
Einwilligung in die Verwendung von Daten zu Werbezwecken
Ich bin damit einverstanden, dass die Vogel IT-Medien GmbH, Max-Josef-Metzger-Straße 21, 86157 Augsburg, einschließlich aller mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen (im weiteren: Vogel Communications Group) meine E-Mail-Adresse für die Zusendung von Newslettern und Werbung nutzt. Auflistungen der jeweils zugehörigen Unternehmen können hier abgerufen werden.
Der Newsletterinhalt erstreckt sich dabei auf Produkte und Dienstleistungen aller zuvor genannten Unternehmen, darunter beispielsweise Fachzeitschriften und Fachbücher, Veranstaltungen und Messen sowie veranstaltungsbezogene Produkte und Dienstleistungen, Print- und Digital-Mediaangebote und Services wie weitere (redaktionelle) Newsletter, Gewinnspiele, Lead-Kampagnen, Marktforschung im Online- und Offline-Bereich, fachspezifische Webportale und E-Learning-Angebote. Wenn auch meine persönliche Telefonnummer erhoben wurde, darf diese für die Unterbreitung von Angeboten der vorgenannten Produkte und Dienstleistungen der vorgenannten Unternehmen und Marktforschung genutzt werden.
Meine Einwilligung umfasst zudem die Verarbeitung meiner E-Mail-Adresse und Telefonnummer für den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern wie z.B. LinkedIN, Google und Meta. Hierfür darf die Vogel Communications Group die genannten Daten gehasht an Werbepartner übermitteln, die diese Daten dann nutzen, um feststellen zu können, ob ich ebenfalls Mitglied auf den besagten Werbepartnerportalen bin. Die Vogel Communications Group nutzt diese Funktion zu Zwecken des Retargeting (Upselling, Crossselling und Kundenbindung), der Generierung von sog. Lookalike Audiences zur Neukundengewinnung und als Ausschlussgrundlage für laufende Werbekampagnen. Weitere Informationen kann ich dem Abschnitt „Datenabgleich zu Marketingzwecken“ in der Datenschutzerklärung entnehmen.
Falls ich im Internet auf Portalen der Vogel Communications Group einschließlich deren mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen geschützte Inhalte abrufe, muss ich mich mit weiteren Daten für den Zugang zu diesen Inhalten registrieren. Im Gegenzug für diesen gebührenlosen Zugang zu redaktionellen Inhalten dürfen meine Daten im Sinne dieser Einwilligung für die hier genannten Zwecke verwendet werden. Dies gilt nicht für den Datenabgleich zu Marketingzwecken.
Recht auf Widerruf
Mir ist bewusst, dass ich diese Einwilligung jederzeit für die Zukunft widerrufen kann. Durch meinen Widerruf wird die Rechtmäßigkeit der aufgrund meiner Einwilligung bis zum Widerruf erfolgten Verarbeitung nicht berührt. Um meinen Widerruf zu erklären, kann ich als eine Möglichkeit das unter https://contact.vogel.de abrufbare Kontaktformular nutzen. Sofern ich einzelne von mir abonnierte Newsletter nicht mehr erhalten möchte, kann ich darüber hinaus auch den am Ende eines Newsletters eingebundenen Abmeldelink anklicken. Weitere Informationen zu meinem Widerrufsrecht und dessen Ausübung sowie zu den Folgen meines Widerrufs finde ich in der Datenschutzerklärung.
Dies sollte sicherstellen, dass beispielsweise ein Flugzeugtriebwerk auch unter schlechten Bedingungen – und nicht nur im Labor - reparierbar blieb. Das Ergebnis sollte einfach und dennoch leistungsstark sein – ebenso wie Software, die schwierige Aufgaben übernehmen soll, aber deren Quellcode gleichzeitig leicht verständlich sein sollte.