programación

Java: cómo usar las enumeraciones y los EnumMap

2023-01-28 - Categorías: Java
Duke Java

Las enumeraciones enum, y los mapas de enumeraciones EnumMap, son un par de utilidades de las librerías de Java, que nos pueden ayudar a mantener fácilmente lotes de información estructurada. Además, las enumeraciones y los mapas de enumeraciones son objetos muy eficientes. Son eficientes tanto en coste temporal como espacial, ya que están especialmente optimizados para tamaños de conjuntos de datos predefinidos.

Este es un howto o codekata para comenzar rápido a usar las enumeraciones, y los EnumMap.

Continuar leyendo..

El ABC con Angular

2023-01-21 - Categorías: Angular / JavaScript
Angular

Esto es un howto o codekata para empezar un proyecto nuevo en minutos con Angular: qué necesitamos configurar en local, cómo usar el Angular CLI, principales comandos y comenzamos a generar una primera estructura de aplicación frontend totalmente desacomplada del backend.

Vamos al grano..

Continuar leyendo..

Cómo mejorar la calidad del software con PHPSTAN

2022-11-20 - Categorías: General / PHP
Check quality with PHPSTAN

Siguiendo con posts anteriores sobre herramientas para medir y mejorar la calidad del software como PHP-CS-FIXER, PHPDEPEND, PHPLOC o PHPCPD, llegamos a otra gran herramienta que es PHPSTAN. Con esta herramienta podemos encontrar errores en la programación en PHP sin llegar a haber programado y ejecutado los tests de integración.

Es decir, esta herramienta llamada PHPSTAN:
https://phpstan.org/
..analiza el código fuente de forma estática, reportando en varios niveles de exigencia, errores en la programación con los que podemos ir mejorando todo, incluso sin tener tests programados.

Continuar leyendo..



Java: sincronización con señales entre procesos concurrentes

2022-07-16 - Categorías: Java

¡Hola de nuevo! Esto es un codekata, apunte o resumen en Java, sobre la sincronización entre procesos concurrentes que corren en paralelo en varios hilos de ejecución usando señales. Esta sincronización es un mecanismo habitual, para sincronizar procesos en tiempo real, optimizando el uso de recursos para que todo vaya lo más rápido posible.

El escenario de este post, es que tenemos 3 procesos concurrentes, que corren en paralelo. Tenemos un primer proceso que se va a encargar de lanzar otros dos, poniéndose a la espera sin consumir recursos en esta espera. El segundo proceso va a ser un productor de elementos cada cierto tiempo. Y el tercer proceso un consumidor de estos elementos.

Continuar leyendo..

Controlando el acceso exclusivo a memoria compartida en Java

2022-06-19 - Categorías: General / Java

Este post es continuación de este otro sobre paralelizar procesos para acelerarlos usando memoria compartida. Quedó en el aire la sincronización de los procesos. Esto se puede hacer de varias formas, pero si simplemente queremos evitar que dos procesos escriban a la vez en la misma zona de memoria compartida, lo podemos implementar con la palabra reservada synchronized.

Si dos procesos no deben escribir a la vez en la memoria compartida y lo hacen, se perderá información, habrá malfuncionamiento del sistema completo.

Vamos al grano que es más fácil leer el código que explicarlo..

Continuar leyendo..

Acelerando, paralelizando, concurrencia, memoria compartida entre tareas en Java

2022-06-19 - Categorías: General / Java

Hoy traigo otro codekata, un howto o resumen sobre Java, y el manejo de tareas. Se trata de un tema recurrente, para acelerar tareas paralelizándolas y coordinándolas entre sí. Este post se centra en cómo usar una memoria compartida, entre 30 tareas en paralelo, que van escribiendo información en dicha memoria compartida.

En Java se facilita mucho todo esto, tiene funcionalidades que ayudan como por ejemplo: la clase Thread, los parámetros por referencia, la palabra reservada synchronized, o el manejo de hilos en núcleos diferentes del procesador de forma transparente para el programador gracias al JRE.

Resumiendo, esto es un esqueleto para tratar de multiplicar x30 la velocidad de un programa, usando tareas concurrentes, y compartiendo los resultados en memoria.

A grano..

Continuar leyendo..


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..

© 2024 JnjSite.com - MIT license

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