Golang mola


  • 0

    alt text

    En los últimos días he estado interesado en Go Lang, el lenguaje desarrollado por Google. He leído que es bastante rápido y que consume muy pocos recursos. Todo esto unido a que es muy fácil trabajar con paralelismo (gracias a los 'channels'), me ha llevado a querer aprender Go. Y que mejor manera que programar algo? Pues este fin de semana me he puesto a reescribir por tercera vez el backend de una web de música que hice hace tiempo. La primera versión la escribí en PHP, la segunda en NodeJS (pero muy básico, porque usaba Parse.com), y esta última versión en Go, con una BD Mongo para las listas de reproducción y usuarios.

    En solamente 2 días he reescrito todo, ya esta el backend hecho, solo falta adaptar la versión web y cualquier otro cliente que se use. Me ha sorprendido bastante, porque me ha gustado mucho el lenguaje, me ha parecido muy sencillo y muy rápido de aprender. No esperaba que me resultase tan sencillo reescribir todo, la verdad.

    No puedo dejar el código porque no es código abierto, pero si hago alguna otra cosa interesante que pueda compartir, os la pondré por si os interesa :)

    Os recomiendo que aprendáis este lenguaje, esta muy bien :mola:

    PD: Visto el descontento con NodeBB, podríamos crear nuestro propio sistema de foros de código abierto en Go, GoBB :elrisas:

    +Info:



  • 1

    ¿Dónde lo has aprendido?



  • 2

    Podías haber dejado el típico hello world para verlo :elrisas:

    edit: o mejor aún, un GET a una página y un ejemplo de cómo sería un for, while, if o algo xD



  • 3

    @Xeyetor dijo en Golang mola:

    ¿Dónde lo has aprendido?

    Te refieres a si lo he aprendido en alguna web tipo code academy?? No he usado ninguna web ni nada, simplemente sabía que quería hacer y lo iba haciendo. Buscaba en Google lo que no sabía hacer y como se hacía.

    @Pixel dijo en Golang mola:

    Podías haber dejado el típico hello world para verlo :elrisas:

    edit: o mejor aún, un GET a una página y un ejemplo de cómo sería un for, while, if o algo xD

    Aquí hay un hola mundo y una pequeña guía con las cosas básicas (https://go-tour-es.appspot.com/). Se puede ir editando y ejecutando en la misma web. Vienen ejemplo de bucles y demás.

    Y aquí un ejemplo de como hacer una petición GET

    client := &http.Client{}
    
        req, err := http.NewRequest("GET", "https://exo.do/api/topic/"+ tid +"/?page=1", nil)
        if err != nil{
            fmt.Printf("Error obtaining pages num for topic "+ tid)
            return result
        }
        req.Header.Add("Cookie", COOKIE)
        resp, err := client.Do(req)
        if err != nil{
            fmt.Printf("Error obtaining pages num for topic "+ tid)
            return result
        }
    


  • 4

    @kNN dijo en Golang mola:

    @Xeyetor dijo en Golang mola:

    ¿Dónde lo has aprendido?

    Te refieres a si lo he aprendido en alguna web tipo code academy?? No he usado ninguna web ni nada, simplemente sabía que quería hacer y lo iba haciendo. Buscaba en Google lo que no sabía hacer y como se hacía.

    @Pixel dijo en Golang mola:

    Podías haber dejado el típico hello world para verlo :elrisas:

    edit: o mejor aún, un GET a una página y un ejemplo de cómo sería un for, while, if o algo xD

    Aquí hay un hola mundo y una pequeña guía con las cosas básicas (https://go-tour-es.appspot.com/). Se puede ir editando y ejecutando en la misma web. Vienen ejemplo de bucles y demás.

    Y aquí un ejemplo de como hacer una petición GET

    client := &http.Client{}
    
        req, err := http.NewRequest("GET", "https://exo.do/api/topic/"+ tid +"/?page=1", nil)
        if err != nil{
            fmt.Printf("Error obtaining pages num for topic "+ tid)
            return result
        }
        req.Header.Add("Cookie", COOKIE)
        resp, err := client.Do(req)
        if err != nil{
            fmt.Printf("Error obtaining pages num for topic "+ tid)
            return result
        }
    

    No parece demasiado difícil :elboinas: no es tan tan fácil como python, pero bueno, asequible xD




Has perdido la conexión. Reconectando a Éxodo.