Buena demostración del problema!
Introducción a Go
Mi primer programa en Go
Instalación en Mac y Windows
Instalar VS Code
Comandos básicos de Go
Analizando un programa en Go
Nuestra Primera Aplicación Go
Descripción del proyecto 1: Calculadora
Leer inputs desde la consola
Manejo de errores y uso de If
Switch
Lista de Tareas
Structs y Receivers
Descripción del proyecto 2: Lista de Tareas
Structs para Lista de Tareas
Punteros
Punteros en Structs
Uso de Slices
Ciclo For
Implementar For en Struct
Interfaces
¿Qué es una interfaz?
Maps
¿Por qué las Interfaces?
Creando la Interfaz Animal
Imprimiendo el contenido de una Página Web usando Interfaces
Goroutines y Channels
Introducción al problema de la Concurrencia
GoRoutines
Channels
Implementación de Goroutines y channels
Construyendo un Servidor Web
Ciclos While y For
Descripción de Servidor Web
Creando el Servidor
Manejando rutas en backend
¿Qué es un Middleware?
Manejando Request HTTP
Asignando Rutas HTTP
Agregando Middlewares
Agregando Multiples Middlewares
Agregando otro Middleware
Manejando POST
Manejando Modelos y JSON
Respondiendo Request JSON
Go Modules creando nuestro primer módulo en Go
Implementando nuestro primer módulo en Go
Conclusiones del Curso y siguientes pasos
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Aportes 12
Preguntas 0
Buena demostración del problema!
Hasta hora me comenzó a gustar, porque en los ejercicios pasados sentía gana de agarrar mejor un libro (de cualquier manera lo haré), Creo que le faltó organización los temas anteriores vamos a ver que diferencias hay con JS
el
time.now()
retorna la hora local.
Para obtener la hora UTC o de servidor, sería este método
time.Now().UTC()
Esto se pone bueno!
ese codigo es muy util para saber si los servidores estan arriba, creo que si podemos mejorarlo seria muy util.
package main
import (
"fmt"
"net/http"
"time"
)
func main() {
inicio := time.Now()
servidores := []string{
"ht t p : / /p l a t z i . c o m " ,
"h t t p : / / g o o g l e
. c o m",
"ht t p : / /f a c e b o o k . c o m" ,
" h t t p :/ / I n s t a g r a m .c o m ",
}
for _, servidor := range servidores {
revisarServidor(servidor)
}
tiempoPasado := time.Since(inicio)
fmt.Printf("Done in %s", tiempoPasado)
}
func revisarServidor(servidor string) {
_, err := http.Get(servidor)
if err != nil {
fmt.Println(servidor, "no esta disponible")
} else {
fmt.Println(servidor, "funciona correctamente")
}
}
Concurrencia es equivalente a Procesos asincrónicos.
con range iteramos atravez de los slice
_; err := http.Get(servidor), el guion bajo es para ingnorar el primer elemento porque no lo vamos a usar
En base a esta lección se puede decir que Go es un lenguaje síncrono
genial 😃 😊
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?
o inicia sesión.