Descripción del curso
En este curso aprenderá temas avanzados de C ++. Comprenderá los principios del buen diseño de clases y cómo aplicarlos para escribir sus propios programas y cómo usar la herencia para representar objetos de la vida real sin tener código duplicado. Aprenderá a utilizar la herencia múltiple y evitará los problemas que puede presentar. El curso le dará una introducción a los conceptos de programación funcional y el uso de lambdas. También le dará una descripción general de la semántica de movimiento que ha introducido C ++ 11 y le dará una descripción general de los contenedores STL y hablará sobre polimorfismo estático y dinámico.
Objetivos de aprendizaje del curso
- Introducir buenos conceptos de diseño de clases
- Introducir el concepto de herencia y sus beneficios e inconvenientes
- Mostrar alternativas en el diseño de la estructura de la clase
- Mostrar la herencia múltiple y discutir posibles problemas.
- Introducir polimorfismo estático y dinámico.
- Aprender a usar la semántica de movimientos
- Obtener una introducción a los conceptos de programación funcional y al uso de la función lambda
- Aprender a usar plantillas y funciones virtuales para polimorfismo estático y dinámico
- Presentar los contenedores STL
HABILIDADES
- Usar la herencia y la herencia múltiple correctamente para diseñar soluciones para el software
- Usar la semántica de movimiento correctamente para los objetos
- Usar funciones lambda en el código
- Aprender a utilizar correctamente los contenedores STL
Habilidades que Aprenderás
- Presentación avanzada de funciones
- Matemáticas avanzadas
- C++ (Lenguaje de programación)
- Fundamentos de C
- Conceptos de C
- Profesional Certificado SAS: Programación Avanzada
Lo que aprenderás
- Aplicar buenos principios de diseño de clases a tus propios programas de C++
- Usar herencia única, múltiple, privada, protegida y jerárquica mientras se evitan trampas comunes
- Implementar polimorfismo estático y dinámico usando plantillas, funciones virtuales y vinculación dinámica
- Usar semántica de movimiento de C++11 en tu código
- Escribir funciones lambda y aplicar conceptos de programación funcional, incluidas reglas de captura y firmas de retorno
- Trabajar con contenedores STL
Puntos clave
- El curso cubre buen diseño de clases y cómo aplicar estos principios al escribir tus propios programas.
- La herencia se presenta junto con sus beneficios y desventajas, con alternativas como composición de clases mostradas para diseñar la estructura de clases.
- La herencia múltiple se cubre junto con sus posibles problemas, incluidas ambigüedades y resolverlas usando clases base virtuales.
- Se aborda tanto el polimorfismo estático como el dinámico, usando plantillas y funciones virtuales y conceptos como vinculación dinámica, VTables y funciones virtuales puras.
- El curso introduce la semántica de movimiento de C++11, programación funcional con lambdas y los contenedores STL.
Preguntas frecuentes
¿Qué cubre el curso Avanzado de C++?
Cubre temas avanzados de C++ incluido buen diseño de clases, herencia (única, múltiple, privada y protegida), polimorfismo estático y dinámico, semántica de movimiento de C++11, programación funcional con lambdas y los contenedores STL.
¿Cómo maneja el curso la herencia múltiple?
Muestra la herencia múltiple y discute sus posibles problemas, incluidas ambigüedades en la herencia múltiple y resolverlas usando clases base virtuales.
¿Qué aprenderé sobre el polimorfismo?
Se te introducirá tanto el polimorfismo estático como el dinámico, aprendiendo a usar plantillas y funciones virtuales, junto con vinculación dinámica, VTables, destructores de clases virtuales y polimórficas y funciones virtuales puras e interfaces de clases.
¿Cubre el curso características modernas de C++ como lambdas y semántica de movimiento?
Sí. Ofrece una introducción a conceptos de programación funcional y el uso de funciones lambda, incluidas reglas de captura y firma y retorno, y proporciona una descripción general de la semántica de movimiento introducida en C++11.
¿Qué habilidades están asociadas con este curso?
Las habilidades asociadas incluyen C++ (Lenguaje de Programación), Fundamentos de C++ y Conceptos de C++.



