programación funcional

La programación funcional no es más que un paradigma de programación, es decir, es una forma por la cual podemos resolver diferentes problemáticas, cuando desarrollamos software utilizando este tipo de programación estaremos trabajando principalmente con funciones, evitaremos las palabras mutables, como por ejemplo compartir estados entre funciones.
Las funciones serán tratadas como empleados de un determinado empresa, las funciones podrán ser asignada a variables, podrán ser utilizadas como entradas y salidas de otras funciones.
La programación funcional es un paradigma declarativo, es decir nos enfocaremos en qué estamos haciendo y no en como se está haciendo, también es enfoque imperativo esto quiere decir que nosotros estaremos utilizando nuestra lógica, sin escribir controles de flujo, no se puede usar ciclos o condiciones, veamos un ejemplo utilizando la programación funcional.
//imperativo inicio entero contador=0 para numero=1 hasta numero=8 contador=contador+numero fin para imprimir contador // con funcion entero funcion suma() inicio volver (8*(8+1))/2 fin
como podemos darnos cuenta es mas facíl y legible programar con funciones estos codigos, primero se filtra y posteriormente se suma.
en programación funcional hay conceptos que nos servirá más adelante tales como:
- Funciones puras.- no son más que funciones, las cuales, dando el mismo input, siempre retorna el mismo output, además no tener efectos secundarios.
- La composición de funciones.- es el proceso de combinar dos o más funciones, la finalidad es ejecutar cada una de estas funciones secundarias para obtener un solo resultado en concreto.
- El estado compartido.- es cualquier variable, objeto o espacio de memoria existe en un ámbito compartido.
- Un efecto secundario.- es una a más cambios de estados en el programa que sea observable en la funcion principal.
Como ejemplos de programacion funcional en lenguaje de programación tenemos: Haskell, elm, irlang y ocaml, mientras que otros lenguajes de programación con características funcionales y con ciertas limitaciones tenemos: c#, java, ruby y kotlin, pero bueno tú cuéntame que has hecho programación funcional, ¿qué lenguaje has usado? y ¿para qué tipo de aplicación estabas usando?, déjame tu opinión en los comentarios, me interesa saber tu experiencia con este tipo de programación.
Deja una respuesta