Blog de Gonzalo

PROGRAMACIÓN FUNCIONAL EN PHP

Llevo ya un tiempo oyendo hablar de la programación funcional y la verdad es que me parece interesante este paradigma de programación. Una ventaja de la programación funcional facilita la creación software más robusto, mantenible y fácil de testear. Cuando te enseñan a programar en la mayoría de lenguajes de programación te enseñan programación imperativa.
Una de las características de la programación funcional es que los bucles no existen usando la recursividad. No se reutilizan las variables, se basa en arrays o listas y tiene menos estructuras de control que los lenguajes imperativos, resulta más fácil de comprender el lenguaje en sí y el código, una vez se va leyendo. Otra ventaja en cuando a concurrencia y tolerancia a fallos ya que si no se permite la reasignación o no se permite cambiar el valor de un dato ya asignado con lo que la concurrencia se simplifica de forma sorprendente.
Por ejemplo para recorrer un array se tendrían que usar las funciones:

  • array_map: Recorre los valores del array.
  • array_walk: Recorre el array con claves.
  • array_filter: Filtra el array devolviendo solo los valores que dan TRUE en la función callback.
En la programación funcional se usan mucho las funciones anónimas. Espero que el post os haya parecido interesante.

Compartir en twitter