diff --git a/translation/spanish/01-empecemos/instalacion-osx.md b/translation/spanish/01-empecemos/instalacion-osx.md index 3e4e1b3..a22317c 100644 --- a/translation/spanish/01-empecemos/instalacion-osx.md +++ b/translation/spanish/01-empecemos/instalacion-osx.md @@ -47,7 +47,7 @@ export PATH=${HOME}/go/bin:$PATH 4. Una vez acabado abre la **Paleta de Comandos** de nuevo 1. Escribe: `shell` 2. Elige: "Install 'code' command in PATH" - 1. **NOTE:** No tienes que hacer esto si estas en Windows. + 1. **NOTA:** No tienes que hacer esto si estas en Windows. ## Eso es todo! Disfrutad! 🤩 diff --git a/translation/spanish/02-tu-primer-programa/README.md b/translation/spanish/02-tu-primer-programa/README.md new file mode 100644 index 0000000..691c9f1 --- /dev/null +++ b/translation/spanish/02-tu-primer-programa/README.md @@ -0,0 +1,112 @@ +# Escribe Tu Primer Programa Usando Go + +Hola! + +Puedes guardar este documento despues de ver los videos de esta sección en particular. + +Tambien puedes imprimirla y usarlo junto a los videos de esta sección. + +Disfruta! + +--- + +## COMANDOS DE LA CONSOLA DE COMANDOS + +* **WINDOWS:** + +* Entra al siguiente directorio: `cd directoryPath` + + * Muestra los archivos en ese directorio: `dir` + +* **OS X & LINUXes:** + + * Muestra los archivos en ese directorio: `ls` + +## COMPILANDO Y EJECUTANDO PROGRAMAS CON GO: + +* **Compilando Un Programa En Go:** + + * Dentro del directorio del programa, escribe: + * `go build` + +* **Ejecuta Un Programa En Go:** + + * Dentro del directorio del programa, escribe: + * `go run main.go` + +## QUE ES EL $GOPATH? + +* _$GOPATH_ es una variable de entorno que apunta a un directorio donde los archivos descargados por Go y los tuyos propios se encuentran. + + * **En Windows**, Esta en: `%USERPROFILE%\go` + + * **En OS X y en Linux**, Esta en: `~/go` + + * **NOTE:** Nunca introduzcas tu `GOPATH` de forma manual. Siempre se encuentra en el directorio de usuario por defecto. + +* **GOPATH tiene tres directorios:** + + * **src:** Contiene los archivos fuente para tus paquetes o para otros paquetes que descargues. Puedes compilar y ejecutar programas mientras te encuentres en el directorio del programa. + + * **pkg:** Contiene paquetes de archivos compilados. Go usa esto para compilar de forma eficiente. + + * **bin:** Contiene programas compilados y ejecutables. Cuando usas el comando go install en el directorio de un programa, Go creara un archivo ejecutable en el mismo. + + * _Quizas quieraas añadir esto a tu variable de entorno`PATH` si no esta ahi._ + +## DONDE DEBERÍA PONER MIS ARCHIVOS FUENTE? + +* `$GOPATH/src/github.com/yourUsername/programDirectory` + +* **Ejemplo:** + + * Mi nombre en github es: inancgumus + + * Asi que añado todos mis programas bajo: `~/go/src/github.com/inancgumus/` + + * Asi que, digamos que tengo un programa llamado hello, y lo pongo bajo este directorio: `~/go/src/github.com/inancgumus/hello` + +## TU PRIMER PROGRAMA! + +* **Crea Los Directorios:** + * **OS X & Linux (o git bash):** + * Crea un nuevo directorio: + * `mkdir -p ~/go/src/yourname/hello` + * Ves a ese directorio: + * `cd ~/go/src/yourname/hello` + + * **Windows:** + * Crea un nuevo directorio: + * `mkdir c:\Go\src\yourname\hello` + * Ves a ese directorio: + * `cd c:\Go\src\yourname\hello` + +* Crea un nuevo archivo usando `code main.go` Visual Studio Code. +* Añade el siguiente codigo y guardalo. +* Vuelve a la consola de comandos. + * Ejecutalo con este comando: `go run main.go` + +```go +package main + +import "fmt" + +func main() { + fmt.Println("Hi! I want to be a Gopher!") +} +``` + +Eso es todo! Disfruta! + +## NOTA: + +* Hay un nuevo *Go Modules* que te permite ejecutar tus programas en cualquier directorio de tu elección. Es todavia una caracteristica experimental, cuando se estabilize actualizare el curso para incluir los Go Modules. + +> Para mas tutoriales: [https://blog.learngoprogramming.com](https://blog.learngoprogramming.com) +> +> Copyright © 2021 Inanc Gumus +> +> Learn Go Programming Course +> +> [Click aqui para leer la licencia.](https://creativecommons.org/licenses/by-nc-sa/4.0/) + diff --git a/translation/spanish/02-tu-primer-programa/anotaciones-ejemplo-programa-go.md b/translation/spanish/02-tu-primer-programa/anotaciones-ejemplo-programa-go.md new file mode 100644 index 0000000..50288c7 --- /dev/null +++ b/translation/spanish/02-tu-primer-programa/anotaciones-ejemplo-programa-go.md @@ -0,0 +1,61 @@ +# Anotaciones Ejemplo Programa en Go + +```go +// package main es un paquete especial +// le permite a Go crear un archivo ejecutable +package main + +/* +Esto es un comentario multilinea. + +la palabra import hace que otro paquete este disponible + para este "archivo" .go. + +import "fmt" te permite acceder a la funcionaliddad del paquete fmt + en este archivo. +*/ +import "fmt" + +// "func main" es especial. +// +// Go tiene que saber por donde empezar +// +// func main crea un punto de inicio para Go +// +// Despues de compilar el codigo, +// Go ejecutara esta funcion primero. +func main() { + // despues del: import "fmt" + // La funcion Println del paquete "fmt" estara disponible + + // Lee sobre ella escribiendo los siguiente en la consola: + // go doc -src fmt Println + + // Println es simplemente una funcion exportada de: + // "fmt" package + + // Exportada = Primera letra en mayuscula + fmt.Println("Hello Gopher!") + + // Go no puede llamar a la funcion Println por si mismo. + // Por eso la tienes que llamar aqui. + // Solo llama a la `func main` de forma automatica. + + // ----- + + // Go soporta caracteres unicode en cadenas de texto literal + // y tambien en el codigo fuente: KÖSTEBEK! + // + // Porque: Literal ~= Codigo Fuente +} +``` + +
+ +> Para mas tutoriales: [https://blog.learngoprogramming.com](https://blog.learngoprogramming.com) +> +> Copyright © 2021 Inanc Gumus +> +> Learn Go Programming Course +> +> [Click aqui para leer la licencia.](https://creativecommons.org/licenses/by-nc-sa/4.0/) \ No newline at end of file diff --git a/translation/spanish/02-tu-primer-programa/ejercicios/01-imprimiendo-nombres/main.go b/translation/spanish/02-tu-primer-programa/ejercicios/01-imprimiendo-nombres/main.go new file mode 100644 index 0000000..3b49147 --- /dev/null +++ b/translation/spanish/02-tu-primer-programa/ejercicios/01-imprimiendo-nombres/main.go @@ -0,0 +1,29 @@ +// Copyright © 2021 Inanc Gumus +// Learn Go Programming Course +// Licencia: https://creativecommons.org/licenses/by-nc-sa/4.0/ +// +// Para mas tutoriales : https://learngoprogramming.com +// Clases particulares : https://www.linkedin.com/in/inancgumus/ +// Sigueme en Twitter : https://twitter.com/inancgumus + +package main + +// --------------------------------------------------------- +// EJERCICIO: Imprimir nombres +// +// Imprime tu nombre y el de tu mejor amigo usando +// Println dos veces +// +// RESULTADO ESPERADO +// TuNombre +// ElNombreDeTuMejorAmigo +// +// BONUS +// Usa `go run` primero. +// Y despues de eso usa `go build` y ejecuta tu programa. +// --------------------------------------------------------- + +func main() { + // ? + // ? +} diff --git a/translation/spanish/02-tu-primer-programa/ejercicios/01-imprimiendo-nombres/solucion/main.go b/translation/spanish/02-tu-primer-programa/ejercicios/01-imprimiendo-nombres/solucion/main.go new file mode 100644 index 0000000..ff04b8b --- /dev/null +++ b/translation/spanish/02-tu-primer-programa/ejercicios/01-imprimiendo-nombres/solucion/main.go @@ -0,0 +1,21 @@ +// Copyright © 2021 Inanc Gumus +// Learn Go Programming Course +// Licencia: https://creativecommons.org/licenses/by-nc-sa/4.0/ +// +// Para mas tutoriales : https://learngoprogramming.com +// Clases particulares : https://www.linkedin.com/in/inancgumus/ +// Sigueme en Twitter : https://twitter.com/inancgumus + +package main + +import "fmt" + +// go run main.go + +// go build +// ./solution + +func main() { + fmt.Println("Nikola") + fmt.Println("Thomas") +} diff --git a/translation/spanish/02-tu-primer-programa/ejercicios/02-imprimiendo-gopath/ejercicio.md b/translation/spanish/02-tu-primer-programa/ejercicios/02-imprimiendo-gopath/ejercicio.md new file mode 100644 index 0000000..309559f --- /dev/null +++ b/translation/spanish/02-tu-primer-programa/ejercicios/02-imprimiendo-gopath/ejercicio.md @@ -0,0 +1,7 @@ +* **Ejercicio: Imprime tu GOPATH** + +Imprime tu GOPATH usando la herramienta `go env` + +* **RESULTADO ESPERADO:** + +La ruta fisica de la carpeta que hace referencia al `$GOPATH` \ No newline at end of file diff --git a/translation/spanish/02-tu-primer-programa/ejercicios/02-imprimiendo-gopath/solucion/solucion.md b/translation/spanish/02-tu-primer-programa/ejercicios/02-imprimiendo-gopath/solucion/solucion.md new file mode 100644 index 0000000..17e5daf --- /dev/null +++ b/translation/spanish/02-tu-primer-programa/ejercicios/02-imprimiendo-gopath/solucion/solucion.md @@ -0,0 +1,5 @@ +* **Debes de escribir esto en tu consola de comandos:** + +```bash +go env GOPATH +``` \ No newline at end of file diff --git a/translation/spanish/02-tu-primer-programa/ejercicios/README.md b/translation/spanish/02-tu-primer-programa/ejercicios/README.md new file mode 100644 index 0000000..c87accd --- /dev/null +++ b/translation/spanish/02-tu-primer-programa/ejercicios/README.md @@ -0,0 +1,54 @@ +1. **Imprime tu nombre y el nombre de tu mejor amigo** usando Println dos veces. [Echale un vistazo a este ejercicio](https://github.com/inancgumus/learngo/tree/master/translation/spanish/02-tu-primer-programa/ejericios/01-imprimir-nombres). + +2. **Imprime tu GOPATH** usando la herramienta `go env` [Echale un vistazo a este ejercicio](https://github.com/inancgumus/learngo/tree/master/translation/spanish/02-tu-primer-programa/ejercicios/02-imprimir-gopath). + +3. **Saludate a ti mismo.** + + 1. Complila tu programa usando `go build` + + 2. **Enviaselo a tu amigo** + + Deberia tener el mismo sistema operativo. + + Por ejemplo si estas usando Windows enviaselo a un amigo que tambien tenga Windows. + + 3. **Enviaselo a un amigo con un sistema operativo diferente** + + Deberias compilar el programa especificamente para su sistema operativo. + + **Crea un ejecutable para OS X:** + `GOOS=darwin GOARCH=386 go build` + + **Crea un ejecutable para Windows:** + `GOOS=windows GOARCH=386 go build` + + **Crea un ejecutable para Linux:** + `GOOS=linux GOARCH=arm GOARM=7 go build` + + **Puedes encontrar una lista completa aqui:** + https://golang.org/doc/install/source#environment + + **NOTA:** Si estas usando la consola de comandos o PowerShell, quizas necesites usarlo de la siguiente forma: + `cmd /c "set GOOS=darwin GOARCH=386 && go build"` + +4. **Llama a [Print](https://golang.org/pkg/fmt/#Print) en vez de a [Println](https://golang.org/pkg/fmt/#Println)** y observa que pasa. + +5. **Llama a [Println](https://golang.org/pkg/fmt/#Println) o a [Print](https://golang.org/pkg/fmt/#Print) con multiples valores** separados por comas. + +6. **Elimina las comillas dobles de una cadena de texto literal** y observa que pasa. + +7. **Mueve tanto package como import** al final del archivo y observa que pasa. + +8. **[Lee la documentación en linea](https://golang.org/pkg)**. + + 1. Echale un vistazo a que son los packages y que es lo que hacen. + + 2. Mira su codigo fuente dandole click a su titulo. + + 3. No tienes porque entenderlo todo, simplemente hazlo. Esto te dara un empujon de cara a las siguientes clases. + +9. Tambien, puedes tomar **un tour con Go**: https://tour.golang.org/ + + 1. Echale un vistazo rapido. Mira las caracteristicas del lenguaje. + + 2. Hablaremos de ellas proximamente. diff --git a/translation/spanish/02-tu-primer-programa/main.go b/translation/spanish/02-tu-primer-programa/main.go new file mode 100644 index 0000000..4beee07 --- /dev/null +++ b/translation/spanish/02-tu-primer-programa/main.go @@ -0,0 +1,55 @@ +// Copyright © 2021 Inanc Gumus +// Learn Go Programming Course +// Licencia: https://creativecommons.org/licenses/by-nc-sa/4.0/ +// +// Para mas tutoriales: https://learngoprogramming.com +// Clases particulares: https://www.linkedin.com/in/inancgumus/ +// Sigueme en twitter: https://twitter.com/inancgumus + +// package main es un paquete especial +// le permite a Go crear un archivo ejecutable +package main + +/* +Esto es un comentario multilinea. + +la palabra import hace que otro paquete este disponible + para este "archivo" .go. + +import "fmt" te permite acceder a la funcionaliddad del paquete fmt + en este archivo. +*/ +import "fmt" + +// "func main" es especial. +// +// Go tiene que saber por donde empezar +// +// func main crea un punto de inicio para Go +// +// Despues de compilar el codigo, +// Go ejecutara esta funcion primero. +func main() { + // despues del: import "fmt" + // La funcion Println del paquete "fmt" estara disponible + + // Lee sobre ella escribiendo los siguiente en la consola: + // go doc -src fmt Println + + // Println es simplemente una funcion exportada de: + // "fmt" package + + // Exportada = Primera letra en mayuscula + fmt.Println("Hello Gopher!") + + // Go no puede llamar a la funcion Println por si mismo. + // Por eso la tienes que llamar aqui. + // Solo llama a la `func main` de forma automatica. + + // ----- + + // Go soporta caracteres unicode en cadenas de texto literal + // y tambien en el codigo fuente: KÖSTEBEK! + // + // Porque: Literal ~= Codigo Fuente +} diff --git a/translation/spanish/README.md b/translation/spanish/README.md index 7c1cc97..e740eba 100644 --- a/translation/spanish/README.md +++ b/translation/spanish/README.md @@ -9,13 +9,17 @@ Compartir es gratis pero cuidar no tiene precio [Asi, que porfavor haz click aqu ## Mantente en contacto * **[Sigueme en Twitter](https://twitter.com/inancgumus)** + _Usualmente twiteo trucos y consejos sobre Go._ + [](https://twitter.com/inancgumus) * **[Suscribete a mi Newsletter](https://eepurl.com/c4DMNX)** + _Recibe actualizaciones de mi parte._ * **[Lee mi Blog](https://blog.learngoprogramming.com)** + _Seguido por mas de 5mil desarrolladores y con decenas de articulos ilustrados sobre Go._ * **[Mira mi canal de Youtube](https://www.youtube.com/channel/UCYxepZhtnFIVRh8t5H_QAdg?view_as=subscriber)**