CursosEmpresasBlogLiveConfPrecios

Declaración de variables y constantes

Clase 8 de 34 • Curso de Programación en Go 2016

Clase anteriorSiguiente clase

Contenido del curso

Introducción

  • 1
    Introducción a Go

    Introducción a Go

    05:24 min
  • 2
    Instalación de Go: Instalación de Go en Ubuntu

    Instalación de Go: Instalación de Go en Ubuntu

    04:39 min
  • 3
    Instalación de Go: Instalación de Go en Mac

    Instalación de Go: Instalación de Go en Mac

    01:53 min
  • 4
    Instalación de Go: Instalación de Go en Windows

    Instalación de Go: Instalación de Go en Windows

    02:24 min

Primeros pasos

  • 5
    Organizando el entorno de trabajo

    Organizando el entorno de trabajo

    04:01 min
  • 6
    Hola mundo

    Hola mundo

    05:27 min
  • 7
    Recibir valores del usuario

    Recibir valores del usuario

    05:46 min
  • 8
    Declaración de variables y constantes

    Declaración de variables y constantes

    Viendo ahora
  • 9
    Funciones

    Funciones

    07:47 min
  • 10
    Tipos de datos numéricos en Go: enteros, flotantes

    Tipos de datos numéricos en Go: enteros, flotantes

    08:39 min
  • 11
    Cadenas de texto básico

    Cadenas de texto básico

    06:27 min
  • 12
    Array y Slice

    Array y Slice

    07:45 min
  • 13
    Condicionales

    Condicionales

    05:43 min
  • 14
    For, break

    For, break

    06:20 min

Intermedio

  • 15
    Operaciones con cadenas

    Operaciones con cadenas

    08:17 min
  • 16
    Uso de la instrucción: Switch

    Uso de la instrucción: Switch

    05:03 min
  • 17
    Manejo de Paquetes

    Manejo de Paquetes

    15:54 min
  • 18
    Map

    Map

    10:19 min
  • 19
    Structs

    Structs

    06:46 min
  • 20
    Methods

    Methods

    03:09 min
  • 21
    Interfaces

    Interfaces

    10:04 min
  • 22
    defer

    defer

    02:49 min
  • 23
    Errores

    Errores

    12:09 min

Avanzados

  • 24
    Punteros

    Punteros

    08:28 min
  • 25
    Goroutines

    Goroutines

    06:06 min
  • 26
    Canales

    Canales

    14:47 min
  • 27
    Ejemplos de Canales

    Ejemplos de Canales

    11:52 min
  • 28
    Bibliotecas de Go

    Bibliotecas de Go

    11:48 min
  • 29
    Consumiendo una API externa

    Consumiendo una API externa

    12:21 min
  • 30
    Errores comunes en Go

    Errores comunes en Go

    05:03 min
  • 31
    Cierre del curso

    Cierre del curso

    01:33 min

Contenido Bonus

  • 32
    Cambiar el string

    Cambiar el string

    00:23 min
  • 33
    Struct para calcular

    Struct para calcular

    00:21 min
  • 34
    Leer un archivo del disco

    Leer un archivo del disco

    00:26 min
Tomar examen

