You are on page 1of 15

Go

Conceptos Fundamentales

Programación Lógica

Autores:
Carlos Manuel Chan Sansores
Jhonatan Antonio Hernandez Sarmiento Fecha: 21 de febrero del 2019
OBJETIVOS
Objetivo general: Presentar las principales características
del lenguaje de programación Go y mostrar un poco de su
funcionalidad.

Objetivos específicos:

● Presentar las principales características del lenguaje.


● Mostrar ejemplos del lenguaje.
● Mostrar como trabajan las funciones de este lenguaje.
● Mostrar los tipos de datos de este lenguaje.
INTRODUCCIÓN
En esta presentación se realizó una investigación de un
lenguaje de programación que empezó a crecer mucho en los
últimos años, ya que muchas empresas están optando por usar
nuevos lenguajes que sean multiplataformas. El lenguaje de
programación que presentaremos será Go, el cual se
presentarán los puntos más fuertes e importantes de este
lenguajes.
PUNTOS A TRATAR
● Historia del lenguaje
● Características principales
● Evaluación de expresiones
● Definición de funciones
● Disciplina de tipos
● Tipos de datos
● Ejemplo de código
Un poco de historia…
Go es un lenguaje de programación inspirado en C, compilado, estáticamente tipado, concurrente y con un enfoque de
programación orientada a objetos un poco inusual. Podemos decir que “nació” en el año 2009 y está siendo utilizado por
empresas como Docker, UBER, entre otros.

Los diseñadores de este lenguaje son:

Robert Griesemer, Rob Pike y Ken Tompson.


Características principales
● Compilado
● Estáticamente Tipado
● Concurrente
● Uso poco usual de POO
● Uso de paquetes
Evaluación de expresiones
Para evaluar una expresión no hay que hacer nada del otro mundo, pues es bien
sencillo. Sólo hay que saber sumar, restar, si un número es mayor que otro. Hay
tres reglas de prioridad a seguir para evaluar una expresión:

● Primero, los paréntesis (si tiene)


● Después, seguir el orden de prioridad de operadores
● Por último, si aparecen dos o más operadores iguales, se evalúan de
izquierda a derecha.

Las expresiones son secuencias de constantes y/o variables separadas por


operadores válidos.
Definición de funciones
pueden ser llamadas con cualquier número de argumentos. Un ejemplo común de una función
verídica es fmt.Println
package main

import "fmt"

Aquí declaramos una función que va a recibir un número arbitrario de valores tipo int como
argumentos.
Disciplina de tipos
Los programas bien tipados se pueden conocer en tiempo
de compilación. Un programa bien tipado se puede
utilizar sin efectuar comprobaciones de tipo en tiempo
de ejecución, estando garantizado que no se producirán
errores de tipo durante el cómputo.
TIPOS DE DATOS
● Numérico
uint8 el conjunto de todos los enteros de 8 bits sin signo (0 a 255)
uint16 el conjunto de todos los enteros de 16 bits sin signo (de 0 a 65535)
uint32 el conjunto de todos los enteros de 32 bits sin signo (0 a 4294967295)
uint64 el conjunto de todos enteros de 64 bits sin signo (0 a 18446744073709551615)

int8 el conjunto de todos los enteros de 8 bits con signo (-128 a 127)
int16 el conjunto de todos los enteros de 16 bits con signo (-32768 a 32767)
int32 el conjunto de todos los 32 con signo enteros de bits (-2147483648 a 2147483647)
int64 el conjunto de todos los enteros de 64 bits con signo (-9223372036854775808 a 9223372036854775807)

float32 el conjunto de todos los IEEE-754 de 32 bits de punto flotante


float64 el conjunto de todos IEEE-754-bit Números de punto flotante

complex64 el conjunto de todos los números complejos con float32 partes reales e imaginarias
complex128 el conjunto de todos los números complejos con float64 alias real e imaginario

byte alias para uint8


rune alias para int32
● Array
ArrayType = "[" ArrayLength "]" ElementType .
ArrayLength = Expresión .
ElementType = Type .
● Boolean
Un tipo booleano representa el conjunto de valores de verdad booleanos indicados por las constantes declaradas
previamente true y false. El tipo booleano pre declarado es bool;
● Strings
Un tipo de cadena representa el conjunto de valores de cadena. Un valor de cadena es una secuencia (posiblemente
vacía) de bytes. Las cadenas son inmutables: una vez creadas, es imposible cambiar el contenido de una cadena. El
tipo de cadena pre declarado es string;
EJEMPLO 1
package main
import "fmt"
func main() {
fmt.Println("Hola mundo")
}
EJEMPLO 2
package main
import "fmt"
func main() {
var a int8
var b int
a = 5
b = 5
c := a + int(b)
fmt.Println(c)
}
Conclusión
En conclusión, vemos que Go trae nuevas
tecnologías que otros lenguajes de
programación ya traían, solo que este
lenguaje lo implementa de otras maneras. Si
nos damos cuenta también el lenguaje trae
pocos tipos de datos y entre los tipos que
mas denominan son los tipos numéricos.
Referencias bibliográficas
● Julian, p., alpuente, m. (2007). Programación lógica.
Teoría y práctica. Pearson Prentice hall.

● Google.The Go Programming Lenguage. Obtenido de


https://golang.org/doc/

You might also like