
Curso Básico de Programación en Go
Domina Go desde cero: desde la configuración del toolchain y la sintaxis básica hasta concurrencia, pruebas y optimización de rendimiento. Este curso integral proporciona a los desarrolladores las habilidades prácticas para escribir código Go limpio y listo para producción. Ya sea que estés construyendo herramientas de CLI, servicios concurrentes o bibliotecas reutilizables, terminarás con la confianza para entregar software real.
Lo que vas a aprender:
Configura un entorno profesional de desarrollo en Go y domina el toolchain principal.
Construye programas concurrentes usando goroutines, canales y primitivas de sincronización.
Diseña APIs flexibles con el sistema de interfaces de Go y el modelo de satisfacción implícita.
Maneja errores idiomáticamente usando tipos personalizados, envoltura y propagación estructurada.
Organiza bases de código en módulos versionados con prácticas limpias de gestión de dependencias.
Verifica y optimiza la calidad del código mediante pruebas unitarias, benchmarks y herramientas de profiling.
Cómo estudias de forma práctica Curso Básico de Programación en Go
Cómo practicas Curso Básico de Programación en Go
Para ti que tienes una empresa y quieres capacitar a tu equipo
En Dedika para empresas, el curso incluye ejercicios y ejemplos adaptados a tu propio negocio y a las necesidades de tu empresa.
Contenido del curso
8 Capítulos • 40 LeccionesDuración entre 4 y 360 horas (tú decides)
Capítulo 1OcultarOcultar detallesVer detallesEntorno de Go y Fundamentos del Lenguaje
Entorno de Go y Fundamentos del Lenguaje
Lección 1 • Instalación y Configuración de Go
Cubre la instalación de Go, la distribución del espacio de trabajo y la configuración de las herramientas. Proporciona la base operativa de la que depende cada capítulo posterior.
Lección 2 • Operadores y Expresiones
Cubre operadores aritméticos, de comparación, lógicos y a nivel de bits. Los estudiantes adquieren la capacidad de construir expresiones correctas en cualquier contexto de Go.
Lección 3 • Variables, Constantes y Tipos de Datos
Enseña los estilos de declaración de variables, los valores cero y los tipos primitivos integrados. Desarrolla la conciencia de tipos necesaria para cada tarea de codificación posterior.
Lección 4 • Uso de las Herramientas de Go
Explora los comandos go build, go fmt, go vet y go doc. Proporciona a los estudiantes las herramientas de flujo de trabajo diario utilizadas en el desarrollo profesional de Go.
Lección 5 • Estructura y Sintaxis del Programa en Go
Presenta las declaraciones de paquete, las sentencias de importación y el punto de entrada principal. Establece las reglas estructurales que deben seguir todos los archivos fuente de Go.
Capítulo 2OcultarOcultar detallesVer detallesFlujo de Control y Funciones
Flujo de Control y Funciones
Lección 1 • Definición y Llamada de Funciones
Presenta las firmas de funciones, los parámetros y los valores de retorno. Establece el bloque de construcción para el código modular de Go utilizado a lo largo del curso.
Lección 2 • Bucles e Iteración
Cubre el bucle for en todas sus formas, incluida la iteración basada en range. Proporciona las herramientas de iteración necesarias para procesar colecciones y flujos.
Lección 3 • Diferir, Pánico y Recuperación
Explica las llamadas diferidas, la propagación de pánico y los patrones de recuperación. Los estudiantes aprenden el enfoque idiomático de Go para la limpieza de recursos y la contención de errores.
Lección 4 • Funciones de Primera Clase y Closures
Trata las funciones como valores, cubriendo funciones anónimas y closures. Prepara a los estudiantes para los patrones de orden superior utilizados en capítulos posteriores.
Lección 5 • Sentencias Condicionales
Enseña las construcciones if, else if, else y switch con modismos específicos de Go. Permite la lógica de ramificación esencial para todos los programas del mundo real.
Capítulo 3OcultarOcultar detallesVer detallesTipos Compuestos: Arreglos, Slices y Mapas
Tipos Compuestos: Arreglos, Slices y Mapas
Lección 1 • Arreglos en Go
Cubre la declaración de arreglos de longitud fija, la indexación y la semántica de valor. Establece el modelo de memoria que sustenta el comportamiento de los slices en secciones posteriores.
Lección 2 • Patrones Comunes de Slices
Demuestra modismos de filtrado, deduplicación y modificación in situ. Construye un conjunto de herramientas prácticas para la manipulación de slices utilizadas en bases de código reales.
Lección 3 • Slices: Funcionamiento Interno y Operaciones
Explica los encabezados de slice, los arreglos de respaldo y el comportamiento de crecimiento. El dominio aquí previene errores comunes en la manipulación de datos a lo largo del curso.
Lección 4 • Estructuras como Registros Compuestos
Presenta la declaración de estructuras, el acceso a campos, la incrustación y los campos anónimos. Sienta las bases para el sistema de tipos explorado en el próximo capítulo.
Lección 5 • Mapas: Creación y Uso
Enseña los literales de mapa, make, búsqueda, inserción y eliminación. Proporciona la base del almacén clave-valor para patrones de configuración y almacenamiento en caché.
Capítulo 4OcultarOcultar detallesVer detallesPaquetes, Módulos y Gestión de Dependencias
Paquetes, Módulos y Gestión de Dependencias
Lección 1 • Adición y Gestión de Dependencias
Enseña go get, go mod tidy y la selección de versiones de dependencias. Los estudiantes mantienen gráficos de dependencias limpios y reproducibles en proyectos reales.
Lección 2 • Publicación y Versionado de Módulos
Explica el etiquetado de lanzamientos, los sufijos de versión principal y los proxies de módulos. Prepara a los estudiantes para compartir bibliotecas reutilizables con el ecosistema de Go.
Lección 3 • Módulos de Go y go.mod
Explica la inicialización de módulos, el archivo go.mod y el versionado semántico. Establece el contrato de dependencia que rige todos los proyectos modernos de Go.
Lección 4 • Principios de Organización de Paquetes
Cubre la nomenclatura de paquetes, los identificadores exportados vs. no exportados y la cohesión. Guía a los estudiantes hacia estructuras de paquetes que escalan con el tamaño del proyecto.
Lección 5 • Diseño de Paquetes Internos y Comprobables
Cubre la convención del paquete internal y los paquetes solo para pruebas. Permite estrategias de encapsulación que protegen los detalles de implementación.
Capítulo 5OcultarOcultar detallesVer detallesSistema de Tipos de Go: Interfaces y Métodos
Sistema de Tipos de Go: Interfaces y Métodos
Lección 1 • Métodos en Tipos
Cubre los receptores de valor y puntero, los conjuntos de métodos y la promoción mediante incrustación. Establece cómo se adjunta el comportamiento a los tipos en Go.
Lección 2 • Mejores Prácticas de Diseño de Interfaces
Cubre interfaces pequeñas, aceptar interfaces/devolver concretos y la contaminación de interfaces. Guía a los estudiantes hacia límites de API mantenibles y comprobables.
Lección 3 • Interfaces de la Biblioteca Estándar
Examina las interfaces io.Reader, io.Writer, fmt.Stringer y error. Conecta la teoría de interfaces con las interfaces que los estudiantes encuentran a diario.
Lección 4 • Aserciones de Tipo y Type Switches
Enseña aserciones de tipo seguras e inseguras y el despacho con type switch. Permite la inspección de tipos en tiempo de ejecución necesaria para patrones de manejador genéricos.
Lección 5 • Definición e Implementación de Interfaces
Explica las declaraciones de interfaz, la satisfacción implícita y la interfaz vacía. Los estudiantes aprenden a escribir código que depende del comportamiento, no de tipos concretos.
Capítulo 6OcultarOcultar detallesVer detallesManejo de Errores y Código Robusto
Manejo de Errores y Código Robusto
Lección 1 • Fundamentos de Registro y Observabilidad
Presenta el registro estructurado con los paquetes log y log/slog. Conecta el manejo de errores con la visibilidad operativa en sistemas de producción.
Lección 2 • Envoltura y Desenvolvimiento de Errores
Cubre las cadenas de error, errors.Is, errors.As y los árboles de desenvolvimiento. Los estudiantes aprenden a inspeccionar errores en capas sin romper la encapsulación.
Lección 3 • Patrones de Pánico y Recuperación
Revisita panic y recover en el contexto de la seguridad en los límites de la biblioteca. Los estudiantes saben cuándo convertir pánicos en errores en las superficies de la API.
Lección 4 • El Modelo de Error en Go
Explica la interfaz error, las comprobaciones de nil y la propagación idiomática de errores. Establece el modelo mental que rige todo el manejo de errores en Go.
Lección 5 • Tipos de Error Personalizados
Enseña errores basados en estructuras, enriquecimiento de contexto y el método Unwrap. Permite información de error enriquecida para depuración y manejo programático.
Capítulo 7OcultarOcultar detallesVer detallesConcurrencia con Goroutines y Canales
Concurrencia con Goroutines y Canales
Lección 1 • Sincronización con el Paquete sync
Cubre Mutex, RWMutex, WaitGroup y Once para la seguridad del estado compartido. Complementa la concurrencia basada en canales para escenarios que requieren memoria compartida.
Lección 2 • Goroutines y el Planificador de Go
Explica la creación de goroutines, el planificador M:N y el ciclo de vida de las goroutines. Proporciona el modelo conceptual necesario para razonar sobre la ejecución concurrente.
Lección 3 • Patrones Comunes de Concurrencia
Demuestra agrupaciones de trabajadores, pipelines y arquitecturas fan-out/fan-in. Los estudiantes aplican estos patrones para construir programas concurrentes escalables.
Lección 4 • Sentencia Select y Multiplexación
Enseña la sentencia select para la multiplexación de operaciones de canal. Permite patrones de timeout, cancelación y fan-in utilizados en servicios de producción.
Lección 5 • Canales: Comunicación Entre Goroutines
Cubre canales con búfer y sin búfer, semántica de envío/recepción y cierre. Establece el mecanismo de comunicación principal en la concurrencia de Go.
Capítulo 8OcultarOcultar detallesVer detallesPruebas, Benchmarking y Calidad del Código
Pruebas, Benchmarking y Calidad del Código
Lección 1 • Ayudantes de Prueba y Fixtures de Prueba
Enseña funciones auxiliares, TestMain y la configuración de recursos temporales. Reduce el boilerplate y mejora la legibilidad de las pruebas en grandes conjuntos de pruebas.
Lección 2 • Benchmarking y Perfilado
Cubre funciones de benchmark, bucles B.N e integración con pprof. Los estudiantes identifican y eliminan cuellos de botella de rendimiento con evidencia basada en datos.
Lección 3 • Escritura de Pruebas Unitarias con el Paquete testing
Cubre las convenciones de archivos de prueba, t.Error, t.Fatal y las subpruebas. Establece la disciplina de prueba de referencia requerida para todos los proyectos de Go.
Lección 4 • Cobertura de Código y Puertas de Calidad
Explica los informes de cobertura, go test -cover y la integración de linters. Conecta las pruebas con los pipelines de integración continua para la aplicación automatizada de la calidad.
Lección 5 • Mocking y Pruebas Basadas en Interfaces
Demuestra mocks manuales, implementaciones stub e inyección de dependencias. Permite pruebas unitarias aisladas para código con dependencias externas.
Tu certificado válido de finalización
Este curso es para ti:
Desarrollador backend: quiere añadir Go a un set de habilidades profesionales multi-lenguaje.
Programador de Python o JavaScript: listo para explorar un lenguaje de sistemas con tipado estático.
Estudiante de ciencias de la computación: busca experiencia práctica más allá de las tareas académicas.
Ingeniero DevOps: necesita leer, modificar o escribir herramientas de Go en sus flujos de trabajo diarios.
Persona en transición de carrera: migrando al desarrollo de software con un lenguaje estructurado y moderno.
Programador por afición: quiere construir herramientas rápidas y autocontenidas para proyectos personales.
Lo que dicen nuestros alumnos
Sus clases son perfectas. Adquirí el paquete de un año y, finalmente, tengo la oportunidad de seguir diversos temas de mi interés sin necesidad de cambiar de plataforma... les agradezco por todo lo que hacen, ya los he recomendado a otras personas...

Me gusta cómo las lecciones van directo al grano y cómo puedo cambiar capítulos y saltar contenidos que no necesito.

Me gusta el contenido y la forma de presentación y transcripción de videos, ¡lo que acelera el proceso!

La plataforma es rápida, fácil de usar. La diversidad de contenido y los videos complementarios ayudan mucho en el aprendizaje.

Principales capacitaciones
Preguntas frecuentes
¿Quién es Dedika?
¿El certificado es válido en México?
¿Los cursos son gratuitos?
¿Cuál es la carga horaria del curso?
¿Cómo son los cursos?
¿Cómo funcionan los cursos?
¿Cuál es la duración de los cursos?
¿Cuál es el costo o precio de los cursos?
¿Qué es un curso EAD u online y cómo funciona?
Curso en PDF




















