Por qué la programación funcional

38

¿Cuál es el trato con la programación funcional? Veo hablar mucho sobre esto, pero para ser honesto, nunca los encontré útiles. ¿Por qué tantas universidades les enseñan aparentemente?

    
pregunta Glenn Nelson 25.02.2011 - 03:48

6 respuestas

60

Comience con Por qué importa la programación funcional . Luego vaya a Por qué la función es importante la programación . Algunas balas:

  • La programación funcional le permite razonar acerca de los problemas de manera diferente
  • La abstracción funcional es muy poderosa y te permite DRY tu código de una manera que no está disponible para otros paradigmas
  • En nuestro futuro de múltiples núcleos, los lenguajes funcionales pueden ser más fáciles de dividir en tareas simultáneas (aunque los lenguajes no estrictamente funcionales también están trabajando duro en el problema).
  • Es más fácil probar que los programas escritos en lenguajes puramente funcionales (sin efectos secundarios) son matemáticamente correctos.
respondido por el Corbin March 25.02.2011 - 04:03
9

Los conceptos de programación funcional crean una base que cambiará la forma en que piensa y lo ayudará a resolver problemas del mundo real.

El concepto es similar a por qué todos aprendemos Cálculo multivariable, Álgebra y / o Física de ingeniería como estudiantes de ciencias informáticas, aunque es posible que nunca necesitemos ese conocimiento específico en nuestras carreras.

Esta es la razón por la que las escuelas de derecho aman a los candidatos con un B.S en matemáticas. Estudiar matemáticas te enseña a pensar en múltiples conceptos de una manera lógica, y la programación funcional te enseña abstracciones y muchos otros conceptos importantes que te ayudan a resolver problemas y mirarlos desde una perspectiva diferente.

En resumen, la programación funcional ayuda a enseñarte cómo aprender.

    
respondido por el jmort253 25.02.2011 - 03:54
4

Cuando estás comenzando, la programación funcional es el mejor modelo de pensamiento. Porque la mayoría de tus programas no requerirán orientación a objetos. Al menos esa ha sido mi experiencia.

Sin embargo, ahora que me meto en algunas aplicaciones que requieren separación de pantalla y lógica, ahí fue cuando comencé a separar toda la lógica y el código de pantalla, para que sea más fácil para cada uno hacer lo que es mejor.

Pero no sabrás por qué hacerlo, a menos que primero domines Funcional. Nunca me gustó que la gente me echara OO, o que OO es la solución para todo. Solo asegúrate de que, independientemente del enfoque que utilices, tiene sentido para lo que estás trabajando y no es una curva de aprendizaje demasiado abrupta como para quitarte demasiado tiempo del trabajo por el que te pagan.

    
respondido por el crosenblum 25.02.2011 - 04:18
3

Porque enfatiza verbos, no sustantivos. A veces lo que importa son los verbos.

    
respondido por el Scant Roger 25.02.2011 - 07:22
3

Porque en general usa menos código para realizar la misma tarea. Menos código para escribir, es menos código para mantener. Además de ser menos código, también tiende a tener menos estado y, por lo tanto, es un poco más sencillo de razonar (una vez que estás acostumbrado).

    
respondido por el Alex Baranosky 12.05.2011 - 04:19
2

Tal vez porque las universidades quieren enseñar algo de todos los paradigmas de programación, y para ciertas cosas, la programación funcional es mejor (como describir el movimiento de los personajes del juego y describir las animaciones)

    
respondido por el Coyote21 25.02.2011 - 10:09

Lea otras preguntas en las etiquetas