Exit e-book
Show all chapters
04
Una función pura no debe tener efectos colaterales
04. 
Una función pura no debe tener efectos colaterales

Sign up to our Newsletter

Signing up to our newsletter allows you to read all our ebooks.

    Introducción a la Programación con Efectos Funcionales usando ZIO
    04

    Una función pura no debe tener efectos colaterales

    Finalmente, una función no debe tener efectos colaterales. Algunos ejemplos de efectos colaterales son los siguientes:

    • mutaciones de memoria,
    • interacciones con el mundo exterior, tales como:
      • imprimir mensajes en la consola.
      • llamar a una API externa.
      • consultar a una base de datos.

    Esto significa que una función pura sólo puede trabajar con valores inmutables y sólo puede retornar una salida para una entrada correspondiente, nada más.

    Por ejemplo, la siguiente función increment no es pura porque trabaja con una variable mutable a:

    
    var a = 0;
    def increment(inc: Int): Int = {
      a += inc
      a
    }
    
    

    Y la siguiente función tampoco es pura porque imprime un mensaje en la consola:

    
    def add(a: Int, b: Int): Int = {
      println(s"Adding two integers: $a and $b")
      a + b
    }
    
    
    PREVIOUS
    Chapter
    03
    NEXT
    Chapter
    05