Escuelas

  • Desarrollo Web
    • Fundamentos del Desarrollo Web Profesional
    • Diseño y Desarrollo Frontend
    • Desarrollo Frontend con JavaScript
    • Desarrollo Frontend con Vue.js
    • Desarrollo Frontend con Angular
    • Desarrollo Frontend con React.js
    • Desarrollo Backend con Node.js
    • Desarrollo Backend con Python
    • Desarrollo Backend con Java
    • Desarrollo Backend con PHP
    • Desarrollo Backend con Ruby
    • Bases de Datos para Web
    • Seguridad Web & API
    • Testing Automatizado y QA para Web
    • Arquitecturas Web Modernas y Escalabilidad
    • DevOps y Cloud para Desarrolladores Web
  • English Academy
    • Inglés Básico A1
    • Inglés Básico A2
    • Inglés Intermedio B1
    • Inglés Intermedio Alto B2
    • Inglés Avanzado C1
    • Inglés para Propósitos Específicos
    • Inglés de Negocios
  • Marketing Digital
    • Fundamentos de Marketing Digital
    • Marketing de Contenidos y Redacción Persuasiva
    • SEO y Posicionamiento Web
    • Social Media Marketing y Community Management
    • Publicidad Digital y Paid Media
    • Analítica Digital y Optimización (CRO)
    • Estrategia de Marketing y Growth
    • Marketing de Marca y Comunicación Estratégica
    • Marketing para E-commerce
    • Marketing B2B
    • Inteligencia Artificial Aplicada al Marketing
    • Automatización del Marketing
    • Marca Personal y Marketing Freelance
    • Ventas y Experiencia del Cliente
    • Creación de Contenido para Redes Sociales
  • Inteligencia Artificial y Data Science
    • Fundamentos de Data Science y AI
    • Análisis y Visualización de Datos
    • Machine Learning y Deep Learning
    • Data Engineer
    • Inteligencia Artificial para la Productividad
    • Desarrollo de Aplicaciones con IA
    • AI Software Engineer
  • Ciberseguridad
    • Fundamentos de Ciberseguridad
    • Hacking Ético y Pentesting (Red Team)
    • Análisis de Malware e Ingeniería Forense
    • Seguridad Defensiva y Cumplimiento (Blue Team)
    • Ciberseguridad Estratégica
  • Liderazgo y Habilidades Blandas
    • Fundamentos de Habilidades Profesionales
    • Liderazgo y Gestión de Equipos
    • Comunicación Avanzada y Oratoria
    • Negociación y Resolución de Conflictos
    • Inteligencia Emocional y Autogestión
    • Productividad y Herramientas Digitales
    • Gestión de Proyectos y Metodologías Ágiles
    • Desarrollo de Carrera y Marca Personal
    • Diversidad, Inclusión y Entorno Laboral Saludable
    • Filosofía y Estrategia para Líderes
  • Diseño de Producto y UX
    • Fundamentos de Diseño UX/UI
    • Investigación de Usuarios (UX Research)
    • Arquitectura de Información y Usabilidad
    • Diseño de Interfaces y Prototipado (UI Design)
    • Sistemas de Diseño y DesignOps
    • Redacción UX (UX Writing)
    • Creatividad e Innovación en Diseño
    • Diseño Accesible e Inclusivo
    • Diseño Asistido por Inteligencia Artificial
    • Gestión de Producto y Liderazgo en Diseño
    • Diseño de Interacciones Emergentes (VUI/VR)
    • Desarrollo Web para Diseñadores
    • Diseño y Prototipado No-Code
  • Contenido Audiovisual
    • Fundamentos de Producción Audiovisual
    • Producción de Video para Plataformas Digitales
    • Producción de Audio y Podcast
    • Fotografía y Diseño Gráfico para Contenido Digital
    • Motion Graphics y Animación
    • Contenido Interactivo y Realidad Aumentada
    • Estrategia, Marketing y Monetización de Contenidos
  • Desarrollo Móvil
    • Fundamentos de Desarrollo Móvil
    • Desarrollo Nativo Android con Kotlin
    • Desarrollo Nativo iOS con Swift
    • Desarrollo Multiplataforma con React Native
    • Desarrollo Multiplataforma con Flutter
    • Arquitectura y Patrones de Diseño Móvil
    • Integración de APIs y Persistencia Móvil
    • Testing y Despliegue en Móvil
    • Diseño UX/UI para Móviles
  • Diseño Gráfico y Arte Digital
    • Fundamentos del Diseño Gráfico y Digital
    • Diseño de Identidad Visual y Branding
    • Ilustración Digital y Arte Conceptual
    • Diseño Editorial y de Empaques
    • Motion Graphics y Animación 3D
    • Diseño Gráfico Asistido por Inteligencia Artificial
    • Creatividad e Innovación en Diseño
  • Programación
    • Fundamentos de Programación e Ingeniería de Software
    • Herramientas de IA para el trabajo
    • Matemáticas para Programación
    • Programación con Python
    • Programación con JavaScript
    • Programación con TypeScript
    • Programación Orientada a Objetos con Java
    • Desarrollo con C# y .NET
    • Programación con PHP
    • Programación con Go y Rust
    • Programación Móvil con Swift y Kotlin
    • Programación con C y C++
    • Administración Básica de Servidores Linux
  • Negocios
    • Fundamentos de Negocios y Emprendimiento
    • Estrategia y Crecimiento Empresarial
    • Finanzas Personales y Corporativas
    • Inversión en Mercados Financieros
    • Ventas, CRM y Experiencia del Cliente
    • Operaciones, Logística y E-commerce
    • Gestión de Proyectos y Metodologías Ágiles
    • Aspectos Legales y Cumplimiento
    • Habilidades Directivas y Crecimiento Profesional
    • Diversidad e Inclusión en el Entorno Laboral
    • Herramientas Digitales y Automatización para Negocios
  • Blockchain y Web3
    • Fundamentos de Blockchain y Web3
    • Desarrollo de Smart Contracts y dApps
    • Finanzas Descentralizadas (DeFi)
    • NFTs y Economía de Creadores
    • Seguridad Blockchain
    • Ecosistemas Blockchain Alternativos (No-EVM)
    • Producto, Marketing y Legal en Web3
  • Recursos Humanos
    • Fundamentos y Cultura Organizacional en RRHH
    • Atracción y Selección de Talento
    • Cultura y Employee Experience
    • Gestión y Desarrollo de Talento
    • Desarrollo y Evaluación de Liderazgo
    • Diversidad, Equidad e Inclusión
    • AI y Automatización en Recursos Humanos
    • Tecnología y Automatización en RRHH
  • Finanzas e Inversiones
    • Fundamentos de Finanzas Personales y Corporativas
    • Análisis y Valoración Financiera
    • Inversión y Mercados de Capitales
    • Finanzas Descentralizadas (DeFi) y Criptoactivos
    • Finanzas y Estrategia para Startups
    • Inteligencia Artificial Aplicada a Finanzas
    • Domina Excel
    • Financial Analyst
    • Conseguir trabajo en Finanzas e Inversiones
  • Startups
    • Fundamentos y Validación de Ideas
    • Estrategia de Negocio y Product-Market Fit
    • Desarrollo de Producto y Operaciones Lean
    • Finanzas, Legal y Fundraising
    • Marketing, Ventas y Growth para Startups
    • Cultura, Talento y Liderazgo
    • Finanzas y Operaciones en Ecommerce
    • Startups Web3 y Blockchain
    • Startups con Impacto Social
    • Expansión y Ecosistema Startup
  • Cloud Computing y DevOps
    • Fundamentos de Cloud y DevOps
    • Administración de Servidores Linux
    • Contenerización y Orquestación
    • Infraestructura como Código (IaC) y CI/CD
    • Amazon Web Services
    • Microsoft Azure
    • Serverless y Observabilidad
    • Certificaciones Cloud (Preparación)
    • Plataforma Cloud GCP

