domingo, 21 de octubre de 2018

Constantes en Go

En los capítulos anteriores hemos trabajado con variables. Ahora vamos a aprender qué es una constante, y para qué sirve.

¿Qué es una constante?

Una constante es exactamente igual a una variable, pero con la particularidad de que debe inicializarse con un valor que nunca va a cambiar. Es decir, que no se le puede reasignar nuevos valores.

Para declarar una variable, se utiliza la palabra clave const, en lugar de utilizar var. Por tanto, no se puede declarar una constante con el operador de asignación "dos puntos igual" (:=), el cual está reservado exclusivamente para las variables.

const PI float64 = 3.141519

¿Para qué sirven las constantes?

En la práctica, las constantes son muy útiles. Sirven para asociar un dato utilizado en la aplicación a un nombre, el cual es mucho más fácil de recordar que el valor y, además, es mucho más legible y entendible. Por ejemplo, el nombre un impuesto (que será un factor fijo de cálculo en facturas o en otras operaciones) es más legible que utilizar el valor de dicho impuesto.

const IVA float64 = 21.0
var importeFactura float64 = 10000
var importeIVA float64 = importeFactura * (IVA / 100)

También sirve para tener una lista de valores fijos sobre un tema en concreto (como códigos de errores o de otro tipo). Es mucho más legible leer ERROR_404_PAGINA_NO_ENCONTRADA que, simplemente, 404.

Como buena práctica, las constantes se escriben completamente en mayúsculas para identificarlas rápidamente de cualquier otro nombre declarado en el código (como el nombre de una variable o el de una función). Es conveniente que tengan un nombre corto pero lo más descriptivo posible.

Ejemplo

package main

import "fmt"

func main() {
   // Declaracion y asignacion de la variable nombre
   var nombre string = "Rafael"
   fmt.Println("Nombre: ", nombre)

   // Reasignacion de la variable nombre
   nombre = "Eduardo"
   fmt.Println("Nombre: ", nombre)

   // Declaracion y asignacion de la constante PI
   const PI float64 = 3.141519
   fmt.Println("PI: ", PI)

   // La siguiente linea dara un error
   // No se puede modificar el valor de una constante
   PI = 1234.5
}

A la hora de intentar ejecutar el código, Go identificará el error en tiempo de compilación y lo mostrará en pantalla, sin llegar a ejecutar el programa:

$ go costantes.go
# command-line-arguments
.\constantes.go:20:5: cannot assign to PI

Enlaces de interés

No hay comentarios:

Publicar un comentario