Temario del curso
- ¿Qué es un Sistema Embebido?
- Definición Simple
- Algunos Hitos
- Características
- ¿Por qué usar C++?
- Comparación con C
- C: Un subconjunto de C++ – casi
- Rendimiento
- Funcionalidad "Gratis" Añadida
- ¿Por qué no usar C++?
- Clases
- Variables de Miembro
- Variables de instancia
- Variables de clase
- Funciones de Miembro
- Funciones de instancia
- Funciones de clase
- Métodos Implícitos
- Constructor
- Inicialización
- Delegación
- Destructor
- Operador de asignación por copia
- Constructor
- Semánticas de Movimiento – evitando copias profundas innecesarias
- struct en C++
- Paquete/Space de Nombres
- Variables de Miembro
- Herencia
- Introducción
- Implementación
- Rendimiento
- Herencia Múltiple
- Herencia Virtual
- Polimorfismo
- Introducción
- Función Virtual
- Destructor Virtual
- Implementación
- Información de Tipo en Tiempo de Ejecución, RTTI
- Rendimiento
- Plantillas (Templates)
- Introducción
- Plantilla de Función
- Plantilla de Clase
- Plantillas Variádicas
- Expansión de Código (Code Bloat)
- Estrategias de Implementación
- Meta-programación con Plantillas
- ¿Plantillas versus Herencia?
- Manejo de Errores
- Manejo de Excepciones
- Problemas de Rendimiento
- Implementación
- Código En línea (Inline)
- ¿Cuándo Usarlo?
- Estrategias
- Inicio
- Inicio del Sistema
- La Parte C
- La Parte C++
- Biblioteca Estándar
- Biblioteca de Plantillas Estándar, STL
- Biblioteca iostream
- Principales extensiones realizadas en STL debido a C++11:
- Semánticas de movimiento
- Plantillas Variádicas
- Concurrencia
- Gestión de Memoria
- El Modelo de Memoria de C++
- Los tipos stdint
- Tipos atómicos y sus operaciones
- Estrategias
- Variables
- Placement new
- Gestión de Memoria Definida por el Usuario
- El Modelo de Memoria de C++
- Interoperabilidad entre C y C++
- Name Mangling
- Inicialización Estática
- Memoria Dinámica
- Contenido de struct
- POD – Tipo de Datos Simples
- Patrones de Diseño
- RAII – La Adquisición de Recursos es la Inicialización
- E/S Mapeada en Memoria
- Interrupción
- Inicialización de Objetos Estáticos
Requerimientos
No se requieren requisitos específicos para asistir a este curso.
Reseñas (3)
Explicación detallada, reiteración de los puntos de manera sutil que realmente hizo que el conocimiento quedara muy bien asimilado. La disposición de Rod a doblegar la información sobre las preguntas poco comunes que planteamos para asegurarse de que sus respuestas fueran 100% correctas. Además, su interés en discutir los pros y contras de diferentes estilos de codificación, lo que nos permitió no solo aprender a usar C++ de la manera prevista, sino también entender por qué debía hacerse de esa forma.
Nick Dillon - cellxica Ltd
Curso - Using C++ in Embedded Systems - Applying C++11/C++14
Traducción Automática
Disfruté del tiempo que nos dedicamos a resolver los ejercicios. Esto fue muy útil, ya que nos permitió pasar un buen rato pensando en nuestras soluciones e implementándolas.
Valeriu - Siemens
Curso - Using C++ in Embedded Systems - Applying C++11/C++14
Traducción Automática
Los detalles sobre cómo el compilador se comporta dependiendo del uso de la sintaxis. Las secciones de "Quiz" son muy estimulantes
Andrea Pomatto
Curso - Using C++ in Embedded Systems - Applying C++11/C++14
Traducción Automática