Aún no tienes acceso a esta clase

Crea una cuenta y continúa viendo este curso

Implementando nuestro primer módulo en Go

41/42
Recursos

Aportes 9

Preguntas 2

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

Excelente curso, todo se hizo con los módulos nativos del lenguaje. En algunos recursos en Internet se apoyan en módulos de terceros para agilizar la construcción de un API, pero está bien saber usar las herramientas nativas de Golang.

Si están trabajando con Go en una empresa, puede que su proyecto tenga dependencias privadas de la misma organización.

Para poder acceder a esos módulos privados tendrán que agregar una variable de entorno a su entorno local, de esa forma go clonará los proyectos utilizando git, en vez de fallar cuando intenta buscarlos a través del proxy de módulos de Go.

  1. Agregar la variable de entorno:
export GOPRIVATE="github.com/[el usuario dueño del módulo]"

# Si usas Go 1.13+ podés ejecutar:
go env -w GOPRIVATE="github.com/[el usuario dueño del módulo]"

Una vez que setees GOPRIVATE, Go va a usar git para clonar los repositorios que coincidan con la variable de entorno. Por defecto, Go clona módulos usando http pero para poder autenticarte con Github y poder clonar repositorios privados vas a necesitar ssh. Para forzar a git a usar ssh en Github, necesitas agregar lo siguiente en tu ~/.gitconfig:

[url "ssh://[email protected]/"]
    insteadOf = https://github.com/

Y voilá! Ya podés sincronizar las dependencias privadas de tu proyecto!

Me sorprende todo lo que puedo hacer con modulos de Go, excelente curso

Aquí les dejo mi implementación de mi módulo => github.com/axelsomerseth/mycalculator v1.0.3

package main

import (
	"fmt"

	"github.com/axelsomerseth/mycalculator"
)

func main() {
	entrada := mycalculator.ReadInput()
	operador := mycalculator.ReadInput()
	c := mycalculator.Calculator{Input: entrada, Operation: operador}
	result := c.Operate()
	fmt.Println("El resultado es: ")
	fmt.Println(result)
}

El resultado:

*Advierto que instancié las propiedas del struct poniéndolas públicas y no sé si es buena práctica o no.

En mi caso “mycalculator” el editor lo tomó como un undefined por tanto lanzó un error.
Para corregirlo utilicé un alias en el llamado del package:
import (
“fmt”

mycalculator "github.com/criscamih/mycalculator"

)

No me funciono, nada,
no entiendo que pasa

Listo 😃

Néstor, a mi no se me autocompleta la función “mycalculator.Leerentrada()”, no me aparece la opción. Hice los pasos como nos mostraste y requerí el repositorio con la v1.0.1 en mi github personal. ¿Cuál puede ser el problema? (Trabajo con la versión 1.14 de Go).

Excelente es lo que me estaba faltan para compartir mis implementaciones de ML!!!