Optimiza el desarrollo software y mejora la calidad del código con C++ mediante buenas prácticas
Impulsa la calidad del código con Buenas Prácticas en C++ con un plan A Medida para tu equipo, tutorizado y bonificable por FUNDAE. Solicita propuesta a medida.
Transforma tu equipo con principios sólidos de Clean Code y SOLID, incrementando la eficiencia y reduciendo errores de programación en C++, mejorando resultados empresariales.
1
Facilita la comprensión y mantenimiento del código, permitiendo que los desarrolladores incorporen nuevas funcionalidades más rápidamente sin comprometer la calidad del proyecto.
Personaliza el temario al 100% para tu equipo
Diseñamos una formación a medida utilizando los documentos y flujos de trabajo reales de tu empresa.
Nueva Plataforma de E-learningFormación en directo con plataforma de apoyo para reforzar el aprendizaje
Acceso a las grabaciones
Los alumnos podrán revisar las sesiones grabadas para repasar conceptos clave, recuperar explicaciones concretas o reforzar aquellos contenidos que necesiten después de la clase en directo.
Recursos formativos
Materiales, sesiones grabadas y documentación de apoyo quedan centralizados en la plataforma para que el equipo pueda consultarlos durante y después de la formación.
Confirmación de asistencia
La plataforma permite registrar y confirmar la asistencia de los participantes, facilitando el seguimiento de la formación y la gestión documental necesaria para la bonificación FUNDAE.
Programa formativo
Temario del curso
Encuentra todo el temario del curso aquí.
Temario
Introducción al concepto de código limpio y su importancia
¿Qué se entiende como código incorrecto?
Las consecuencias de un código incorrecto en términos económicos
La importancia de la actitud frente al cambio
Los conceptos del código limpio
Las diferencias teóricas del concepto
La Regla de Boy Scout y los principios del código limpio
Introducción al concepto de código limpio y su importancia
¿Qué se entiende como código incorrecto?
Las consecuencias de un código incorrecto en términos económicos
La importancia de la actitud frente al cambio
Los conceptos del código limpio
Las diferencias teóricas del concepto
La Regla de Boy Scout y los principios del código limpio
Introducción al concepto de código limpio y su importancia
¿Qué se entiende como código incorrecto?
Las consecuencias de un código incorrecto en términos económicos
La importancia de la actitud frente al cambio
Los conceptos del código limpio
Las diferencias teóricas del concepto
La Regla de Boy Scout y los principios del código limpio
Tema 2: La importancia del Nombrado
El nombre debe revelar las intenciones
El problema de la desinformación involuntaria a través del nombrado
Legibilidad y Búsqueda de nombres
Prefijos, interfaces, implementaciones y notación húngara
El problema de la asignación mental
Nombrado de clases y métodos
Un concepto, una palabra
Juegos de palabras, un error a evitar
Nombrado de dominios de problemas y soluciones
Contextos innecesarios, una distracción a evitar
Tema 3: Las Funciones en el código Limpio
El tamaño de las funciones importa
La estructura de bloques y la indentación de las funciones
Una función, una funcionalidad
La regla descendente y el nivel de abstracción único de las funciones
Las instrucciones de tipo Switch
La importancia del nombrado de las funciones
Cómo plantear de forma limpia los argumentos en las funciones
La programación funcional y las formas monádica habituales
Los argumentos de indicador
Planteando funciones diádicas
Las triadas
Objetos y listas de argumentos
La importancia de los verbos y las palabras clave
Los argumentos de salida de una función y sus efectos secundarios
Separación de consultas
Una excepción, siempre mejor que un código de error
La importancia de los bloques Try/Catch
DRY, No te repitas
La programación estructurada
Creación de funciones limpias
Tema 4: Documentando a través de Comentarios
La importancia de los comentarios
Los comentarios no pueden excusar un código incorrecto
¿Qué es un comentario de calidad?
Comentarios TODO
Comentarios Informativos
Comentarios Legales
Se debe explicar la intencionalidad del código
Incluir explicaciones de consecuencias
Clarificación de comentarios
¿Qué es un comentario de mala calidad?
Comentarios confusos
Comentarios redundantes
Comentarios mal descritos
Comentarios sobrantes
Comentarios periódicos
Comentarios obligatorios
Marcadores de posición
Uso de funciones o variables sin comentarios
Comentarios de llave de cierre
Comentarios que incluyen información no local
Menciones y asignaciones en los comentarios
Comentarios con demasiada información
Comentarios como encabezados de funciones
Documentando código público y privado
Tema 5: Formato del código
¿Qué es el formato y qué funcionalidad tiene?
Los dos tipos de formato: Vertical y Horizontal
Introducción al formato vertical
Leyendo código como un periódico
La densidad vertical en el código
La distancia vertical en el código
El formato a la hora de declarar variables
El formato cuando instanciamos variables
Cómo aplicar la verticalidad entre funciones dependientes
La verticalidad bajo términos de afinidad conceptual
La importancia del orden vertical
Introducción al formato horizontal
La densidad horizontal en el código
La alineación horizontal
La indentación o sangrado horizontal
¿Qué son los ámbitos ficticios?
Reglas de equipo y formato imprescindibles
Tema 6: Los Objetos y otras estructuras de datos
La abstracción de los datos
Qué es la asimetría de objetos y datos
La Directiva del Principio de Menor Conocimiento o LOD
Los objetos de transferencia de datos
Tema 7: El Procesamiento correcto de Errores
La importancia de hacer uso de las excepciones
Try/Catch/Finally
¿Qué ocurre si no comprobamos las excepciones?
Por qué ofrecer contexto junto a las excepciones
Definiendo clases de excepciones
La definición del flujo "normal" del código
Null. La importancia de no devolverlo o pasarlo
Tema 8: Los límites de nuestro código
¿Qué ocurre cuando hacemos uso de código de terceras partes?
Debemos conocer los límites
Haciendo uso de log4j API
Haciendo uso de código que todavía no está listo
¿Qué entendemos por límites limpios?
Tema 9: La organización de las clases
La importancia de la encapsulación de nuestras clases
El tamaño de las clases también importa
Introducción al Principio de Responsabilidad Única
La importancia de la cohesión y consistencia de resultados
¿Cómo organizar los cambios?
Tema 10: Sistemas
Separación de Conceptos
Patrón factoría e inyección de dependencias
Programación Orientada a Aspectos en C++ (AOP)
Pruebas unitarias orientadas a la arquitectura del sistema
¿Cómo optimizar la toma de decisiones?
El uso de estándares efectivos
La necesidad de los lenguajes del dominio
Tema 11: Diseños Emergentes
¿Qué es un diseño emergente?
La ejecución de todas las pruebas
Refactorización
Eliminación de código duplicado
Minificación de clases y métodos
Tema 12: La Concurrencia
Desmitificando la concurrencia
Entendiendo correctamente qué es la concurrencia
Principios sobre la concurrencia
El Principio de Responsabilidad Única
La limitación del ámbito de los datos
Las copias de los datos
La importancia de la independencia de procesos
Las bibliotecas y su compatibilidad con los procesos
Los 3 distintos modelos de ejecución
La dependencia entre métodos sincronizados
La importancia de reducir las partes sincronizadas
¿Cómo probar adecuadamente un código con procesos?
Tema 13: Principios SOLID
Principios de la arquitectura limpia (SOLID)
Principio de responsabilidad única
Principio de abierto-cerrado
Principio de sustitución de Liskov
Principio de segregación de la interfaz
Principio de inversión de la dependencia
Tema 14: Arquitectura limpia
Diseño y arquitectura ¿Son lo mismo?
Introducción a la arquitectura limpia
Características de la arquitectura limpia
Partes de la arquitectura limpia
Cohesión y acoplamiento de los componentes
La política y el nivel
Las reglas del negocio
Los límites y su anatomía
Límites parciales y capas
Servicios pequeños y grandes
Preparación de un proyecto enfocado a la arquitectura limpia
Conclusión y buenas prácticas
Perfiles profesionales
Pensado para quienes deben dominar Buenas Prácticas en C++ en su día a día
Desarrolladores de Software
Procuran mejorar la calidad del código en C++, aplicando principios de programación limpia.
Ingenieros de Sistemas
Requieren implementar arquitecturas de software eficientes y escalables utilizando C++.
Líderes de Equipo TI
Necesitan fomentar buenas prácticas de programación entre sus equipos para aumentar la calidad del código.
Programadores backend C++
Buscan optimizar sus habilidades y asegurar que el código sea robusto y libre de errores comunes.
Preguntas frecuentes
Resolvemos todas tus dudas sobre nuestra formación en Buenas Prácticas en C++
Explora las respuestas a las preguntas que guian a nuestra comunidad. Aqui encontraras claridad sobre como funciona todo, desde el acceso hasta los detalles de los cursos. Si buscas respuestas, este es el lugar para comenzar.
El curso se imparte a través de nuestra plataforma de Aula Virtual Personalizada, utilizando Zoom. Los proyectos y horarios se adaptan a las necesidades de cada empresa, asegurando una experiencia de aprendizaje a medida para sus equipos de hasta 20 integrantes.
Sí, el curso es bonificable al 100% a través de FUNDAE, permitiendo a las empresas beneficiarse de subvenciones que cubren el coste total. Si gestionamos la bonificación, se cobra un 10% adicional más IVA, también bonificable.
La personalización permite que el contenido sea relevante y ajustado a las necesidades específicas de cada empresa. Esto asegura que los participantes adquieran habilidades aplicables directamente en sus proyectos actuales y aumenten la eficiencia en el desarrollo de software.
Las empresas notarán una mayor eficiencia en el desarrollo de software, una reducción en los errores y fallos de programación, mejora en la colaboración entre equipos y un ahorro en costes de mantenimiento del software, impactando positivamente en el desempeño general.
El progreso se evalúa mediante proyectos prácticos personalizados que refuerzan el aprendizaje de cada módulo. Estas evaluaciones están diseñadas para garantizar que las nuevas habilidades se traduzcan en mejoras palpables en las prácticas de codificación del día a día del equipo.
El curso emplea una metodología práctica y teórica equilibrada, combinando lecciones interactivas en vivo por videoconferencia con ejercicios de codificación y análisis de casos reales que facilitan un aprendizaje inmersivo y centrado en resultados para las empresas.
Los participantes cuentan con soporte técnico y académico durante todo el curso, lo que les permite resolver dudas en tiempo real y recibir orientación precisa para superar retos específicos en sus proyectos, garantizando una experiencia de aprendizaje fluida y efectiva.
El curso se imparte a través de nuestra plataforma de Aula Virtual Personalizada, utilizando Zoom. Los proyectos y horarios se adaptan a las necesidades de cada empresa, asegurando una experiencia de aprendizaje a medida para sus equipos de hasta 20 integrantes.
Sí, el curso es bonificable al 100% a través de FUNDAE, permitiendo a las empresas beneficiarse de subvenciones que cubren el coste total. Si gestionamos la bonificación, se cobra un 10% adicional más IVA, también bonificable.
La personalización permite que el contenido sea relevante y ajustado a las necesidades específicas de cada empresa. Esto asegura que los participantes adquieran habilidades aplicables directamente en sus proyectos actuales y aumenten la eficiencia en el desarrollo de software.
Las empresas notarán una mayor eficiencia en el desarrollo de software, una reducción en los errores y fallos de programación, mejora en la colaboración entre equipos y un ahorro en costes de mantenimiento del software, impactando positivamente en el desempeño general.
El progreso se evalúa mediante proyectos prácticos personalizados que refuerzan el aprendizaje de cada módulo. Estas evaluaciones están diseñadas para garantizar que las nuevas habilidades se traduzcan en mejoras palpables en las prácticas de codificación del día a día del equipo.
El curso emplea una metodología práctica y teórica equilibrada, combinando lecciones interactivas en vivo por videoconferencia con ejercicios de codificación y análisis de casos reales que facilitan un aprendizaje inmersivo y centrado en resultados para las empresas.
Los participantes cuentan con soporte técnico y académico durante todo el curso, lo que les permite resolver dudas en tiempo real y recibir orientación precisa para superar retos específicos en sus proyectos, garantizando una experiencia de aprendizaje fluida y efectiva.
Diseñemos hoy el curso que tu empresa necesita
Cuéntanos tus objetivos de negocio y prepararemos una propuesta formativa bonificable totalmente ad hoc
Mejora la colaboración en el equipo mediante estándares consistentes y principios de arquitectura limpia, garantizando entregas más organizadas y con menos re-trabajos.
3
Reduce significativamente los costes a largo plazo al minimizar la deuda técnica y los errores de software, potenciando una base de código sostenible y robusta que soporta el crecimiento empresarial.
Después de la formación en directo, los alumnos podrán acceder a ejercicios prácticos para aplicar lo trabajado en clase y consolidar el aprendizaje con actividades guiadas.
Acceso a las grabaciones
Los alumnos podrán revisar las sesiones grabadas para repasar conceptos clave, recuperar explicaciones concretas o reforzar aquellos contenidos que necesiten después de la clase en directo.
Recursos formativos
Materiales, sesiones grabadas y documentación de apoyo quedan centralizados en la plataforma para que el equipo pueda consultarlos durante y después de la formación.
Confirmación de asistencia
La plataforma permite registrar y confirmar la asistencia de los participantes, facilitando el seguimiento de la formación y la gestión documental necesaria para la bonificación FUNDAE.
Ejercicios prácticos
Después de la formación en directo, los alumnos podrán acceder a ejercicios prácticos para aplicar lo trabajado en clase y consolidar el aprendizaje con actividades guiadas.
Practica y mejora con nuestra plataforma
Una plataforma practica, con IA integrada y pensada para que mejores desarrollando. Se adapta a tu ritmo, te corrige al instante y te muestra tu progreso real.
Correccion magica
Feedback inteligente
Aprende de cada acierto y fallo con explicaciones claras