-
LecciónUso de Optional en Java
Con Optional puedes introducir en tu aplicación Java el concepto de valores opcionales; es decir, tu función te devuelve una caja en la que puede haber valor o no. Si conoces el Maybe de Haskell o te suena el Option de Rust, es el mismo concepto. Esto hace que tu... -
Lecciónimport static, ¿para qué sirve?
import static es una construcción de Java que permite importar atributos o métodos estáticos para no tener que referenciar todo el rato la clase a la que pertenecen. En este vídeo te cuento cómo se usa y qué lo diferencia de import. Spoiler: se parecen como huevo a una castaña.... -
LecciónCómo hacer tests de excepciones en JUnit 5 con assertThrows
Otros asertos de utilidad de JUnit 5 son assertThrows() y assertDoesNotThrow(), con los que podemos probar el lanzamiento de excepciones (o la ausencia de excepciones) en una pieza de código, aprovechándonos de las funciones lambda que tiene el lenguaje de programación Java desde la versión JDK 8. En este vídeo... -
LecciónIntroducción al taller
En este taller voy a presentaros la API de Java IO, para que si estáis aprendiendo Java podáis comprender mejor cómo se utilizan los InputStream, OutputStream y demás perlas que tiene el paquete java.io. En este capítulo te doy la bienvenida al taller y te cuento cómo voy a estructurar... -
LecciónFileOutputStream
FileOutputStream es uno de los OutputStream más simple que tenemos en Java, mediante el cual podemos enviar una serie de bytes hacia un archivo que se va a guardar en el sistema de archivos. Con esto también vemos que OutputStream tiene una serie de métodos estándar que podemos usar en... -
LecciónFileInputStream
La clase análoga a FileOutputStream es FileInputStream, que nos permite leer archivos procedentes del sistema de archivos. Con las primitivas que tiene la clase abstracta InputStream, tenemos a nuestra disposición métodos que podemos usar para leer valores desde cualquier implementación. -
LecciónObjectOutputStream y OutputInputStream
ObjectOuptutStream y ObjectInputStream son clases envolventes, es decir, clases que aceptan otro stream por debajo y que reenvían las llamadas a read o write que reciban pero alteradas. En este caso, para poder leer o escribir otros tipos de datos que no sean bytes puros, ocupándose de la codificación y... -
LecciónObject streams con Strings y Objects
Cómo usar ObjectOutputStream y ObjectInputStream para volcar cadenas de caracteres e instancias de clases arbitrarias como ArrayList es lo que se va a contar en este apartado. -
LecciónSerializando clases
Para que ObjectOutputStream nos permita escribir cualquier clase propia que hayamos fabricado, y para poder recuperarla luego con ObjectInputStream, tendremos que agregarle la interfaz Serializable a nuestras clases. Cuando hagamos eso, apreciaremos que en el stream de salida se envía una información interesante. -
LecciónLos peligros de Serializable
Serializable tiene una serie de problemas que hacen que, aunque nos intenten sugerir lo contrario, no deberíamos utilizarlo como método de almacenamiento primario a largo plazo de nuestros programas. El principal problema de Serializable es que no está pensado para almacenar a largo plazo y que cualquier atisbo de corrupción...