75HORAS |
Diseñado y producido por Smartmind
Contenidos
Objetivo. Aplicar patrones de diseño y principios SOLID para mejorar mantenibilidad, realizar análisis cuantitativo de calidad de código e identificar y corregir code smells con impacto ambiental. CONOCIMIENTOS/ CAPACIDADES COGNITIVAS Y PRÁCTICAS
Contenidos: 3
Comprensión de los fundamentos de diseño de software
Conocimiento de principios SOLID y su aplicación en Java
Conocimiento acerca de criterios para evaluar calidad de código (acoplamiento, cohesión, complejidad)
Implementaciones haciendo uso de buenas prácticas de diseño orientado a objetos
Identificación de patrones de diseño esenciales
Uso de patrones creacionales: Factory, Builder, Singleton...
Uso de patrones estructurales: Adapter, Decorator, Proxy
Uso de comportamiento: Strategy, Observer, Chain of Responsibility
Conocimientos generales sobre patrones de software
Utilización de herramientas para el análisis de código
Introducción a herramientas para métricas de código (complexity, coverage, smells)
Realización de refactoring guiado por patrones
Conocimientos de sostenibilidad: impacto ambiental del código ineficiente
Concienciación acerca del impacto ambiental del código ineficiente
Valoración de la importancia de evaluar la calidad del código producido
Objetivo. Diseñar arquitecturas escalables y resilientes, otimizar consumo de recursos en sistemas distribuidos e implementar técnicas de profiling para mejorar eficiencia. CONOCIMIENTOS/ CAPACIDADES COGNITIVAS Y PRÁCTICAS
Contenidos: 3
Comparación de las características de distintas arquitecturas
Realización de Comparativas: monolitos vs microservicios vs serverless
Diseño de APIs RESTful y gestión de versionado
Conocimientos sobre event-driven architecture con Java Message Service (JMS)
Identificación e implementación de arquitecturas limpias y sostenibles
Implementación de Hexagonal/Ports & Adapters
Implementaciones CQRS y Event Sourcing
Eficiencia energética en diseño de arquitecturas distribuidas
Valoración de las alternativas para balancear calidad y rendimiento
Conocimiento de técnicas de profiling en Java (CPU, memoria, I/O)
Optimización de recursos computacionales
Diseño para escalabilidad horizontal/vertical
Evaluación de la eficiencia energética en arquitecturas distribuidas
Apreciación de la importancia de optimizar los recursos computacionales
Objetivo. Construir pipelines CI/CD para proyectos Java complejos, automatizar procesos de testing y despliegue y, reducir huella ecológica en operaciones DevOps. CONOCIMIENTOS/ CAPACIDADES COGNITIVAS Y PRÁCTICAS
Contenidos: 3
Comprensión de la automatización de los procesos de integración continua
Uso de Pipelines con Jenkins/GitHub Actions o similar para proyectos Java
Automatización de tests: unitarios, integración, carga
Análisis estático de código (SonarQube, Checkstyle)
Comprension de la automatización de los procesos de despliegue continuo
Empaquetado con Docker/Jib
Configuración de Orchestration básica con Kubernetes
Conocimientos de Blue-green deployments y canary releases
Identificaciónd e prácticas sostenibles en CI/CD
Optimización de recursos en pipelines
Monitorización de consumo energético en despliegues
Implementaciones que usen prácticas eco-friendly en infraestructura cloud
Valoración de la automatización como estrategia para la mejora de la eficiencia en las pruebas de software
Adopción de prácticas respetuosas con el medio ambiente en entornos de computación en la nube

Selecciona tu perfil para continuar:
Actualmente atendemos a los usuarios particulares desde nuestra web.
Ver cursos para particulares