Programación en C#
Aprende a programar desde cero hasta un nivel de experto, empleando el lenguaje C#
Lo que serás capaz de hacer
Aprende a programar, desde 0 hasta un nivel de experto. Tendrás explicaciones, ejemplos y ejercicios propuestos (junto con su solución paso a paso) para dominar conceptos como las variables, las condiciones, los bucles, los arrays, las funciones, las clases, la memoria dinámica (listas, pilas ,colas, diccionarios), los ficheros de texto y binarios... Contarás con dos profesores distintos, porque sabemos que muchas veces el volver a escuchar algo, explicado de una forma ligeramente distinta ayuda a que "se encienda esa bombilla" que te hace entenderlo por completo. Los primeros ejemplos y ejercicios se harán "en consola", para evitar distracciones, y al final del curso verás lo fundamental de entornos más amigables para el usuario, como Windows Forms y WPF.
- Aprenderás a programar, desde 0 hasta un nivel de experto, usando el lenguaje C#.
- Conocerás cómo usar variables, comprobar condiciones, realizar bucles, crear funciones, descomponer en clases, emplear memoria dinámica, acceder a ficheros...
- La mayoría de programas serán "en consola", para evitar distracciones, pero al final del curso verás pinceladas de entornos más amigables, como Windows Forms
- Conocerás Visual Studio, un entorno de programación potente y prestigioso
- Podrás aplicar la gran mayoría de tus conocimientos a otros lenguajes de programación
Temario
UNIDAD 1 - 1. Introducción · 23 leccionesUNIDAD 1 - 1. Introducción
UNIDAD 1 - 1. Introducción
- 0.01. Presentación del curso
- 1.01. Lenguajes y programas
- Solución al ejercicio 1.01
- 1.02. Intérpretes y compiladores
- Solución al ejercicio 1.02
- Inciso: Simplificación en C# 10
- 1.03. Operaciones aritméticas, using System
- Solución al ejercicio 1.03
- 1.04. Contacto con Visual Studio
- 1.04bis. Sobre las versiones de Visual Studio
- Solución al ejercicio 1.04
- 1.05. Datos introducidos por el usuario, Console.Write
- Solución al ejercicio 1.05
- 1.06a - Geany como editor alternativo para Windows
- 1.06b. Geany en Mac
- 1.06c. Geany en Linux
- Solución al ejercicio 1.06
- 1.07. Comentarios, formato libre
- Solución al ejercicio 1.07
- 1.08. Prioridad, desbordamiento, {0}
- Solución al ejercicio 1.08
- 1.09. Ejemplos básicos
- Test de repaso del tema 1
UNIDAD 2 - 2. Condiciones y bucles · 26 leccionesUNIDAD 2 - 2. Condiciones y bucles
UNIDAD 2 - 2. Condiciones y bucles
- 2.01. Condiciones con "if" (1: sintaxis básica, "else")
- Solución al ejercicio 2.01
- 2.02. Condiciones con "if" enlazadas
- Solución al ejercicio 2.02
- 2.03. Condiciones con "switch"
- Solución al ejercicio 2.03
- 2.04. El "operador ternario"
- Solución al ejercicio 2.04
- 2.05. Ejemplos resueltos con estructuras selectivas
- Test de repaso del tema 2, primera parte
- 2.06. Bucles con "while"
- Solución al ejercicio 2.06
- 2.07. Bucles con "do while"
- Solución al ejercicio 2.07
- 2.08. Contadores. Bucles con "for"
- Solución a los ejercicios 2.08
- 2.09. break, continue, goto
- Solución a los ejercicios 2.09
- 2.10. Recomendaciones de uso de while, do-while, for
- Solución a los ejercicios 2.10
- 2.11. Diagramas de flujo y de Nassi-Shneiderman
- Solución al ejercicio 2.11
- 2.12. Contacto con las excepciones
- Solución al ejercicio 2.12
- 2.13. Ejemplos resueltos de estructuras repetitivas en C#
- 2.14. Nociones básicas de depuración
UNIDAD 3 - 3. Tipos de datos básicos · 26 leccionesUNIDAD 3 - 3. Tipos de datos básicos
UNIDAD 3 - 3. Tipos de datos básicos
- 3.01. Tipos de datos enteros
- Solución al ejercicio 3.01
- 3.02. Incremento, decremento y otras operaciones abreviadas
- Solución al ejercicio 3.02
- 3.03. Tipos de datos reales
- Solución al ejercicio 3.03
- 3.04. Formato de números
- 3.05. Type cast (forzado de tipos)
- 3.06. Cambio de base
- Solución al ejercicio 3.06
- 3.07. Funciones matemáticas incorporadas
- Solución al ejercicio 3.07
- 3.08. Ejemplos de uso de tipos de datos numéricos
- 3.09. Tipo de datos "char" (carácter)
- Solución al ejercicio 3.09
- 3.10. Contacto con los "string" (cadenas de texto)
- Solución al ejercicio 3.10
- 3.11. Datos "booleanos"
- Solución al ejercicio 3.11
- 3.12. Constantes y enumeraciones
- Solución al ejercicio 3.12
- 3.13. Ejemplos de uso de otros tipos de datos básicos
- 3.14. Variables con tipo implícito (var)
- Solución al ejercicio 3.14
- 3.15. Operaciones con bits
- Solución al ejercicio 3.15
UNIDAD 4 - 4. Datos compuestos: arrays, struct, cadenas · 31 leccionesUNIDAD 4 - 4. Datos compuestos: arrays, struct, cadenas
UNIDAD 4 - 4. Datos compuestos: arrays, struct, cadenas
- 4.01. Contacto con los arrays
- Solución al ejercicio 4.01
- 4.02. Buscar en un array
- Solución al ejercicio 4.02
- 4.03. Máximo (y mínimo) de un array
- Solución al ejercicio 4.03
- 4.04. Arrays sobredimensionados
- Solución al ejercicio 4.04
- 4.05. Arrays bidimensionales
- Solución al ejercicio 4.05
- 4.06. Arrays de arrays
- Solución al ejercicio 4.06
- Test de repaso del tema 4 (primera parte: arrays)
- 4.07. Ejemplos de arrays
- 4.08. Structs
- Solución al ejercicio 4.08
- Test de repaso del tema 4 (segunda parte: struct)
- 4.09. Ejemplos de struct
- 4.10. Strings, operaciones habituales (1)
- Solución al ejercicio 4.10
- 4.11. Strings, operaciones habituales (2)
- Solución al ejercicio 4.11
- 4.12. StringBuilder
- Solución al ejercicio 4.12
- 4.13. Ejemplos resueltos de manejo de string
- 4.14. Ordenación de burbuja
- 4.15. Ordenación por selección directa e inserción directa
- 4.16. Comparación de cadenas. Array.Sort
- 4.17. Búsqueda en datos ordenados
- 4.18. Ejemplo de arrays de struct: colección de libros
- Test de repaso del tema 4 (tercera parte: string)
UNIDAD 5 - 5. Funciones · 22 leccionesUNIDAD 5 - 5. Funciones
UNIDAD 5 - 5. Funciones
- 5.01. Contacto con las funciones
- Solución al ejercicio 5.01
- 5.02. Funciones que devuelven un valor
- Solución al ejercicio 5.02
- 5.03. Parámetros por valor y por referencia
- Solución al ejercicio 5.03
- Test de repaso del tema 5 (primera parte)
- 5.04. Recursividad
- Solución al ejercicio 5.04
- 5.05. Parámetros y valor de retorno de Main
- Solución al ejercicio 5.05
- 5.06. Ejemplo de funciones + array de struct: libros
- Solución al ejercicio 5.06
- 5.07. Evitar código repetitivo. Parámetros vs argumentos
- Solución al ejercicio 5.07
- 5.08. Parámetros con valor por defecto y parámetros con nombre
- Solución al ejercicio 5.08
- 5.09. Ejemplos resueltos de funciones
- 5.10. Ejemplos resueltos de recursividad y de paso de parámetros a Main
- 5.11. Ejemplos resueltos de backtracking
- 5.12. Ejemplo de programación dinámica
- Test de repaso del tema 5 (segunda parte)
UNIDAD 6 - 6. Clases (programación orientada a objetos) · 40 leccionesUNIDAD 6 - 6. Clases (programación orientada a objetos)
UNIDAD 6 - 6. Clases (programación orientada a objetos)
- 6.1. Contacto con la Programación Orientada a Objetos
- Solución al ejercicio 6.01
- 6.2. Ocultación de datos. Getters y setters
- Solución al ejercicio 6.02
- Test de repaso del tema 6 (primera parte)
- 6.3. Herencia
- Solución al ejercicio 6.03
- 6.4. Visibilidad - public, private, protected
- Solución al ejercicio 6.04
- 6.5. Constructores
- Solución al ejercicio 6.05
- 6.6. Proyectos a partir de varios fuentes
- Solución al ejercicio 6.06
- Test de repaso del tema 6 (segunda parte)
- 6.7. Ejemplo completo de P.O.O. 1/3
- 6.8. Arrays de objetos
- Solución al ejercicio 6.08
- 6.9. "virtual" y "override"
- Solución al ejercicio 6.09
- 6.10. "base"
- Solución al ejercicio 6.10
- 6.11. "this"
- Solución al ejercicio 6.11
- 6.12. "ToString()"
- Solución al ejercicio 6.12
- 6.13. Propiedades
- Solución al ejercicio 6.13
- 6.14. Objetos (y arrays) como parámetros de una función
- 6.15. Ejemplo completo de P.O.O. 2/3
- 6.16. ¿Cuándo usar "static"?
- Solución al ejercicio 6.16
- 6.17. Polimorfismo y sobrecarga
- Solución al ejercicio 6.17
- 6.18. Sobrecarga de operadores
- Solución al ejercicio 6.18
- 6.19. Clases abstractas e interfaces
- Solución al ejercicio 6.19
- 6.20. Nociones de análisis orientado a objetos
- Solución al ejercicio 6.20
- 6.21. Ejemplo completo de P.O.O. 3/3
UNIDAD 7 - 7. Memoria dinámica · 20 leccionesUNIDAD 7 - 7. Memoria dinámica
UNIDAD 7 - 7. Memoria dinámica
- 7.01. Contacto. Colas
- Solución al ejercicio 7.01
- 7.02. Pilas
- Solución al ejercicio 7.02
- 7.03. ArrayList (y listas con tipo)
- Solución al ejercicio 7.03
- 7.04. Ejemplo: List<Libro>
- Solución al ejercicio 7.04
- 7.05. Ejemplo resuelto de manejo de listas
- Test de repaso del tema 7, primera parte (colas, pilas, listas)
- 7.06. SortedList
- Solución al ejercicio 7.06
- 7.07. Tablas Hash (y Dictionary)
- Solución al ejercicio 7.07
- 7.08. Contacto con los conjuntos
- Solución al ejercicio 7.08
- 7.09. Enumeradores
- Solución al ejercicio 7.09
- 7.10. Ejemplo resuelto de diccionarios
- Test de repaso del tema 7, segunda parte (diccionarios)
UNIDAD 8 - 8. Ficheros de texto y binarios · 38 leccionesUNIDAD 8 - 8. Ficheros de texto y binarios
UNIDAD 8 - 8. Ficheros de texto y binarios
- 8.01. Contacto. Leer todo un fichero en una orden: ReadAllLines
- Solución al ejercicio 8.01
- 8.02. Volcar todo un fichero a/desde una cadena: ReadAllText
- Solución al ejercicio 8.02
- 8.03. Escritura en un fichero de texto
- Solución al ejercicio 8.03
- 8.04. Leer de un fichero de texto
- Solución al ejercicio 8.04
- 8.05.Añadir a un fichero de texto
- Solución al ejercicio 8.05
- 8.06. Comprobar existencia y excepciones
- Solución al ejercicio 8.06
- 8.07. Ejemplo: List<Libro> + ficheros
- Solución al ejercicio 8.07
- 8.08. Ficheros lógicos frente a ficheros físicos
- Solución al ejercicio 8.08
- 8.09. Leer un byte de un fichero binario
- Solución al ejercicio 8.09
- 8.10. Tamaño y posición en un fichero binario
- Solución al ejercicio 8.10
- 8.11. Leer bloques de un fichero binario
- Solución al ejercicio 8.11
- 8.12. Ejemplo: Mostrar una imagen BMP en consola
- 8.13. Escribir bytes en un fichero binario
- Solución al ejercicio 8.13
- 8.14. Escribir bloques en un fichero binario
- Solución al ejercicio 8.14
- 8.15. Leer y guardar datos nativos en un fichero binario
- Solución al ejercicio 8.15
- 8.16. Ejemplo: Mostrar una imagen PCX en consola
- 8.17. Endianness
- 8.18. Ejemplo: Cabecera de un MP3 (V1)
- 8.19. Ejemplo: Analizar una orden SQL
- 8.20. Ejemplo: Conversor simple de C# a Python
- 8.21. Leer y escribir bloques de bytes
- Solución al ejercicio 8.21
- 8.22. Lectura y escritura simultáneas
- Solución al ejercicio 8.22
UNIDAD 9 - 9. Fecha y hora · 5 leccionesUNIDAD 9 - 9. Fecha y hora
UNIDAD 9 - 9. Fecha y hora
- 9.01. Obtener y mostrar la fecha y hora
- Solución al ejercicio 9.01
- 9.02. Sumar y restar fechas
- Solución al ejercicio 9.02
- 9.03 - Ejemplo completo con gestión de fechas
UNIDAD 10 - 10. Números al azar · 4 leccionesUNIDAD 10 - 10. Números al azar
UNIDAD 10 - 10. Números al azar
- 10.01. Generación de números al azar
- Solución al ejercicio 10.01
- 10.02. Generar secuencias aleatorias. Método manual
- 10.03. Generar secuencias aleatorias. Método automático
UNIDAD 11 - 11. Manejo avanzado de la consola · 13 leccionesUNIDAD 11 - 11. Manejo avanzado de la consola
UNIDAD 11 - 11. Manejo avanzado de la consola
- 11.01. Posicionamiento y colores en consola
- Solución al ejercicio 11.01
- 11.02. Manejo avanzado de teclado en consola
- Solución al ejercicio 11.02
- 11.03. Ejemplo de aplicación de consola: gestor de tareas (parte 1 de 3)
- 11.04. Ejemplo de aplicación de consola: gestor de tareas (parte 2 de 3)
- 11.05. Ejemplo de aplicación de consola: gestor de tareas (parte 3 de 3)
- 11.06. Ejemplo de videojuego: Arkanoid (I) - definir las pantallas
- 11.07. Ejemplo de videojuego: Arkanoid (II) - definir los sprites
- 11.08. Ejemplo de videojuego: Arkanoid (III) - definir el movimiento
- 11.09. Ejemplo de videojuego: Arkanoid (IV) - definir las colisiones
- 11.10. Ejemplo de videojuego: Arkanoid (V) - definir el HUD
- 11.11. Ejemplo de videojuego: Arkanoid (VI) - definir los niveles
UNIDAD 12 - 12. Lectura de directorios · 4 leccionesUNIDAD 12 - 12. Lectura de directorios
UNIDAD 12 - 12. Lectura de directorios
- 12.01. Lectura básica de directorios
- Solución al ejercicio 12.01
- 12.02. Lectura avanzada de directorios
- Solución al ejercicio 12.02
UNIDAD 13 - 13. Lanzar otros programas · 2 leccionesUNIDAD 13 - 13. Lanzar otros programas
UNIDAD 13 - 13. Lanzar otros programas
- 13.01. Lanzar otros programas
- Solución al ejercicio 13.01
UNIDAD 14 - 14. Información sobre el sistema · 2 leccionesUNIDAD 14 - 14. Información sobre el sistema
UNIDAD 14 - 14. Información sobre el sistema
- 14.01. Información sobre el sistema
- Solución al ejercicio 14.01
UNIDAD 15 - 15. Persistencia · 2 leccionesUNIDAD 15 - 15. Persistencia
UNIDAD 15 - 15. Persistencia
- 15.01. Contacto con la persistencia
- 15.02. Persistencia XML
UNIDAD 16 - 16. Bases de datos SQLite · 3 leccionesUNIDAD 16 - 16. Bases de datos SQLite
UNIDAD 16 - 16. Bases de datos SQLite
- 16.01. Contacto con SQLite 01: Proyecto, guardar
- 16.02. Contacto con SQLite 02: Leer datos
- 16.03. SQLite 03: Ejemplo (algo más) completo
UNIDAD 17 - 17. Programación funcional y LINQ · 5 leccionesUNIDAD 17 - 17. Programación funcional y LINQ
UNIDAD 17 - 17. Programación funcional y LINQ
- 17.01. Introducción a la programación funcional
- 17.02. Funciones anónimas y delegados
- 17.03. Expresiones lambda
- 17.04. Gestión de colecciones con LINQ
- 17.05. Gestión de colecciones con IEnumerable
UNIDAD 18 - 18. Algunos servicios de red · 2 leccionesUNIDAD 18 - 18. Algunos servicios de red
UNIDAD 18 - 18. Algunos servicios de red
- 18.01. Descargar una página web
- 18.02. Acercamiento a un chat
UNIDAD 19 - 19. Introducción a Windows Forms · 12 leccionesUNIDAD 19 - 19. Introducción a Windows Forms
UNIDAD 19 - 19. Introducción a Windows Forms
- Windows Forms 01: Proyecto, botones y etiquetas
- Windows Forms 02: Casillas de introducción de texto
- Windows Forms 03: RadioButton y CheckBox
- Windows Forms 04: ListBox
- Windows Forms 05: MessageBox
- Windows Forms 06: Diálogos predefinidos
- Windows Forms 07: Una segunda ventana
- Windows Forms 08: Menús, otros eventos
- Windows Forms 09: Contacto con DataGridView
- Windows Forms 10: Un par de problemas frecuentes
- Windows Forms 11: Gestor de libros, versión Windows Forms
- Windows Forms 12: Pinceladas de otros componentes visuales
Tu certificado lo emite la SEP, no solo una plataforma
Al demostrar la competencia recibes un certificado emitido por la Secretaría de Educación Pública a través del Gobierno del Estado de México: un documento oficial que puedes presentar con confianza ante cualquier empleador o institución.
Tu certificado con INEC
- Lo emite la Secretaría de Educación Pública (SEP), a través del Gobierno del Estado de México
- Documento oficial con folio verificable en línea
- Lo otorga la Universidad Tecnológica Fidel Velázquez
Otras plataformas en línea
- Constancia privada emitida por la misma plataforma
- Solo acredita horas cursadas o asistencia
- Sin respaldo de una autoridad educativa
Tu itinerario, de la inscripción al certificado
- 1
Inscripción con pago único
Pagas $2,800 MXN una sola vez y entras de inmediato al curso.
- 2
Estudias a tu ritmo
19 unidades con videos, lecturas y actividades, disponibles 24/7 durante 12 meses.
- 3
Cuestionarios por unidad
11 cuestionarios para comprobar lo aprendido.
- 4
Certificado
Emitido por la SEP a través del Gobierno del Estado de México, con folio verificable.
Un certificado oficial de la SEP
- Emitido por la Secretaría de Educación Pública (SEP), a través del Gobierno del Estado de México. No es una constancia privada: es un documento oficial, y ese respaldo marca la diferencia frente a otras plataformas en línea.
- Contenido impartido por Nacho Cabanes.
- Folio y QR verificables para compartirlo con quien te contrate.
Empieza hoy, a tu ritmo
Un solo pago y acceso inmediato al curso completo durante 12 meses.
- 19 unidades · 280 lecciones · 60 h
- 12 meses de acceso
- 11 cuestionarios de evaluación
- Certificado emitido por la SEP (Gob. del Estado de México) con folio verificable
Sobre tu inscripción
¿Cómo es el pago?
Un solo pago de $2,800 MXN. No hay mensualidades ni cargos recurrentes.
¿Cuánto tiempo tengo acceso?
12 meses desde tu inscripción, 24/7, para avanzar a tu ritmo.
¿Quién imparte el contenido?
El curso es impartido por Nacho Cabanes; INEC gestiona tu inscripción, evaluación y certificado.
¿Qué pasa cuando vence mi acceso?
Puedes renovar tu cuenta tú mismo desde la plataforma, sin trámites ni esperas.


