Nebeneffekt

Aus EINI
Wechseln zu: Navigation, Suche

Ein Nebeneffekt, oder auch Seiteneffekt, ist eine unerwartete und meistens nicht gewünschte Veränderung des Wertes einer Variablen durch den Aufruf einer Methode oder Funktion.

Die Übersicht über seinen Quellcode zu behalten ist in den meisten Projekten eine Herausforderung an sich. Meistens wird gut strukturierter Code in verschiedenste Teilfunktionen aufgeteilt, um die Übersicht zu bewahren. Manchmal kommt es jedoch dazu, dass Methodenaufrufe Änderungen an Variablen vornehmen, von denen man nicht erwartet, dass sie dies tun. Dies kann z.B. das Verändern von Werten in Feldern sein, weil man vergessen hat, eine manuelle Kopie vom Feld angelegt zu haben. Dies führt dazu, dass nach Aufruf einer Methode eine nicht dokumentierte Änderung an Daten vorgenommen wird und sich der aufrufende Programmierer wundert, warum sich seine Daten geändert haben.

Nebeneffekte können in vielen verschiedenen Formen auftreten und werden meistens als ein zu vermeidendes Übel angesehen. Einige Programmiersprachen versuchen daher Nebeneffekte streng zu verhindern. Je detaillierter eine Programmiersprache direkten Zugriff auf den Speicher des Rechners erlaubt, desto schwieriger ist es jedoch, Nebeneffekte zu verhindern. Deswegen liegt es meistens am Programmierer, Nebeneffekte zu vermeiden oder die Nebeneffekte seines Programmes genau zu dokumentieren.