Modelo de programacion funcional

Programación funcional vs oop

return fib(n – 1) + fib(n – 2);Transparencia referencial: En los programas funcionales las variables una vez definidas no cambian su valor a lo largo del programa. Los programas funcionales no tienen sentencias de asignación. Si tenemos que almacenar algún valor, definimos nuevas variables en su lugar. Esto elimina cualquier posibilidad de efectos secundarios porque cualquier variable puede ser reemplazada por su valor real en cualquier punto de la ejecución. El estado de cualquier variable es constante en cualquier instante.  Ejemplo: x = x + 1 // esto cambia el valor asignado a la variable x.

Clasificación de los lenguajes de programación funcionales

La programación funcional es la técnica de programación que acentúa los factores funcionales necesarios para crear e implementar los programas. La programación orientada a objetos (OOP) es la técnica de programación conceptual que utiliza objetos como clave. El modelo de programación utilizado en la programación funcional es un modelo de programación declarativo, mientras que la programación orientada a objetos utiliza el modelo de programación imperativo. En los programas funcionales, las variables y las funciones son los elementos principales del código, mientras que en los programas orientados a objetos, los objetos y los métodos son los elementos clave.

  Como extruir en autocad

Tanto la programación funcional como la programación orientada a objetos son conceptos diferentes de lenguaje de programación. Ambos lenguajes, Programación Funcional y Programación Orientada a Objetos, tienen como objetivo proporcionar un código libre de errores, que pueda ser fácilmente comprensible, bien codificado, gestionado y de rápido desarrollo.

La programación funcional y la programación orientada a objetos utilizan métodos diferentes para almacenar y manipular los datos. En la programación funcional, los datos no pueden almacenarse en objetos, y sólo pueden transformarse creando funciones. En la programación orientada a objetos, los datos se almacenan en objetos. La programación orientada a objetos es ampliamente utilizada por los programadores y también tiene éxito.

Lenguajes funcionales

return fib(n – 1) + fib(n – 2);Transparencia referencial: En los programas funcionales las variables una vez definidas no cambian su valor a lo largo del programa. Los programas funcionales no tienen sentencias de asignación. Si tenemos que almacenar algún valor, definimos nuevas variables en su lugar. Esto elimina cualquier posibilidad de efectos secundarios porque cualquier variable puede ser reemplazada por su valor real en cualquier punto de la ejecución. El estado de cualquier variable es constante en cualquier instante.  Ejemplo: x = x + 1 // esto cambia el valor asignado a la variable x.

  Jingle bell rock chords

Por qué la programación funcional

Que la programación funcional se opone a la programación orientada a objetos de alguna manera fundamental es un cliché de programación muy extendido. Enumeramos características como la inmutabilidad, las funciones y la composición en contraste con la mutabilidad, las clases y la herencia. Se promociona Clojure y Haskel como lenguajes funcionales en un extremo del espectro y C++ y Java como lenguajes orientados a objetos en el otro. Sin embargo, articular la composición del espectro es otra historia. Ninguna de estas trivialidades revela por qué ciertas características se ven juntas o separadas, por qué los propios lenguajes pueden inclinarse en una u otra dirección, o cualquier diferencia inherente en la semántica del programa.

Sin embargo, el cliché “funciones vs. objetos” es un artefacto de una profunda verdad sobre las estructuras y la semántica de los programas. Al igual que el aceite y el agua, la programación funcional y la orientada a objetos no pueden coexistir. Podemos elegir objetos o funciones, pero no ambos a la vez, como se anuncia. Además, la elección entre paradigmas tiene implicaciones dramáticas para nuestros programas, ya que ofrece “visiones del mundo” opuestas que implican conceptos tan básicos como la identidad, el cambio, el estado e incluso el tiempo.

Esta web utiliza cookies propias para su correcto funcionamiento. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad