Saltar al contenido

¿Qué es el registro funcional? Tutorial con ejemplo

¿Qué es el registro funcional?

La programación funcional (también conocida como CE) es una forma de pensar en la creación de software mediante la creación de funciones puras. Evita los conceptos de estados compartidos, datos variables observados en la Programación Orientada a Objetivos.

Los lenguajes funcionales incluyen expresiones y declaraciones en lugar de la ejecución de declaraciones. Por lo tanto, a diferencia de otros procedimientos que se basan en el estado local o global, la salida de valor en CE depende de los argumentos presentados a la función únicamente.

En este tutorial, aprenderá:

Características del programa funcional

Historia de los programas funcionales

Idiomas de registro funcionales

El propósito de cualquier lenguaje CE es imitar las funciones matemáticas. Sin embargo, el proceso de cálculo básico es diferente en la programación funcional.

Estos son algunos de los lenguajes de programación funcional más notables:

Terminología y conceptos básicos de registro funcional

Datos inamovibles

Datos inamovibles significa que debería poder crear fácilmente estructuras de datos en lugar de modificar las existentes.

Transparencia favorable

Los programas funcionales deben realizar las operaciones exactamente como lo hicieron por primera vez. Así sabrá qué pudo haber sucedido o no durante la finalización del programa y sus efectos secundarios. En término CE se denomina transparencia de referencia.

Modularidad

El diseño modular aumenta la productividad. Los módulos pequeños se pueden codificar rápidamente y tienen más posibilidades de reutilizarse y sin duda conducirán a un desarrollo más rápido del programa. Aparte de eso, los módulos se pueden probar por separado, lo que le ayuda a reducir el tiempo dedicado a las pruebas unitarias y la depuración.

Sustentabilidad

La sostenibilidad es un término simple que facilita el mantenimiento de los programas de CE, ya que no tiene que preocuparse por cambiar accidentalmente nada fuera de una función en particular.

Función de primera clase

‘Función de primera clase’ es una definición aplicada a una entidad de lenguaje de programación cuyo uso no está restringido. Por lo tanto, las funciones de clase mundial se pueden ver en cualquier parte del programa.

Cerrado

El cierre es una función interna que puede acceder a variables de funciones parentales, incluso después de que se haya completado la función principal.

Funciones de orden superior

Las funciones de orden superior toman otras funciones como argumentos o las devuelven como resultados.

Las funciones de orden superior permiten aplicaciones a tiempo parcial o de curry. Esta técnica aplica una función a sus argumentos de uno en uno, porque cada aplicación devuelve una nueva función que acepta el siguiente argumento.

Función pura

Una ‘función pura’ es una función cuyas entradas se declaran como entradas y ninguna de las cuales debe ocultarse. Las salidas también se declaran como salidas.

Las funciones puras se desempeñan en su parámetro. No es efectivo si no devuelve nada. Además, proporciona la misma salida para los parámetros particulares

Ejemplo:


Function Pure(a,b)
{
	return a+b;
}

Funciones impuras

Las funciones impuras son todo lo contrario de las puras. Tienen entradas o salidas ocultas; se llama impuro. Las funciones impuras no se pueden utilizar ni probar solas porque son dependientes.

Ejemplo


int z;
function notPure(){
	z = z+10;
}

Composición de funciones

Combinar 2 o más funciones para crear una nueva tiene una composición funcional.

Estados compartidos

Los estados compartidos son un concepto importante en el registro de OPW. Básicamente, está agregando propiedades a las cosas. Por ejemplo, si se trata de un objeto de disco duro, la capacidad de almacenamiento y el tamaño del disco se pueden agregar como propiedades.

Efectos secundarios

Se conocen los efectos secundarios de cualquier cambio de estado que ocurra fuera de una función. El objetivo principal de cualquier lenguaje de programación CE es minimizar los efectos secundarios, separándolos del resto del código del software. En la programación CE es crucial eliminar los efectos secundarios del resto de la lógica de programación.

Ventajas del programa de implementación

Limitaciones del programa operativo

Programación funcional frente a programación orientada a objetivos

Registro funcional

OOP

CE utiliza datos inamovibles.

OPW utiliza datos portátiles.

El modelo de registro de aseguramiento continúa.

A continuación, se presenta un modelo de registro esencial.

En lo que se enfoca es: «¿Qué estás haciendo en el programa?»

En lo que se centra es en «¿Cómo estás haciendo tu programación?»

Soportes para registro paralelo.

No hay soporte para el registro paralelo.

Sus funciones no tienen efectos secundarios.

Un método puede producir muchos efectos secundarios.

El control de flujo se realiza mediante llamadas a funciones y llamadas a funciones para su reciclaje.

Se realiza un proceso de control de flujo mediante lazos y declaraciones condicionales.

El orden de ejecución de las declaraciones no es muy importante.

La secuencia de ejecución de la declaración es importante.

Admite «abstracción sobre datos» y «abstracción sobre transporte».

Solo admite «abstracción de datos».

Conclusión