Descripción: Curso Curso Intensivo de Patrones de Diseño y Refactorización de Código
Formación en Desarrollo de Aplicaciones
Este curso intensivo de cinco días está diseñado para desarrolladores de software que buscan mejorar sus habilidades en el diseño de software y la refactorización de código. A través de una combinación de teoría y práctica, los participantes aprenderán a aplicar patrones de diseño para crear soluciones elegantes y mantenibles, identificar problemas comunes en el código (code-smells) y emplear técnicas de refactorización para mejorar la calidad y eficiencia de su código.
Formación SINENSIA
Detalles
Día 1: Introducción y Patrones Creacionales
• Introducción al curso
- Objetivos y estructura
- Importancia de los patrones de diseño y la refactorización
• Patrones Creacionales
- Singleton
- Factory Method
- Abstract Factory
- Builder
• Ejercicios prácticos en Java
Día 2: Patrones Estructurales
• Patrones Estructurales
- Adapter
- Decorator
- Composite
- Facade
• Ejercicios prácticos en Java
Día 3: Patrones Comportamentales
• Patrones Comportamentales
- Observer
- Strategy
- Command
- Iterator
- State
• Ejercicios prácticos en Java
Día 4: Detección de Code-smells
• Introducción a los code-smells
- Definición y tipos
- Impacto en la calidad del software
• Principales code-smells
- Long Method
- Large Class
- Primitive Obsession
- Switch Statements
- Temporary Field
- Divergent Change
- Shotgun Surgery
- Feature Envy
- Inappropriate Intimacy
• Ejercicios prácticos en Java
Día 5: Técnicas de Refactorización y Proyecto Final
• Técnicas de Refactorización
- Extract Method
- Inline Method
- Replace Temp with Query
- Introduce Parameter Object
- Move Method
- Move Field
- Extract Class
- Inline Class
• Proyecto Final
- Planteamiento del proyecto
- Implementación guiada
- Presentación y evaluación
Curso dirigido a programadores/desarrolladores con experiencia en Java
Los alumnos necesitarán tener conocimientos previos de programación en Java.
Este curso está diseñado para proporcionar a los participantes una comprensión profunda y práctica de los patrones de diseño, la identificación de code-smells y las técnicas de refactorización, aplicando estos conocimientos en ejercicios prácticos y en un proyecto final en Java.