Temario del curso

Introducción

  • Descripción general de las características y aplicaciones de C

  • Preparando el Entorno de Desarrollo

    • Elegir un IDE
    • Configurar el compilador

    • Escribiendo un Programa de Ejemplo

      • Definir el problema
      • Codificar según los requisitos

      • Definiendo el Ámbito de Variables y Funciones

        • Comprender el ámbito, la visibilidad y la duración
        • Trabajar con clases de almacenamiento: auto, extern, register, static

        • Gestionando Datos en un Programa C

          • Más allá de los tipos de datos primitivos
          • Trabajar con tipos de datos avanzados: estructuras, listas enlazadas, etc.
          • Almacenar diferentes tipos de datos en la misma ubicación de memoria

          • Modificando las Propiedades de una Variable

            • Más allá de los modificadores de tipo
            • Trabajar con calificadores de tipo: constant, volatile, etc.

            • Manipulando Bits en C

              • Trabajar con datos más pequeños que un byte
              • Trabajar con operadores de manipulación de bits

              • Controlando el Flujo de Tu Programa

                • Más allá del secuenciamiento
                • Usar la declaración goto

                • Leyendo y Escribiendo Datos

                  • Revisión de las funciones de entrada/salida
                  • Mejorar la legibilidad de la salida

                  • Desarrollando Código Multiplataforma

                    • Comprender las directivas del compilador
                    • Compilar código condicionalmente

                    • Aumentando el Rendimiento del Programa

                      • Macros vs funciones
                      • Definir macros para ejecutar fragmentos de programa

                      • Asignando Memoria Dinámicamente

                        • Ventaja de usar punteros: velocidad de ejecución
                        • Punteros a funciones
                        • Acceder y manipular la dirección de memoria

                        • Depurando un Programa en C

                          • Técnicas avanzadas para verificar, detectar y corregir errores
                          • Trabajar con gdb (Gnu Debugger)

                          • Creando una Biblioteca Estática

                            • Cómo se enlaza una biblioteca estática en un archivo ejecutable
                            • Crear una biblioteca estática

                            • Creando una Biblioteca Compartida

                              • Bibliotecas estáticas vs bibliotecas compartidas (bibliotecas dinámicas)
                              • Cómo se enlaza y carga en memoria una biblioteca compartida durante la ejecución
                              • Crear una biblioteca compartida

                              • Abstrayendo Datos en Tu Programa

                                • Descripción general de interfaz, especificación e implementación
                                • Crear un tipo de datos abstracto
                                • Prueba de regresión de un tipo de datos abstracto

                                • Buscando y Ordenando Datos

                                  • Buscar en arreglos usando búsqueda lineal, binaria, etc.
                                  • Ordenar arreglos usando ordenamiento por selección, inserción, burbuja

                                  • Comunicación entre Procesos y Señales

                                    • Comprender procesos, sockets y señales
                                    • Implementar IPC usando archivos compartidos, memoria compartida, pipes, colas de mensajes, sockets, semáforos, etc.

                                    • Haciendo que Tu Programa en C Se Ejecute en Paralelo

                                      • Ejecutar diferentes partes de un programa concurrentemente a través de hilos múltiples (multithreading)
                                      • Escribir un hilo

                                      • Programación Avanzada de Redes

                                        • Revisión de TCP, UDP, IP y otros protocolos dominantes
                                        • Servir múltiples puertos, sobrevivir a interrupciones de red bruscas, etc.
                                        • Escribir APIs de socket poderosas

                                        • Hacia el Código de Alta Calidad

                                          • Revisión de código por pares y programación en paralelo
                                          • La importancia de la codificación iterativa (refactoring)

                                          • Resumen y Conclusión

Requerimientos

  • Experiencia en programación en C

Audiencia

  • Programadores
  • Desarrolladores
 28 Horas

Número de participantes


Precio por Participante​

Testimonios (2)

Próximos cursos

Categorías Relacionadas