go

¿Cuál es la mejor manera de probar una cadena vacía en Go?

¿Qué método es el mejor (más idomatic) para probar cadenas no vacías (en Go)? if len(mystring) > 0 { } O: if mystring != "" { } O algo más?

¿cuáles deberían ser los valores de GOPATH y GOROOT?

Estoy tratando de instalar doozer así $ goinstall github.com/ha/doozer Recibo estos errores. goinstall: os: go/build: pa ... : log: go/build: package could not be found locally goinstall: encoding/binary: go/build: package could not be found locally

¿Por qué haría () o new ()?

Los documentos de introducción dedican muchos párrafos a explicar la diferencia entre new() y make(), pero en la práctica, puede crear objetos dentro del ámbito local y devolverlos. ¿Por qué usarías el (francamente tonto) par de asignadores?

Cómo definir varias etiquetas de nombre en una estructura

Necesito obtener un elemento de una base de datos mongo, así que definí una estructura como esta type Page struct { Page ... `bson:"meta",json:"pageId"` } Entonces, ¿cómo se puede hacer esto, definir múltiples etiquetas de nombre en una estructura?

¿Está bien dejar un canal abierto?

¿Está bien dejar un canal Go abierto para siempre (nunca cerrar el canal) si nunca compruebo su estado? ¿Provocará pérdidas ... Response { reply := make(chan Response) requestCh <- Request{data: data, replyCh: reply} return <-reply }

¿Hay alguna manera de hacer tareas repetitivas a intervalos en Golang?

¿Hay alguna manera de hacer tareas repetitivas en segundo plano en Go? Estoy pensando en algo como Timer.schedule(task, del ... e.AfterFunc(time.Duration(5) * time.Second, f) defer t.Stop() //simulate doing stuff time.Sleep(time.Minute) }

Cómo utilizar paquetes personalizados en golang?

Estoy tratando de crear y usar un paquete personalizado en Go. Probablemente sea algo muy obvio, pero no puedo encontrar much ... ero, pero no parece estar haciendo nada (sin archivo generado, sin mensaje de error). ¿Alguna idea de cómo podría hacer esto?

Eliminar campos de la estructura u ocultarlos en la respuesta JSON

He creado una API en Go que, al ser llamada, realiza una consulta, crea una instancia de una estructura y luego codifica esa ... lts Luego codifico y emito la respuesta de la siguiente manera: err := json.NewEncoder(c.ResponseWriter).Encode(&msg)

En Go, ¿una sentencia break se rompe de un switch / select?

Sé que switch/select las sentencias se rompen automáticamente después de cada caso. Me pregunto, en el siguiente código: for ... break default: dosomethingelse() } } ¿La instrucción break sale del bucle for o solo del bloque switch?

Golang ¿cómo importar paquetes locales sin gopath?

He usado GOPATH pero para este problema actual que estoy enfrentando no ayuda. Quiero poder crear paquetes que sean específic ... ara proyectos a gran escala; no quiero tener que hacer referencia a varios otros paquetes o mantenerlos en un archivo grande.

¿Cómo puedo "ir a ejecutar" un proyecto con varios archivos en el paquete principal?

Actualmente tengo un único archivo en mi paquete principal llamado main.go. Cómo divido el contenido de main.go en varios arc ... ackage main func main() { Bar() } Pero go run main.go me da: # command-line-arguments ./main.go:4:2: undefined: Bar

¿Cuál es una forma sensata de diseñar un proyecto Go

Tengo un proyecto go que está empezando a volverse más complejo, y quiero diseñar el sistema de archivos de tal manera que reduzca el dolor. Hay algunos buenos ejemplos de lo que tiene sentido?

Lista directorio en Go

He estado tratando de averiguar cómo simplemente enumerar los archivos y carpetas en un solo directorio en Go. He encontrado ... e que esta funcionalidad existe, pero ha sido muy difícil de encontrar. Avísame si alguien sabe dónde debo buscar. Gracias.

Cómo usar C++ en Go?

En el nuevo lenguaje Go, ¿cómo llamo al código C++? En otras palabras, ¿cómo puedo empaquetar mis clases de C++ y usarlas en Go?

Configuración de la aplicación web de producción de Golang

Para aquellos de ustedes que ejecutan backends en producción: ¿Cuál es su pila / configuración para ejecutar una aplicación ... próximo proyecto y quiero asegurarme de que Go sea viable para lanzar el proyecto en vivo antes de invertir demasiado en él.

Cómo importar y utilizar diferentes paquetes del mismo nombre en el idioma?

Por ejemplo, quiero usar texto/plantilla y html/plantilla en un archivo fuente. Pero el siguiente código arroja errores. imp ... efine "T"}}Hello, {{.}}!{{end}}`) t_text, err := text.template.New("foo").Parse(`{{define "T"}}Hello, {{.}}!{{end}}`) }

¿Cuál es el cero para string?

func NewKey(c appengine.Context, kind, stringID string, intID int64, parent *Key) *Key La documentación dice: NewKey c ... ¿Qué es el cero para cadena? Intenté 0 y nil, y obtuve errores como: cannot use nil as type string in function argument

no se pueden convertir datos (type interfaz {}) a tipo string: necesita tipo aserción

Soy bastante nuevo y estaba jugando con este paquete notify. Al principio tenía un código que se veía así: func doit(w htt ... res de compilador se han ido así que supongo que es bastante bueno? ¿Es esto eficiente? ¿Debería hacerlo de manera diferente?

Cómo evitar el molesto error " declarado y no utilizado"

Estoy aprendiendo Go pero siento que es un poco molesto que al compilar, no deje ninguna variable o paquete sin usar. Esto ... robar. Siempre recibo el error y necesito comentar todos esos usos. ¿Hay alguna manera de evitar este tipo de check in Go?

¿Se pueden pasar funciones como parámetros en Go?

En Java puedo hacer algo como derp(new Runnable { public void run () { /* run this sometime later */ } }) y "ejecutar" el cód ... ima), pero se puede hacer. ¿Go tiene algo que pueda facilitar que una función/devolución de llamada se pase como parámetro?