Чистая функция

Чистая функция Чистая функция в программировании обладает свойствами: идентичные возвращаемые значения для идентичных аргументов и отсутствие побочных эффектов.  Примеры чистых […]

Чистая функция

  • Чистая функция в программировании обладает свойствами: идентичные возвращаемые значения для идентичных аргументов и отсутствие побочных эффектов. 
  • Примеры чистых функций: этаж, max, f() без изменения переменных. 
  • Нечистые функции: изменение возвращаемого значения в статической переменной, нелокальной переменной, изменяемом ссылочном аргументе или потоке ввода/вывода. 
  • Библиотечная функция C++ sin() не является чистой из-за зависимости от режима округления IEEE. 
  • Ввод-вывод в чистых функциях: операции ввода подрывают ссылочную прозрачность, операции вывода создают побочные эффекты. 
  • Монада ввода-вывода — идиома программирования для выполнения ввода-вывода в чисто функциональных языках. 
  • Запоминание: выходные данные чистой функции могут быть кэшированы для сокращения вычислительных затрат. 
  • Оптимизация компилятора: методы оптимизации компилятора могут использоваться для функций без побочных эффектов. 
  • Некоторые языки программирования (Fortran, D, GCC) поддерживают объявление чистого свойства функции. 
  • Чистые функции хорошо подходят для модульного тестирования из-за идентичных возвращаемых значений для одинаковых аргументов. 

Полный текст статьи:

Чистая функция — Википедия

Оставьте комментарий

Прокрутить вверх