Menú de navegaciónMenú
Categorías

La mejor forma de Aprender Programación online y en español www.campusmvp.es

1079 artículos publicados

Java 11 ya está aquí: te toca pagar a Oracle o cambiarte a otras opciones

Con el lanzamiento de Java 11 y su JDK hace unos días se han lanzado también unos cambios radicales en la plataforma. Y no, no se trata de cambios técnicos sino de cambios de licencia. A partir de ahora si quieres usar el JDK oficial de Oracle y poner una aplicación en producción, tendrás que pagar. Y si quieres soporte a largo plazo tendrás que pagar también. Por suerte todo tiene solución. En este artículo te contamos los cambios y novedades y cómo evitar pagar por desarrollar en Java. ¡Allá vamos! [Más]

Cómo configurar ASP.NET Core 2.1 en Linux en menos de 10 minutos

Me sorprendió gratamente lo fácil que resultó configurar e instalar ASP.NET Core 2.1 en Linux. La primera vez lo hice en 15 minutos, sin experiencia previa con .NET Core en Linux. La segunda vez, en producción, me llevó 5 minutos siguiendo estas instrucciones. En este artículo, muestro cómo instalar .NET Core runtime en CentOS, cómo poner en marcha el proyecto de ejemplo de ASP.NET Core ejecutándose en Kestrel, y cómo configurar tanto el código como el firewall para habilitar el acceso remoto a la aplicación. Finalmente, comento qué haría de manera diferente para el uso real de la aplicación en producción. [Más]

3 formas de inicializar colecciones Java a la hora de declararlas

En muchos lenguajes, al definir una colección como un array o una lista podemos asignarle una una sucesión de valores de forma que los contenga como elementos. En Java, podemos hacer esto con arrays básicos. Sin embargo, a la hora de inicializar una colección de objetos de una clase, la misma sintaxis no es aplicable. En su lugar, habitualmente debemos recurrir a los métodos que añaden elementos. En este post veremos tres vías para conseguir introducir los elementos en la colección en menos código y con mayor legibilidad. [Más]

Variables y tipos de datos en Java: tipos simples, clases y tipos envoltorio o wrapper

No es es lo mismo tener que almacenar en la memoria de un ordenador un número entero que uno decimal. Aunque al final todo son ceros y unos dentro de la memoria de una máquina, es la forma de interpretarlos lo que marca la diferencia, tanto al almacenarlos como al recuperarlos. Este el motivo por el que los lenguajes de programación cuentan con el concepto de tipos de datos: se trata de distintas maneras de interpretar esos "ceros y unos" en función de ciertas configuraciones que establecen el espacio utilizado así como la representación aplicada para codificar y descodificar esa información. En este artículo te presentamos los diferentes tipos de datos que tiene Java, sus usos y restricciones, etc. [Más]

Cómo Microsoft hizo que me volvieran a gustar otra vez .NET y C#

"¿Por qué diablos querrías usar ASP.NET? ¿Te has quedado atrapado en los 90?". Estas son las palabras que salían de la boca de un viejo compañero de trabajo mío cuando se me ocurrió la posibilidad de utilizar ASP.NET para un proyecto que estábamos a punto de empezar hace un par de años. Siempre estaba de acuerdo con él la mayoría de las veces. Microsoft había desarrollado un gran lenguaje, un potente framework web y un gran conjunto de herramientas en torno al mismo, y aún así había muchas personas que no estaban contentas. Pero las cosas han cambiado mucho desde entonces, Microsoft ha subido mucho el nivel y le ha dado la vuelta a la situación. ASP.NET ha pasado de ser algo que estabas "obligado" a utilizar porque lo usaban en tu empresa, a algo que quieres usar, por muy desarrollador hípster y moderno que seas... [Más]

Programación funcional: Funciones de primera clase y de orden superior

Hoy vamos a conocer otra de las claves que hace a la programación funcional una herramienta verdaderamente potente, que permite simplificar mucho el código y que cada vez llega a más lenguajes: el soporte de funciones de primera clase y las funciones de orden superior. Como siempre, trataré de llegar a todo tipo de programadores, especialmente los que no trabajan frecuentemente con lenguajes funcionales, de forma que veremos ejemplos de aplicación en distintos lenguajes no funcionales. [Más]

Programación funcional: Inmutabilidad y funciones puras

Incluso aunque no utilices un lenguaje puramente funcional, los conceptos de este paradigma pueden servirte también en otro tipo de lenguajes, por ejemplo, en programación orientada a objetos. De hecho, la mayor parte de los lenguajes incorporan conceptos de la programación funcional para resolver ciertos problemas, En este blog ya os hemos hablado anteriormente de conceptos funcionales, como la currificación o el pattern matching. En esta ocasión os hablaremos de la inmutabilidad de objetos y de las funciones puras. ¡A por ello! [Más]

Cómo solucionar el error "java.lang.NoClassDefFoundError" en Java

La excepción en el hilo "main" del tipo java.lang.NoClassDefFoundError es uno de los errores más comunes que te puedes encontrar al programar en Java. Y también una de las que más quebraderos de cabeza te pueden ocasionar dependiendo de la circunstancia que la cause. Dependiendo del tamaño de tu aplicación, resolver este error puede ser más o menos difícil (cuanto más grande más complicado, lógicamente). En este artículo vamos a ver por qué se produce (existen muchas posibles causas) y estudiaremos los 7 principales motivos y cómo solucionarlos. [Más]

Las tendencias en proyectos open source para 2018 según GitHub

GitHub es usado por más de 24 millones de personas de 200 países diferentes que han participado en proyectos a través de más de 25 millones de repositorios. Estas cifras astronómicas convierten a GitHub en el mayor repositorio de proyectos open source del mundo así como en testigo único de lo que “se cuece” en programación. El personal de GitHub analizó los datos correspondientes al pasado año y según ellos las tendencias para 2018 en proyectos open source son: desarrollo multiplataforma, deep learning y aprendizaje de nuevas habilidades. [Más]

Java: cómo comprobar si existe o no un archivo o una carpeta en el disco duro

Hoy un truco rápido y muy sencillo para Java pero que hemos visto que mucha gente necesita. En cualquier aplicación, en muchas ocasiones, necesitaremos leer o escribir un archivo desde el disco duro. Aunque si intentamos leer un archivo que no existe se producirá una excepción que podemos gestionar, puede ser muy útil comprobar primero su existencia. También al escribirlo, ya que, aunque existen maneras de sobrescribir uno existente, quizá queramos comprobarlo para hacer una copia antes de escribir por encima o cualquier otra casuística similar. Vamos a ver cómo hacerlo. [Más]