Capítulo 16. La expresión declarativa es el camino hacia el paralelismo

Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com

Russel Winder

Al principio, Java era un lenguaje de programación imperativo, basado en objetos . De hecho, sigue siéndolo. Sin embargo, a lo largo de los años, Java ha evolucionado, convirtiéndose en cada etapa más en un lenguaje de expresión declarativa. Imperativo consiste en que el código diga explícitamente a el ordenador lo que tiene que hacer. Declarativo consiste en que el código exprese un objetivo abstrayéndose de la forma en que se alcanza dicho objetivo. La abstracción es la esencia de la programación, por lo que el paso del código imperativo al declarativo es natural.

En el núcleo de la expresión declarativa está el uso de funciones de orden superior, funciones que toman funciones como parámetros y/o devuelven funciones. Originalmente, esto no era parte integrante de Java, pero con Java 8 pasó al frente y al centro: Java 8 fue un punto de inflexión en la evolución de Java, al permitir la sustitución de la expresión imperativa por la expresión declarativa.

Un ejemplo -trivial pero indicativo de la cuestión principal- es escribir una función que devuelva un List que contenga los cuadrados del argumento List a la función. Imperativamente, podríamos escribir

 List<Integer> squareImperative(final ...

Get 97 cosas que todo programador Java debe saber now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.