Antecedentes
En la codificación informática, es muy importante escribir un código realmente bueno. Un buen código no solo hace que los programas se ejecuten más rápido, también ayuda a los desarrolladores a trabajar mejor. Pero descubrir qué hace que un código sea bueno puede ser complicado, y no se trata solo de hacer que las cosas se ejecuten rápidamente.
Un buen código tiene cosas como ser fácil de probar, fácil de mantener, fácil de reutilizar y fácil de añadir más cosas. Estas cosas son como medidas de lo sólido y confiable que es el código. Pero saber cómo hacer un código así no siempre es claro, por lo que buscamos formas de ayudarnos a escribir un código limpio.
Una forma genial de hacer esto es mediante el uso de la programación funcional. Es un estilo de codificación inspirado en las matemáticas, y se trata de usar expresiones y combinar funciones. Separamos las funciones puras, que solo hacen una cosa y no interfieren con nada más, de las impuras, que hacen más cosas. Esto ayuda a que nuestro código no solo sea fácil de entender, sino que también hace que las pruebas y modificaciones sean mucho más simples.
En ABAP (un lenguaje de programación), la programación orientada a objetos en ABAP es una excelente manera de utilizar ideas de programación funcional. No es una solución perfecta para todo, pero realmente nos ayuda a pensar en problemas de nuevas maneras.
Programación Funcional en Breve
La programación funcional es programar usando funciones.
La programación funcional es como construir con bloques de LEGO, combinando funciones para construir un uso nuevo y diferente de la función.
Echemos un vistazo a los ejemplos de código
Haskell
, que muestran la esencia de la programación funcional:
even :: (Integral a) => a -> Bool
even x
| x `mod` 2 == 0 = True
| otherwise = False
Aquí, he definido una función llamada
even
que toma un valor integral,
x
, y devuelve un booleano que indica si
x
es par. He usado guardias (|) para hacer el código conciso y expresivo, que es la principal característica de la programación funcional.
odd :: (Integral a) => a -> Bool
odd = not . even
En este ejemplo, aprovecho el operador de composición (.) para definir la función
odd
de manera sucinta. Aprovecho la función
even
previamente definida, mostrando el poder de componer funciones para crear nuevas.
filter :: (a -> Bool) -> [a] -> [a]
filter _ [] = []
filter pred (x:xs)
| pred x = x : filter pred xs
| otherwise = filter pred xs
La función
filter
muestra una función superior común en la programación funcional. Tomo una función de predicado.
Traducción al portugués:
Antecedentes
Na codificação de computadores, é muito importante escrever um código realmente bom. Um bom código não apenas faz com que os programas sejam executados mais rapidamente, mas também ajuda os desenvolvedores a trabalhar melhor. Mas descobrir o que torna um código bom pode ser complicado, e não se trata apenas de fazer as coisas serem executadas rapidamente.
Um bom código tem coisas como ser fácil de testar, fácil de manter, fácil de reutilizar e fácil de adicionar mais coisas. Essas coisas são como medidas da solidez e confiabilidade do código. Mas saber como fazer um código assim nem sempre é claro, por isso buscamos maneiras de nos ajudar a escrever um código limpo.
Uma ótima maneira de fazer isso é usando a programação funcional. É um estilo de codificação inspirado em matemática, e envolve o uso de expressões e a combinação de funções. Separamos as funções puras, que fazem apenas uma coisa e não interferem em mais nada, das impuras, que fazem mais coisas. Isso ajuda nosso código a ser não apenas fácil de entender, mas também torna os testes e modificações muito mais simples.
Em ABAP (uma linguagem de programação), a programação orientada a objetos em ABAP é uma excelente maneira de usar ideias de programação funcional. Não é uma solução perfeita para tudo, mas realmente nos ajuda a pensar em problemas de novas maneiras.
Programação Funcional em Breve
Programação funcional é programar usando funções.
Programação funcional é como construir com blocos de LEGO, combinando funções para construir um uso novo e diferente da função.
Vamos dar uma olhada nos exemplos de código
Haskell
, que mostram a essência da programação funcional:
even :: (Integral a) => a -> Bool
even x
| x `mod` 2 == 0 = True
| otherwise = False
Aqui, eu defini uma função chamada
even
que recebe um valor integral,
x
, e retorna um booleano indicando se
x
é par. Usei guardas (|) para tornar o código conciso e expressivo, que é a principal característica da programação funcional.
odd :: (Integral a) => a -> Bool
odd = not . even
Neste exemplo, aproveito o operador de composição (.) para definir a função
odd
de forma sucinta. Aproveito a função
even
previamente definida, mostrando o poder de compor funções para criar novas.
filter :: (a -> Bool) -> [a] -> [a]
filter _ [] = []
filter pred (x:xs)
| pred x = x : filter pred xs
| otherwise = filter pred xs
A função
filter
Pedro Pascal
Se unió el 07/03/2018