Побочный эффект - что это в программировании

Побочный эффект - любое действие, оказываемое выражением на состояние программной системы, без учета [кроме] возвращения значения.
Так, например:

  • команда вывода значения на экран -- это побочный эффект,
  • запись в файл -- тоже побочный эффект, ведь состояние изменилось
  • просто вызов функции, вычисляющей квадрат числа и запись этого квадрата в переменную побочный эффектом не является, т.е. если функция просто возвращает значение и никак иначе не меняет состояние системы, то значит, что она не оказывает побочного эффекта.

Подробности

Например, в языке программирования Паскаль можно сказать что функции используются ради "вычисления" выражений, а процедуры - ради "побочного эффекта".
Побочный эффект может отсутствовать вообще (для некоторых выражений).

Также у выражения (функции) могут быть одновременно и возвращаемое значение и побочный эффект, т.е. функция может помимо возвращения значения ещё и писать что-то в стандартный поток вывода (консоль), но обычно смешивать подобное в рамках одной функции не рекомендуется.

Key Words for FKN + antitotal forum (CS VSU):