mirror of
https://github.com/adambard/learnxinyminutes-docs.git
synced 2024-12-23 17:41:41 +00:00
[go/es] Add Go Mobile mention and fix whitespace inconsistencies (#4411)
This commit is contained in:
parent
6754700132
commit
ef6f8dd275
@ -41,11 +41,11 @@ package main
|
|||||||
// La instrucción `import` declara los paquetes de bibliotecas referidos
|
// La instrucción `import` declara los paquetes de bibliotecas referidos
|
||||||
// en este fichero.
|
// en este fichero.
|
||||||
import (
|
import (
|
||||||
"fmt" // Un paquete en la biblioteca estándar de Go.
|
"fmt" // Un paquete en la biblioteca estándar de Go.
|
||||||
"io/ioutil" // Implementa algunas útiles funciones de E/S.
|
"io/ioutil" // Implementa algunas útiles funciones de E/S.
|
||||||
m "math" // Biblioteca de matemáticas con alias local m.
|
m "math" // Biblioteca de matemáticas con alias local m.
|
||||||
"net/http" // Sí, ¡un servidor web!
|
"net/http" // Sí, ¡un servidor web!
|
||||||
"strconv" // Conversiones de cadenas.
|
"strconv" // Conversiones de cadenas.
|
||||||
)
|
)
|
||||||
|
|
||||||
// Definición de una función. `main` es especial. Es el punto de entrada
|
// Definición de una función. `main` es especial. Es el punto de entrada
|
||||||
@ -63,7 +63,7 @@ func main() {
|
|||||||
// Si no hay parámetros, los paréntesis siguen siendo obligatorios.
|
// Si no hay parámetros, los paréntesis siguen siendo obligatorios.
|
||||||
func másAlláDelHola() {
|
func másAlláDelHola() {
|
||||||
var x int // Declaración de una variable.
|
var x int // Declaración de una variable.
|
||||||
// Las variables se deben declarar antes de utilizarlas.
|
// Las variables se deben declarar antes de utilizarlas.
|
||||||
x = 3 // Asignación de variable.
|
x = 3 // Asignación de variable.
|
||||||
// Declaración "corta" con := para inferir el tipo, declarar y asignar.
|
// Declaración "corta" con := para inferir el tipo, declarar y asignar.
|
||||||
y := 4
|
y := 4
|
||||||
@ -76,7 +76,7 @@ func másAlláDelHola() {
|
|||||||
// Las funciones pueden tener parámetros y (¡múltiples!) valores de
|
// Las funciones pueden tener parámetros y (¡múltiples!) valores de
|
||||||
// retorno.
|
// retorno.
|
||||||
func aprendeMúltiple(x, y int) (suma, producto int) {
|
func aprendeMúltiple(x, y int) (suma, producto int) {
|
||||||
return x + y, x * y // Devuelve dos valores.
|
return x + y, x * y // Devuelve dos valores.
|
||||||
}
|
}
|
||||||
|
|
||||||
// Algunos tipos incorporados y literales.
|
// Algunos tipos incorporados y literales.
|
||||||
@ -113,7 +113,7 @@ saltos de línea.` // mismo tipo cadena
|
|||||||
// Para añadir elementos a un sector, se utiliza la función incorporada
|
// Para añadir elementos a un sector, se utiliza la función incorporada
|
||||||
// append().
|
// append().
|
||||||
// El primer argumento es el sector al que se está anexando. Comúnmente,
|
// El primer argumento es el sector al que se está anexando. Comúnmente,
|
||||||
// la variable del arreglo se actualiza en su lugar, como en el
|
// la variable del arreglo se actualiza en su lugar, como en el
|
||||||
// siguiente ejemplo.
|
// siguiente ejemplo.
|
||||||
sec := []int{1, 2 , 3} // El resultado es un sector de longitud 3.
|
sec := []int{1, 2 , 3} // El resultado es un sector de longitud 3.
|
||||||
sec = append(sec, 4, 5, 6) // Añade 3 elementos. El sector ahora tiene una
|
sec = append(sec, 4, 5, 6) // Añade 3 elementos. El sector ahora tiene una
|
||||||
@ -222,7 +222,7 @@ func aprendeControlDeFlujo() {
|
|||||||
// primero, luego comprobar y > x.
|
// primero, luego comprobar y > x.
|
||||||
if y := cálculoCaro(); y > x {
|
if y := cálculoCaro(); y > x {
|
||||||
x = y
|
x = y
|
||||||
}
|
}
|
||||||
// Las funciones literales son "cierres".
|
// Las funciones literales son "cierres".
|
||||||
granX := func() bool {
|
granX := func() bool {
|
||||||
return x > 100 // Referencia a x declarada encima de la instrucción
|
return x > 100 // Referencia a x declarada encima de la instrucción
|
||||||
@ -398,7 +398,7 @@ func aprendeConcurrencia() {
|
|||||||
|
|
||||||
// Una simple función del paquete http inicia un servidor web.
|
// Una simple función del paquete http inicia un servidor web.
|
||||||
func aprendeProgramaciónWeb() {
|
func aprendeProgramaciónWeb() {
|
||||||
// El primer parámetro es la direccinón TCP a la que escuchar.
|
// El primer parámetro es la direccinón TCP a la que escuchar.
|
||||||
// El segundo parámetro es una interfaz, concretamente http.Handler.
|
// El segundo parámetro es una interfaz, concretamente http.Handler.
|
||||||
go func() {
|
go func() {
|
||||||
err := http.ListenAndServe(":8080", par{})
|
err := http.ListenAndServe(":8080", par{})
|
||||||
@ -427,24 +427,31 @@ func consultaAlServidor() {
|
|||||||
La raíz de todas las cosas sobre Go es el
|
La raíz de todas las cosas sobre Go es el
|
||||||
[sitio web oficial de Go](https://go.dev/).
|
[sitio web oficial de Go](https://go.dev/).
|
||||||
Allí puedes seguir el tutorial, jugar interactivamente y leer mucho más.
|
Allí puedes seguir el tutorial, jugar interactivamente y leer mucho más.
|
||||||
|
Aparte del recorrido, [la documentación](https://golang.org/doc/) tiene
|
||||||
|
información sobre cómo escribir código efectivo y limpio en Go, documentación de
|
||||||
|
paquetes y comandos, y el historial de versiones.
|
||||||
|
|
||||||
La definición del lenguaje es altamente recomendada. Es fácil de leer y
|
La [definición del lenguaje](https://golang.org/ref/spec) es altamente recomendada.
|
||||||
sorprendentemente corta (como la definición del lenguaje Go en estos
|
Es fácil de leer y sorprendentemente corta
|
||||||
días).
|
(relativo a las definiciones de lenguajes en estos días).
|
||||||
|
|
||||||
Puedes jugar con el código en el
|
Puedes jugar con el código en el
|
||||||
[parque de diversiones Go](https://go.dev/play/p/ncRC2Zevag). ¡Trata
|
[parque de diversiones Go](https://go.dev/play/p/ncRC2Zevag). ¡Trata
|
||||||
de cambiarlo y ejecutarlo desde tu navegador! Ten en cuenta que puedes
|
de cambiarlo y ejecutarlo desde tu navegador! Ten en cuenta que puedes
|
||||||
utilizar [https://go.dev/play/]( https://go.dev/play/) como un
|
utilizar [https://go.dev/play/](https://go.dev/play/) como un
|
||||||
[REPL](https://en.wikipedia.org/wiki/Read-eval-print_loop) para probar
|
[REPL](https://es.wikipedia.org/wiki/REPL) para probar
|
||||||
cosas y el código en el navegador, sin ni siquiera instalar Go.
|
cosas y el código en el navegador, sin tener que instalar Go.
|
||||||
|
|
||||||
En la lista de lecturas para estudiantes de Go está el
|
En la lista de lecturas para estudiantes de Go está el
|
||||||
[código fuente de la biblioteca estándar](https://go.dev/src/).
|
[código fuente de la biblioteca estándar](https://go.dev/src/).
|
||||||
Ampliamente documentado, que demuestra lo mejor del legible y comprensible
|
Ampliamente documentado, demuestra lo mejor del legible y comprensible
|
||||||
Go, con su característico estilo y modismos. ¡O puedes hacer clic en un
|
Go, con su característico estilo y modismos. ¡O puedes hacer clic en un
|
||||||
nombre de función en [la documentación](https://go.dev/pkg/) y
|
nombre de función en [la documentación](https://pkg.go.dev/std) y
|
||||||
aparecerá el código fuente!
|
aparecerá el código fuente!
|
||||||
|
|
||||||
Otro gran recurso para aprender Go está en
|
Go Mobile provee soporte para plataformas móbiles (Android y iOS).
|
||||||
[Go con ejemplos](http://goconejemplos.com/).
|
Puedes escribir aplicaciones móbiles completamente en Go
|
||||||
|
o escribir una biblioteca con bindings de un paquete de Go,
|
||||||
|
que pueden invocarse en Java (en Android) y Objective-C (en iOS).
|
||||||
|
Visita la [página de Go Mobile](https://go.dev/wiki/Mobile)
|
||||||
|
para más información.
|
||||||
|
Loading…
Reference in New Issue
Block a user