Patrones de diseño

Los patrones de diseño son un concepto que empezó a manejar el arquitecto britano-americano Christopher Alexander en 1966. Mucho más tarde, en 1994, con la publicación de Design Patterns: Elements of Reusable Object-Oriented Software, dicho concepto comenzó a ganar popularidad en el mundo del desarrollo de software. Este libro fué escrito por cuatro autores que posteriormente serían conocidos como la pandilla de los cuatro (Gang of Four): Erich Gamma, Richard Helm, Ralph Johnson y John Vlissides. Los patrones de diseño aportan soluciones generales y reutilizables para problemas comunes. No se trata de porciones de código, sino de algo más genérico: La descripción de un problema y de una solución, que ha sido probada, a ese problema. Comprender un patrón, identificar cuando es útil, aplicarlo y adaptarlo a un caso concreto es tarea de aquel que lo estudia. El uso adecuado de estos patrones, por tanto, puede acelerar el proceso de diseño y desarrollo de software, pues al aportar paradigmas que han sido probados como eficaces evitan invertir tiempo en buscar una solución partiendo desde cero.

Gestión de memoria de la máquina virtual de Java

Al espacio de memoria donde Java almacena objetos se denomina heap. El heap se crea cuando la maquina virtual de java, JVM, se inicia, y puede aumentar o disminuir de tamaño durante la ejecución de la aplicación. Cuando se llena este espacio de memoria Java inicia el proceso de recolección de basura, Garbage Collector. Durante la recogida de basura, los objetos que ya no se utilizan son eliminados, creando así espacio para nuevos objetos. La JVM puede iniciarse con unos parámetros para gestionar la memoria. Con Xmx configuramos el tamaño máximo del heap y con Xms el tamaño mínimo. La JVM tiene, también, un espacio permanente para alojar objetos, el Permanent Generation o Metaspace desde Java 8. Será el espacio donde se alojan las clases y los métodos. Un ejemplo de configuración de estos parámetros sería como sigue:

Renombrar un repositorio remoto en Git

origin es la palabra con la que git nombra por defecto un repositorio remoto cuando lo clonas. Renombrar este repositorio como, por ejemplo, gitlabMetroSetenta es una buena idea, porque origin parece una palabra reservada de Git y puede causar confusiones. Para comprobar con detalle los repositorios remotos que has configurado en un proyecto git, usa el siguiente comando:

git remote -v

Para renombrar un repositorio remoto origin como miRepositorioRemoto puedes usar este otro:

Mejorando las búsquedas en Vim

Vamos a mejorar un poco las búsqueda de porciones de código dentro de nuestros proyectos y, para ello, vamos a comenzar por la entrada de datos que le damos a fzf. Te presento a ripgrep, una herramienta de búsquedas que tiene un rendimiento increible en comparación con otras parecidas como ugrep o ack. Ripgrep usa el archivo .gitignore por defecto, lo que le dá un enfoque muy Desarrollo para la búsqueda de código. Aquí tienes los diferentes métodos de instalación. Una vez que hayas aplicado el mejor para tu máquina, prueba a ejecutar, por ejemplo, el comando rg return en la carpeta de uno de tus proyectos, donde rg ejecutará ripgrep y return será el criterio de búsqueda. ¡A mí me pareció impresionante, especialmente, por su velocidad!