Platzi y comunidad

  • Platzi Business
  • Live Classes
  • Lanzamientos
  • Executive Program
  • Trabaja con nosotros
  • Podcast

Recursos

  • Manual de Marca

Soporte

  • Preguntas Frecuentes
  • Contáctanos

Legal

  • Términos y Condiciones
  • Privacidad
  • Tyc promociones
Reconocimientos
Reconocimientos
Logo reconocimientoTop 40 Mejores EdTech del mundo · 2024
Logo reconocimientoPrimera Startup Latina admitida en YC · 2014
Logo reconocimientoPrimera Startup EdTech · 2018
Logo reconocimientoCEO Ganador Medalla por la Educación T4 & HP · 2024
Logo reconocimientoCEO Mejor Emprendedor del año · 2024
De LATAM conpara el mundo
YoutubeInstagramLinkedInTikTokFacebookX (Twitter)Threads
        Mario Menjívar

        Mario Menjívar

        student•
        hace 8 años

        Visual Studio Code Rocks! 😃

          Gianfranco Manganiello

          Gianfranco Manganiello

          student•
          hace 7 años

          😃

        Iván Toro

        Iván Toro

        student•
        hace 8 años

        Resultado final:

        // Go version: go1.10.1 linux/amd64 package main import "fmt" // Strings support formatting in your declaration const HELLO_USER string = "Hello %s %s, welcome to fantastic Go's world\n" // A const not used not produce a error // Go inference the type const ONE = 1 func main(){ // Declaration var name string // Assignation name = "Name" // Declaration and assignation, Go inference the type lastname := "Lastname" // Declaration and assignation, Go inference the type var helloWorld = "Hello world!" // Multiple assignation, equivalent to: // var a = 1 // var b = "Two" // var c = true var ( a = 1 b = "Two" c = true ) fmt.Print("What's your name? ") fmt.Scanf("%s", &name) fmt.Print("What's your lastname? ") fmt.Scanf("%s", &lastname) fmt.Printf(HELLO_USER, name, lastname) fmt.Println(helloWorld, a, b, c) }
          Jordan Lancheros

          Jordan Lancheros

          student•
          hace 7 años

          En el ejempo que das me pide el Name, por consola.
          pero al momento de ingresar lastname pasa de largo, como si no funcionara Scanf.
          por que ocurre esto?

          Jordan Lancheros

          Jordan Lancheros

          student•
          hace 7 años

          si quiero guardar una variable desde la consola tendria unicamente que declararla var name string
          y no name := “xxxx”

        Buzu B

        Buzu B

        student•
        hace 6 años

        Cabe mencionar que := solo puede usarse dentro de funciones.

          JUAN SEBASTIAN RODRIGUEZ JIMENEZ

          JUAN SEBASTIAN RODRIGUEZ JIMENEZ

          student•
          hace 6 años

          buen dato

        Jose Antonio Valle Minjares

        Jose Antonio Valle Minjares

        company_admin•
        hace 6 años

        El nombrado correcto de variables es importante tanto como su tipo, el Lantern de Go requiere convención de nombrado de variables en Camel case. Por tanto no esta bien visto los underscore y nombres compuestos sin Camel case.

        var mal_definida string = "No hagas Esto" var bienDefinida string = "Esto si esta bien" var estotampoco string = "Declara como arriba mejor"
        Ricardo Oriel Cuan Sánchez

        Ricardo Oriel Cuan Sánchez

        student•
        hace 6 años

        Usar := es una mala práctica? Me imagino que al revisar el código es mejor tener el tipo de dato antes que tener malas interpretaciones

          Jesus David Urquijo Corredor

          Jesus David Urquijo Corredor

          student•
          hace 6 años

          Pues, desde mi punto de vista, no lo considero de tan mala práctica He visto en muchísimos códigos de Go y también librerías donde se usa habitualmente el

          Texto := "Aprendiendo con Platzi!"

          a la hora de crear una variable, también de igual manera se usa

          var Texto string Texto = "Aprendiendo con platzi!"

          Así que yo no considero que sea de mala práctica y por su parte tampoco llenas tanto una zona declarando por ejemplo las 20 variables que usarás en una función en vez de declararlas en el momento que las necesitas, además reduce la cantidad de código escrito. (Supongo que así como se usa un () => {codigo} en Javascript)

          Santiago Chaustre Perdomo

          Santiago Chaustre Perdomo

          student•
          hace 6 años

          Concuerdo totalmento contigo, usar tipado estático hace que el codigo fuente sea mucho leible y facil de entender, en especial cuando se requiere conocer el comportamiento de cierta información

        Samuel Delgado Muñoz

        Samuel Delgado Muñoz

        student•
        hace 8 años

        Tengo una pregunta, Para que se usan las comillas simples ‘’ en que las diferencia con respecto a “”? gracias.

          Diego Forero

          Diego Forero

          Team Platzi•
          hace 8 años

          En go se usan siempre comillas dobles " para definir strings o cadenas de texto, el uso de comillas sencilla ' es para algo llamado rune literals lo que hace es por ejemplo si tienes 'a' va a usar el valor unicode de la letra a que es 97.

          Samuel Delgado Muñoz

          Samuel Delgado Muñoz

          student•
          hace 8 años

          gracias por el dato, Interesante

        Yojan Antonio Pardo Zabala

        Yojan Antonio Pardo Zabala

        student•
        hace 7 años

        Este es mi resultado, utilicé los diferentes verbos para dar formato e imprimir las varibles con diferentes tipos de datos

        package main import "fmt" const HELLO_USER string = "Hola %s %s, Bienvenido al fascinante mundo de Go\n" func main(){ var name string lastname := "apellido" var ( a = 1 b = "dos" c = false ) fmt.Print("Ingresa tu nombre:") fmt.Scanf("%s", &name) fmt.Print("Ingresa tu apellido:") fmt.Scanf("%s", &lastname) fmt.Printf(HELLO_USER, name, lastname) fmt.Printf("%b %s %t\n",a,b,c) }
        LUIS MIGUEL ZAVALA FELIX

        LUIS MIGUEL ZAVALA FELIX

        student•
        hace 6 años

        Tengo una serie de problemas al usar Go desde Windows. algunas veces me manda error de sintaxis o que no reconoce la instruccion.

        package main import "fmt" func main() { var name string; var lastName string; fmt.Print("Ingresa tu nombre: "); fmt.Scanf("%s" ,&name); fmt.Print("Ingresa tu Apellido: "); fmt.Scanf("%s", &lastName); fmt.Printf("Bienvenido %s %s, al mundo de Go", name, lastName); }``` En windows se salta la segunda peticion de valor. (apellido) .

        PS C:\Users\xxx\go\src\github.com\luismigeel\cursogo> .\main.exe Ingresa tu nombreluis Ingresa tu Apellido Bienvenido luis , al mundo de Go PS C:\Users\xxx\go\src\github.com\luismigeel\cursogo>```

        este mismo codigo lo pruebo en y todo funciona bien. alguna idea porque suceda eso. ???

        Gustavo Eduardo Navarro Rodríguez

        Gustavo Eduardo Navarro Rodríguez

        student•
        hace 8 años

        Por convención en la programación, se recomienda siempre usar mayúsculas para las constantes, así se pueden diferenciar de las variables.

        Yonathan Gutierrez

        Yonathan Gutierrez

        student•
        hace 8 años
        package main import "fmt" const holamundo string = "hola %s %s, bienvenido \n" func main() { var name string lastname := "<Modifica el apellido>" fmt.Print("ingrese nombre: ") fmt.Scanf("%s", &name) fmt.Print("Ingrese apellido: ") fmt.Scanf("%s", &lastname) fmt.Printf(holamundo, name, lastname) fmt.Println("iniciando") }```
          Yonathan Gutierrez

          Yonathan Gutierrez

          student•
          hace 8 años

          probando lo instruido, solo que le hice algunas pequeñas variaciones…

        wesly hernandez

        wesly hernandez

        student•
        hace 7 años

        Este es mi resultado de mi código:
        Si tiene algún error, me pueden decir. Me gustaría aprender bien este lenguaje.

        This is my result of my code:
        If i have an error, you can tell me. I would like to learn this language well.

        package main import "fmt" // Decalration string const helloUser string = "Hello %s %s, Welcome to Go\n" func main() { // Declaration variable var name string name = "Name" lastname := "Lastname" var helloWorld = "Hello World! :)" // Declaration multiple variable and assignation var ( a = 1 b = "Two" c = 3 ) fmt.Print("What's your name: ") fmt.Scanf("%s", &name) fmt.Print("What's your lastname: ") fmt.Scanf("%s", &lastname) fmt.Printf(helloUser, name, lastname) fmt.Println(helloWorld, a, b, c) }
        Jose L. Figueroa

        Jose L. Figueroa

        student•
        hace 7 años

        Además de Go-Plus, qué extensión utilizas para que se te marquen los puntos de los errores???

          Rafael Pardo Rodriguez

          Rafael Pardo Rodriguez

          student•
          hace 7 años

          Puedes buscar en cada editor de texto, si usas vscode y abres un archivo Go, te aparece la extensión del lenguaje.

        Jose L. Figueroa

        Jose L. Figueroa

        student•
        hace 7 años

        Declaración de variables

        Para declarar una variable en GO se realiza de la siguiente forma:

        var VAR_NAME VAR_TYPE

        Donde:

        • var es la palabra reservada para la declaración de variables
        • VAR_NAME es el nombre de la variable
        • VAR_TYPE es el tipo de la variable

        Por ej:
        var name string

        Las variables también se pueden inicializar en la declaración:

        var name string = "Nombre"

        Las variables también se pueden declarar de la forma shortcut :

        lastname := "Modificar con mi apellido"

        O se puede realizar un conjunto de declaración de variables:

        var ( a = 1 b = 2 c = 3 )

        Declaración de Constantes

        Las constantes se declaran de la siguiente manera:

        const CONST_NAME CONST_TYPE = “CONST_VALUE”

        donde:

        • const palabra reservada para la declaración de constantes
        • CONST_NAME es el nombre de la constantes
        • CONST_TYPE es el tipo de la constantes
        • CONST_VALUE valor de la constante

        Por ej:

        const testConst string = "Test"

        José Emanuel Castelán Cortés

        José Emanuel Castelán Cortés

        student•
        hace 7 años

        También se pueden crear variables de la siguiente manera, con la que intuye Go el tipo de variable

        variable2 := "Esta variable es texto"

        Go también infiere el tipo de dato usando var e igualando con una variable inicial.

        var number = 100"

        Para múltiples variables, se hace lo siguiente

        var ( a = 1 b = 2 c = 3 )

        Para declarar constantes se usa la palabra const. Igualmente, declaramos el tipo o dejamos que Go lo intuya.

        La declaración de constantes se hace fuera de la función main.

        const helloworld string = "Hola %s %s, bienvenido a Go!!!" const testCont = "Text"

        Siendo así, tendríamos un programa como este

        package main import "fmt" const HELLO_USER string = "Hola %s %s, Bienvenido al fascinante mundo de Go\n" func main() { var name string lastname := "<Apellido>" var number = 100 var ( a = 1 b = 2 c = 3 ) fmt.Print ("Ingresa tu nombre:") fmt.Scanf("%s",&name) fmt.Print ("Ingresa tu apellido:") fmt.Scanf("%s",&lastname) fmt.Println("OK!") fmt.Printf(HELLO_USER, name, lastname) fmt.Println(number,a,b,c) }

        Y su salida sería algo como esto:

        Ingresa tu nombre:Emanuel Ingresa tu apellido:Castelan OK! Hola Emanuel Castelan, Bienvenido al fascinante mundo de Go 100 1 2 3
        Andrés Felipe Martínez Salazar

        Andrés Felipe Martínez Salazar

        student•
        hace 7 años

        Según lo que entendí el := declara e inicializa la variable, mientras el = es la asignación de toda la vida

        Christian Armando Consuelo Mayén

        Christian Armando Consuelo Mayén

        student•
        hace 7 años

        La sintaxis para declarar variables me recuerda a Javascript aunque JS obviamente es un lenguaje de tipado dinámico y Go no. Creo que Go es una mezcla de ideas interesantes de muchos lenguajes de programación. Tiene potencial.

        Rafael Niquefa

        Rafael Niquefa

        student•
        hace 7 años
        package main import "fmt" const helloWorld = "Hola %s %s"; func main(){ var name string lastname := "niquefa" var ( a = 1 b = 2.0 c = "3" ) fmt.Println("Print name: ") fmt.Scanf("%s", &name) fmt.Printf("Hello %s %s wellcome to go\n",name,lastname) fmt.Println(a,b,c) fmt.Printf(helloWorld,name,lastname) }
        JUAN SEBASTIAN RODRIGUEZ JIMENEZ

        JUAN SEBASTIAN RODRIGUEZ JIMENEZ

        student•
        hace 6 años

        que buena clase, lo que queda es practicar y practicar

        Daniel Vidal

        Daniel Vidal

        student•
        hace 6 años
        package main import "fmt" const helloWorld string = "Hola %s %s, bienvenido al fascinante mundo de Go.\n" const testConst = "Test" func main() { var name string name = "Sin nombre" lastname := "<Modificar con mi apellido>" var number = 100 var ( a = 1 b = 2 c = 3 ) fmt.Print("Ingresa tu nombre: ") fmt.Scanf("%s", &name) fmt.Printf(helloWorld, name, lastname) fmt.Print("Hola mundo") fmt.Println(number, a, b, c) }
        Hugo Orlando Gonzalez

        Hugo Orlando Gonzalez

        student•
        hace 6 años

        Excelente curso! Por fin puedo entender Go y aprenderlo