Nebeneffekt

Aus EINI
(Weitergeleitet von Seiteneffekte)
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.


Bei den meisten Projekten ist es eine Herausforderung an sich, die Übersicht über den Quellcode zu behalten. Meistens wird zu diesem Zweck gut strukturierter Code in verschiedenste Teilfunktionen aufgeteilt.

Manchmal kommt es jedoch dazu, dass Methodenaufrufe unerwartete und ungeplante Änderungen an Variablen vornehmen. Das kann zum Beispiel das Verändern von Werten in Arrays sein, wenn keine manuelle Kopie des Arrays angelegt wurde. Dies führt dazu, dass nach dem Aufruf einer Methode eine nicht dokumentierte Änderung an Daten vorgenommen wird und der aufrufende Programmierer nicht nachvollziehen kann, wodurch 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 unterbinden. 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 gegebenenfalls die Nebeneffekte seines Programmes genau zu dokumentieren.