Construir un servidor HTTP con la biblioteca estándar usando manejadores, multiplexor y middleware propio
Propagar cancelación y plazos entre capas mediante context y cerrar el servicio de forma ordenada
Coordinar concurrencia con goroutines, canales y grupos de espera evitando fugas y condiciones de carrera
Tratar errores con envoltura, errors.Is y errors.As en lugar de cadenas de texto
Escribir pruebas de tabla y pruebas de manejadores con httptest, incluyendo detección de carreras
Perfilar consumo de CPU y memoria con pprof y localizar asignaciones innecesarias
Compilar binarios estáticos multiplataforma y empaquetarlos en imágenes Docker mínimas
Contenido del curso
7 módulos · 32 clases en vídeo · práctica guiada en cada módulo
Módulo 1 · Presentación y bases del lenguaje5 clases
Por qué Go para servicios: compilación, despliegue y consumo
Módulos, estructura de paquetes y herramientas del lenguaje
Tipos, estructuras, interfaces y métodos
Errores como valores: convención y estilo
El servicio que se construye durante el curso
Módulo 2 · HTTP con la biblioteca estándar5 clases
Manejadores, multiplexor y patrones de ruta
Middleware escrito a mano y composición
Lectura y escritura de JSON con control de errores
Tiempos de espera del servidor y del cliente
Apagado ordenado del proceso
Módulo 3 · Contexto y ciclo de vida4 clases
Qué resuelve context y cómo se propaga
Cancelación, plazos y valores en el contexto
Cancelación de consultas a base de datos
Errores de contexto y su tratamiento
Módulo 4 · Concurrencia controlada5 clases
Goroutines y su coste real
Canales, selección y patrones de comunicación
Grupos de espera y grupos con error
Fugas de goroutines y cómo detectarlas
El detector de condiciones de carrera
Módulo 5 · Datos y dependencias externas4 clases
Acceso a base de datos con database/sql
Grupo de conexiones y consultas parametrizadas
Clientes HTTP hacia otros servicios con reintentos
Interfaces pequeñas para poder sustituir dependencias
Módulo 6 · Pruebas y rendimiento5 clases
Pruebas de tabla y cobertura
Pruebas de manejadores con httptest
Dobles mediante interfaces
Pruebas de rendimiento con benchmarks
Perfilado de CPU y memoria con pprof
Módulo 7 · Empaquetado y cierre4 clases
Compilación cruzada y binarios estáticos
Imagen Docker mínima en varias etapas
Configuración por entorno y comprobaciones de salud
Proyecto final: servicio compilado, probado y perfilado
Requisitos
Experiencia previa en algún lenguaje compilado o tipado estáticamente
Conocer HTTP, concurrencia y bases de datos a nivel de desarrollo backend
Manejo de la línea de comandos, Git y Docker para compilar y ejecutar contenedores
Descripción
Un servicio que debe responder con latencia estable, consumir poca memoria y desplegarse como un único fichero encaja mal con pilas que arrastran intérprete y dependencias. Go se diseñó para ese escenario, pero su enfoque incomoda a quien llega de marcos completos: no hay inyección mágica, ni ORM de serie, ni jerarquía de excepciones.
El curso construye un servicio de datos con la biblioteca estándar y unas pocas dependencias elegidas. Se implementan manejadores y middleware a mano, se propaga contexto con cancelación, se paralelizan consultas con goroutines controladas y se instrumenta con pprof para medir asignaciones. Todo el código se acompaña de pruebas de tabla y del detector de carreras activado.
El resultado es un binario estático, con pruebas y perfilado, listo para una imagen Docker de pocos megabytes. Encaja con equipos de desarrollo que necesitan servicios de alto rendimiento y con ingeniería que despliega en máquinas de recursos limitados o en pasarelas industriales. Continúa hacia microservicios y mensajería con colas.
¿Para quién es este curso?
Perfiles backend que necesitan servicios con latencia estable y bajo consumo de memoria
Ingeniería que despliega software en pasarelas o equipos con recursos limitados
Equipos de plataforma que construyen herramientas internas distribuibles como un único binario
Bajo demanda
Curso diseñado con la ficha cerrada. Se produce al confirmarse un grupo o un contrato.
Este sitio web utiliza cookies propias y de terceros para recopilar información con finalidad técnica. No se recaban ni ceden datos de carácter personal sin tu consentimiento. Más información en la política de cookies.