add: spanish 02-write-your-first-program (#72)
* fix: typo on 01-empecemos/instalacion-osx.md * update: better formatting inside the README.md * add: spanish translation for 02-write-your-first-program
This commit is contained in:
@ -47,7 +47,7 @@ export PATH=${HOME}/go/bin:$PATH
|
|||||||
4. Una vez acabado abre la **Paleta de Comandos** de nuevo
|
4. Una vez acabado abre la **Paleta de Comandos** de nuevo
|
||||||
1. Escribe: `shell`
|
1. Escribe: `shell`
|
||||||
2. Elige: "Install 'code' command in PATH"
|
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! 🤩
|
## Eso es todo! Disfrutad! 🤩
|
||||||
|
|
||||||
|
112
translation/spanish/02-tu-primer-programa/README.md
Normal file
112
translation/spanish/02-tu-primer-programa/README.md
Normal file
@ -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/)
|
||||||
|
|
@ -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
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
<div style="page-break-after: always;"></div>
|
||||||
|
|
||||||
|
> 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/)
|
@ -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() {
|
||||||
|
// ?
|
||||||
|
// ?
|
||||||
|
}
|
@ -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")
|
||||||
|
}
|
@ -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`
|
@ -0,0 +1,5 @@
|
|||||||
|
* **Debes de escribir esto en tu consola de comandos:**
|
||||||
|
|
||||||
|
```bash
|
||||||
|
go env GOPATH
|
||||||
|
```
|
@ -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.
|
55
translation/spanish/02-tu-primer-programa/main.go
Normal file
55
translation/spanish/02-tu-primer-programa/main.go
Normal file
@ -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
|
||||||
|
}
|
@ -9,13 +9,17 @@ Compartir es gratis pero cuidar no tiene precio [Asi, que porfavor haz click aqu
|
|||||||
## Mantente en contacto
|
## Mantente en contacto
|
||||||
|
|
||||||
* **[Sigueme en Twitter](https://twitter.com/inancgumus)**
|
* **[Sigueme en Twitter](https://twitter.com/inancgumus)**
|
||||||
|
|
||||||
_Usualmente twiteo trucos y consejos sobre Go._
|
_Usualmente twiteo trucos y consejos sobre Go._
|
||||||
|
|
||||||
[](https://twitter.com/inancgumus)
|
[](https://twitter.com/inancgumus)
|
||||||
|
|
||||||
* **[Suscribete a mi Newsletter](https://eepurl.com/c4DMNX)**
|
* **[Suscribete a mi Newsletter](https://eepurl.com/c4DMNX)**
|
||||||
|
|
||||||
_Recibe actualizaciones de mi parte._
|
_Recibe actualizaciones de mi parte._
|
||||||
|
|
||||||
* **[Lee mi Blog](https://blog.learngoprogramming.com)**
|
* **[Lee mi Blog](https://blog.learngoprogramming.com)**
|
||||||
|
|
||||||
_Seguido por mas de 5mil desarrolladores y con decenas de articulos ilustrados sobre Go._
|
_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)**
|
* **[Mira mi canal de Youtube](https://www.youtube.com/channel/UCYxepZhtnFIVRh8t5H_QAdg?view_as=subscriber)**
|
||||||
|
Reference in New Issue
Block a user