1. Introducción a la programación con Python
Te iniciarás con la programación y desarrollo web usando Python y Java. Abarca desde conceptos básicos hasta programación orientada a objetos, estructuras de datos esenciales, y una introducción a FastAPI.
2. Git y Github
Tendrás una comprensión profunda de Git, desde la instalación de herramientas hasta la gestión avanzada de proyectos. Aprenderás cómo guardar y gestionar cambios, trabajar con ramas, resolver conflictos, y colaborar en GitHub. Además, explorarás técnicas avanzadas como rebase y rebase interactivo para optimizar la historia de tu proyecto y la colaboración en equipo.
3. POO y TDD con Python
Descubrirás la Programación Orientada a Objetos (POO) y el Desarrollo Dirigido por Pruebas (TDD), cubriendo desde los fundamentos de clases y objetos hasta la implementación de pruebas unitarias. A través de temas como encapsulamiento, herencia, y el ciclo Green-Red-Refactor, adquirirás habilidades esenciales para mejorar la estructura y calidad de tus proyectos de programación.
4. Introducción a Java
Descubrirás desde su historia y configuración inicial hasta conceptos avanzados como colecciones y programación funcional. Aprenderás sobre datos primitivos, organización de código, objetos, interfaces y clases abstractas. Además, explorarás estructuras de datos esenciales, genéricos y elementos de programación funcional como expresiones lambda y streams, proporcionando una comprensión integral que te permitirá manejar proyectos modernos en Java con confianza y eficiencia.
5. Desarrollo de Soluciones con Java
Aprenderás desde fundamentos algorítmicos hasta el desarrollo avanzado de aplicaciones con Java, enfatizando en principios clave de desarrollo y gestión de datos con PostgreSQL. Aprenderás a crear aplicaciones de escritorio con JavaFX y aplicaciones web tradicionales usando Servlets y JSP. Además, se exploran varios patrones de diseño esenciales para mejorar la estructura y eficacia de tu código.
6. Introducción a Spring Boot
Aprenderás desde la gestión de dependencias con Maven hasta el desarrollo de aplicaciones web con Spring Boot MVC. Aprenderás sobre Mapeo Objeto-Relacional (ORM) con Spring Boot JPA, interactuando con PostgreSQL para operaciones CRUD. La sección MVC te enseñará sobre controladores, vistas, y el flujo de datos, mientras que con Thymeleaf, descubrirás la creación de interfaces de usuario dinámicas.
7. Spring Boot Avanzado
Te formarás en el desarrollo de APIs RESTful usando Spring Boot, abarcando desde la arquitectura de una API REST hasta la implementación de controladores REST y EndPoints. Aprenderás CRUD básico con MySQL, manejo de errores, y cómo asegurar tu API con Spring Security y JWT. Además, documentarás tu API con Swagger y realizarás pruebas con Postman. Lombok te ayudará a gestionar propiedades y constructores eficazmente, facilitando un desarrollo más rápido y organizado.
Proyecto Final: Desarrollo y Despliegue de Aplicación Web con Spring Boot
En este módulo final de dos semanas, desarrollarás una aplicación web completa usando Spring Boot, integrando una estructura MVC y una API RESTful. Idealmente, la aplicación será alojada en un servidor en la nube como AWS, demostrando así tus habilidades en desarrollo y despliegue de aplicaciones robustas. Este proyecto práctico te permitirá enfrentar desafíos reales, mejorar tus habilidades de programación y despliegue, y recibir retroalimentación valiosa para prepararte para el ámbito profesional del desarrollo de software.
