Últimas entradas del blog

Java Spring Boot: cómo hacer un multi-proyecto con Maven

2022-06-14 - Categorías: Java / Java Spring Boot
Spring-boot

Hoy traigo un codekata o howto sobre Java, más en concreto sobre Spring Boot, y más en concreto sobre Maven. Se trata de un tutorial guiado para montar una estructura de proyecto con varios subproyectos, embebidos dentro de un mismo proyecto más grande.

La idea es montar esta estructura con ficheros Maven que se nombran como pom.xml, para que desde uno principal se recompilen, limpien, instalen.. todos los demás.

Continuar leyendo..


Java Spring Boot: empezando con JPA Hibernate y Mariadb

2022-04-30 - Categorías: General / Java / Java Spring Boot
Spring-boot

Este post es un codekata en Java usando el ORM Hibernate junto con Spring Boot. Spring Boot es una tecnología de desarrollo para Java que tenemos disponible en Spring, que orienta un proyecto a crear microservicios y se facilita mucho la programación.

Por otro lado, con Hibernate tenemos un ORM, en el que la creación de bases de datos, su manteniento y trabajo diario se facilita. Se puede llegar a mantener un proyecto con Hibernate sin tener que picar ninguna línea de código SQL. Esto facilita de nuevo mucho la programación.

Este post sirve de codekata de copia y pega para el caso de Mysql/Mariadb/Oracle, etc..

¡Vamos al grano con el codekata!

Continuar leyendo..

Java Spring Boot: montando un productor y consumidor de Kafka

2022-04-27 - Categorías: General / Java / Java Spring Boot
Spring-boot

Esto es un codekata en Java con el framework de desarrollo Spring, en concreto usando la tecnología Spring Boot, para usar Apache Kafka.

Con Spring Boot conseguimos que el proyecto esté orientado a ser un microservicio, teniendo el servidor web Tomcat embebido. Por otro lado, mediante Kafka podemos dividir las aplicaciones en microservicios, comunicarnos entre sistemas con mensajes, convertir en asíncronos procesos pesados para recibir altos picos de peticiones procesando en background después, etcétera.. ¡vamos al grano!

Continuar leyendo..

Cómo implementar una Arquitectura Hexagonal con Symfony Flex

2022-04-12 - Categorías: General / PHP / Symfony
Symfony Hexagonal

Este es un codekata en PHP con Symfony Flex para montar una estructura usando Arquitectura Hexagonal, en unos minutos, para un proyecto nuevo.

Symfony tiene su propia estructura por defecto, nos invita a seguir una serie de directorios en donde se guardan los controladores, repositorios, entidades, etc.. Esto esta muy bien, puede parecer que nos cierra a dicha estructura, pero nada más lejos de la realidad. Igual que en cualquier otro proyecto en puro PHP, con Symfony se puede estructurar todo como queramos.

Continuar leyendo..

Java: diferencias entre usar Thread o Runnable

2022-03-29 - Categorías: Java

Esto es un pequeño codekata en Java para lanzar procesos concurrentes en Java. Lo podemos hacer con las clases Thread o Runnable. Por un lado tenemos la interfaz Runnable, que proporciona la base para correr procesos en hilos independientes. Y por otro lado tenemos también la clase Thread, que extiende de Runnable, que implementa los procesos a ejecutar más fácilmente.

Continuar leyendo..

PHP: implementando el patrón de diseño Command/Commando

2022-02-27 - Categorías: General / PHP

Continuando con el repaso a los patrones del diseño del software, llegamos al Command o Comando. También es llamado el patrón Action o Transaction. Permite encapsular acciones en objetos programados, de forma que facilita el mantenimiento y ampliación de la aplicación que tengamos entre manos.

Esto facilita el uso de colas, la ejecución en background, mantenimiento de estados, tener históricos, poder revertir cambios, etc.. desacoplando interfaces, puertos, clientes, controladores, etc.. del resto de la aplicación, haciendo independiente la forma de ejecución de todas estas acciones de la forma en que se lancen.

Es decir, si independizamos las acciones en comandos, nos dará igual si luego se llaman desde interfaces gráficas, una o varias, desde línea de comandos, peticiones en una API RESTful, etcétera.

Continuar leyendo..

El ABC con Spring Boot

2022-02-23 - Categorías: General / GNU/Linux / Java
Spring-boot

Pequeño howto o codekata para empezar rápido con Spring Boot en local. En este post vemos el SDK Man! que facilita mucho el trabajo. Es la herramienta que se recomienda desde la documentación oficial de Spring, es para entornos basados en UNIX, como GNU/Linux, Mac.. Se puede instalar siguiendo las instrucciones desde https://sdkman.io/. Podemos ejecutar el instalador con:

Continuar leyendo..

PHP: el patrón de software Cadena de Responsabilidad

2022-02-22 - Categorías: General / PHP

Este post es sobre el patrón de diseño del software llamado Chain of Responsability o Cadena de Responsabilidad. Se usa cuando se quieren tener varios objetos relacionados de forma que cada uno pueda hacer una cosa con una misma petición, o puede que sólo algunos tengan que hacer algo con dicha petición.

Se puede implementar enlazando los objetos entre sí para establecer una cadena, o utilizando el patrón Composite.

Continuar leyendo..

PHP: cómo implementar el patrón de diseño Module o Modulo

2022-02-18 - Categorías: General / PHP / Principios y patrones

Recopilando más apuntes sobre patrones del diseño del software, llegamos a este patrón de diseño Module/Módulo que se puede implementar de muchas formas. Este codekata en PHP hace una implementación, pero se puede hacer de varias formas, y simplemente consiste en aplicar la técnica de divide y vencerás.

Es decir, los programas los podemos dividir por módulos. A su vez, estos módulos se pueden volver a dividir de nuevo en sub-módulos. Además de que independientemente a si se usa en programación procedural o con objetos, podemos establecer módulos.

Continuar leyendo..


Cifrado y descifrado seguro de datos en PHP

2022-02-13 - Categorías: General / PHP
Keys, llaves, claves, passwords

Sencillo codekata de copia y pega en PHP para cifrar, transmitir esta información cifrada por un canal público, y descifrar en destino.

La idea es usar un cifrado con semilla, de forma que esta semilla hace que sea imposible, o muy difícil, descifrar estos datos si no se sabe dicha semilla. Generalmente, por un canal seguro y privado se comparte una clave, con esta clave se cifra en origen, y en destino igualmente se descifra.

Continuar leyendo..

© 2024 JnjSite.com - MIT license

Sitio hecho con WordPress, diseño y programación del tema por Jnj.