Este curso no está actualmente activo en nuestra Web

Presentación

El lenguaje de programación C es uno de los lenguajes más empleados hoy en día para el desarrollo de software según el Ranking TIOBE y el Opensource Language Ranking. Algunos ejemplos de relevancia son el núcleo de Linux, el navegador web Firefox, el servidor web Apache, la interfaz web cgit, el toolkit gráfico GTK y el NDK de Android, entre muchos otros.

Requisitos

Conocimientos básicos de programación.

Programa

Módulo/Asignatura 1. Fundamentos

Historia de C
Un poco de historia de C, proyectos de referencias, características, utilidad y aplicaciones.

Configurando el entorno de trabajo
Flujo de trabajo, Git, GitHub, editor, terminal linux

Introducción a C
Variables, tipos básicos, arrays, introducción a punteros

Estructuras
Estructuras de datos básicas de C

C Modular
Funciones, ficheros de cabeceras, compilación modular y make

Reserva dinámica de memoria
Mapa de memoria, reserva y liberación dinámica memoria, problemas típicos de manejo de memoria, depuración con valgrind

Objetos (I)
Introducción la creación de objetos en C

Módulo/Asignatura 2. Usando Bibliotecas Libres

Getopt
Paso de argumentos y getopt

Listas
Listas encadenadas: teoría y librería "list.h" del Kernel

I/O
Entrada/salida con libc: lectrua y escritura de ficheros

Punteros a funciones
Sintáxis y utilidad de los punteros a funciones.

Objetos (II)
Conceptos avanzados sobre objetos: herencia y polimorfismo

gdb
Debugación con gdb

Gtk
Introducción al uso de la librería GTK para creación de interfaces gráficas.

Sockets TCP/UDP
Introducción al uso de sockets en Linux

Hilos
creación y manipulación de hilos

Competencias

Capacidad de uso de herramientas de desarrollo en C
Capacidad de trabajo en comunidades de Software Libre
Capacidad de uso de nuevas bibliotecas.
Búsqueda de soluciones en distintas fuentes y resolución de problemas.
Capacidad de autoevaluación y revisión de sus propios desarrollos

Cursos relacionados que SÍ están activos

Publicidad

Ver otros masters de...