Ir al contenido principal

Entradas

Mostrando las entradas etiquetadas como go

V lang: comparativa con Go

V Lang es un lenguaje de programación que ha tomado lo mejor de los lenguajes C y C++ , se inspira principalmente en Go , pero también toma elementos de Rust , Swift , Kotlin , Oberon y Python . Es un lenguaje de tipado fuerte. Además podemos distinguir de las variables tipo mutable o inmutable. Por su parte, Go es un lenguaje de programación diseñado para ser rápido, eficiente, concurrente y fácil de aprender. Compilado y con tipado estático, destaca en el desarrollo backend , sistemas en la nube y redes gracias a su gestión automática de memoria y alto rendimiento. Observemos está tabla comparativa: Comparativa Go y V Lang Aspecto Go V Lang Creador Ken Thompson, Robert Pike y Robert Griesemer Alexander Medvednikov Objetivo Lenguaje eficiente, concurrente y fácil de usa...

Comparativa entre Go, Odin y Rust

En esta ocasión veremos una comparativa entre tres lenguajes de programación modernos: Go, Odin y Rust . Comencemos observando esta tabla comparativa. Comparativa entre lenguajes. Característica Go Odin Rust Creador Ken Thompson, Robert Pike y Robert Griesemer Ginger Bill Graydon Hoare Paradigma Multiparadigma Multiparadigma (con limitantes) y orientado a datos Multiparadigma (con limitantes) Extensión .go .odin .rs Tipado Estático Estático Estático Nivel de abstracción Alto nivel Alto nivel Alto nivel Tipo de e...

Hablemos de ... Goroutines

Una de las peculiaridades del lenguaje Go son las goroutines , la cual es una forma de crear hilos de ejecución livianos y gestionables por el sistema operativo (un concepto similar a los hilos en Java). Una goroutine se considera una unidad ligera de ejecución en Go . Se lanzan con la palabra go y las gestiona el runtime de Go ( scheduler ). Son mucho más ligeras que los hilos del sistema operativo. Digamos que es una función o método que se ejecuta simultáneamente con otras goroutines en el mismo espacio de direcciones. Características principales: Es una función que se ejecuta concurrentemente con otras dentro del mismo programa.  Ocupan muy poca memoria (unos pocos KB frente a MB de un hilo).  No dependen del sistema operativo, sino del runtime de Go , que las programa sobre un conjunto de hilos del sistema. Se lanzan en microsegundos, mucho más rápido que crear un hilo. Las goroutines son abstracciones de concurrencia más eficientes que los hilos, aunq...

Punteros en Go, ¿Por qué tendría que usarlos?

Los que ya llevan cierto tiempo en la programación sabrán que uno de los conceptos más difíciles de aprender y usar son los famosos punteros: variables que almacenan la dirección de memoria de otra variable . Y es que una variable (en lenguajes de tipado estático como C) se compone de: Un tipo de dato.  Un nombre.  Un valor.  Una dirección de memoria. Las dos primeras características las define el programador, el valor depende del flujo del programa. La memoria la designa el sistema. En el lenguaje de programación C tenemos que: // Definimos una variable de tipo entero con un valor int numeroInt = 33 ; // Definimos un puntero que almacena la dirección de la variable numeroInt int * punteroInt = & numeroInt; Esto nos permite trabajar con datos de manera más eficiente y flexible, especialmente cuando quieres modificar valores dentro de funciones o estructuras sin copiar todo el contenido. Pero, ¿Qué tiene que ver con Go? La respuesta es: tien...