IFCD0199

Programación orientada a objetos con java

Conocer la sintaxis de Java(TM), la programación orientada a objetos utilizando el lenguaje Java, la creación de interfaces gráficas, el modelo de excepciones, los mecanismos de entrada y salida (E/S),los threads y la programación en red combinando de manera eficaz formación sobre los procesos dedesarrollo de software, las tecnologías de programación orientada a objetos y la notación UML (Unified Modelling Language).

Diseñado y producido por Smartmind

Disponibilidad:

Consultar

Contenidos

IFCD0199 — Programación orientada a objetos con java

Módulo 1

Programación Orientada a Objetos con Java SE

Objetivo. Adquirir los conocimientos fundamentales sobre el lenguaje de programación Java, estructuras y tipos de datos para aprender a programar en Java SE. CONOCIMIENTOS/ CAPACIDADES COGNITIVAS Y PRÁCTICAS

Contenidos: 10

Conocimiento/capacidades cognitivas y prácticas

Conocimiento del lenguaje de programación Java SE 11.

Introducción a las novedades específicas de Java SE 11.

Identificación de tipos primitivos, operadores, control de flujo y datos de tipo objeto.

Profundización en las mejoras de APIs de tiempo y fechas (java.time).

Implementación avanzada de bucles y estructuras condicionales.

Comprensión y utilización de clases y objetos.

Uso de herencia e interfaces funcionales modernas.

Implementación de clases selladas (sealed classes).

Conocimiento avanzado de la API de Collections.

Uso de colecciones inmutables con List.of(), Set.of(), y Map.of().

Implementación de Streams con colectores personalizados.

Implementación de clases agrupadas y expresiones Lambda.

Introducción a las clases agrupadas y la programación funcional.

Optimización del uso de expresiones Lambda con APIs funcionales.

Utilización de las APIs de Streams y Java IO/NIO.

Uso de Files, Paths, y lectura/escritura en NIO.

Implementación de Streams paralelos para procesamiento de datos.

Implementación de la gestión de excepciones y depuración de errores.

Uso de multi-catch y re-throw con tipos genéricos.

Integración con herramientas de depuración como jstack y jmap.

Utilización de la concurrencia y multithreading.

Gestión de tareas con el framework Fork/Join.

Uso de la API de concurrencia CompletableFuture y ExecutorService.

Conocimiento de las anotaciones y sus usos.

Creación de anotaciones personalizadas.

Uso de Retention y Target.

Implementación de la conectividad Java a bases de datos con JDBC.

Configuración y ejecución de consultas con PreparedStatement y CallableStatement.

Manejo eficiente de transacciones y conexiones JDBC.

Desarrollo de aplicaciones con Java en cloud.

Introducción a la comunicación con APIs RESTful y JSON.

Uso de la API java.net.http para comunicación con servicios web.

HABILIDADES DE GESTIÓN, PERSONALES Y SOCIALES

Adaptación a las necesidades y políticas empresariales.

Fomento de la capacidad para analizar de manera crítica las implementaciones y resultados propios y del equipo de trabajo para poder mejorarlos, corregirlos o exponerlos.

Módulo 2

Análisis y Diseño Orientado a Objetos con UML

Objetivo. Adquirir los principales conceptos del diseño orientado a objetos y del modelado con UML. CONOCIMIENTOS/ CAPACIDADES COGNITIVAS Y PRÁCTICAS

Contenidos: 4

Conocimiento/capacidades cognitivas y prácticas

Creación de aplicaciones distribuidas y multicapa con persistencia en bases de datos.

Enfoque en principios SOLID para diseño de clases y arquitecturas escalables.

Conocimiento de conceptos de orientación a objetos y modelado de procesos de desarrollo de software.

Utilización de diagramas UML alineados con patrones de diseño específicos.

Identificación de abstracciones clave y construcción del modelo de diseño basado en dominio (Domain-Driven Design o DDD).

Creación de diagramas de estados con transiciones y ciclos de vida de objetos.

Comprensión de patrones de diseño y de arquitectura.

Implementación de patrones como Singleton, Factory y Observer.

Aplicación de patrones estructurales como Decorator y Adapter en sistemas Java EE.

Uso de arquitectura hexagonal para aplicaciones modernas.

Introducción a herramientas de diseño como PlantUML.

Conocimiento introductorio del uso de frameworks.

Integración de Spring Boot para diseño flexible.

Integración de Hibernate y Guava.

Aplicación de medidas de eficiencia energética y sostenibilidad ambiental

Prácticas de desarrollo sostenible (green coding).

Estrategias para reducir la huella de carbono en el desarrollo y despliegue de aplicaciones.

HABILIDADES DE GESTIÓN, PERSONALES Y SOCIALES

Aplicación de medidas de eficiencia energética y sostenibilidad ambiental en la creación de aplicaciones.

Comprensión de la importancia de desarrollar actitudes favorables a la minuciosidad en el desarrollo de aplicaciones.