5 razones para usar GoLang

C, Java, Javascript, Python, PHP, cada lenguaje tiene sus pro y sus contras, su paradigma, sus formas de compilar, de interpretar, funciones y su sintaxis. ¿Pero qué pasa cuando se reúne lo mejor de cada uno en un solo lugar? Nace un súper lenguaje con superpoderes: GoLang o Go.

¿Qué es lo que lo hace tan poderoso?

GoLang trae las mejores partes de muchos mundos. Es un lenguaje de programación de código abierto, fácil de aprender y con una sintaxis concisa, limpia y eficiente. Sus características propias que lo diferencian de los demás parten de la base de que toma de cada uno de los otros lenguajes lo mejor que tienen. Estas características las englobamos en 5 grandes ventajas para el uso del lenguaje.

  1. Puede compilar para cualquier sistema operativo y en cualquiera. Es compilado cross platform y toma ideas de los lenguajes interpretados. Por ejemplo, estás en linux y podés compilar para Windows o viceversa. Además, al crear en código máquina, para ejecutar en la nube solo subís al servidor el archivo ejecutable, sin necesidad de crear entornos para esto. A su vez, esto hace que la compilación sea mucho más rápida. Podés probar tu código rápidamente. Escribís y ejecutás. Así de simple. Y el tipado es estático pero trae algunas cualidades del dinámico como declarar variables sin indicar el tipo de dato, aunque luego no puedas volver a modificarlo.
  2. Su sintaxis es muy simple y de fácil entendimiento. Al tener algo de cada lenguaje, se hace sencillo para cualquier programador o programadora aplicarlo. ¿Y por qué es simple? Todos los archivos de Go tienen que pertenecer a un paquete. Cuando instalás el lenguaje, ya viene con todos los paquetes que necesitás, a diferencia de otros lenguajes que tenés que traer paquetes de librerías de terceros. Además, podés configurar tu editor de código para que te traiga el paquete que necesitás, en el momento que lo necesitás. Por ejemplo, estás en la línea 500 y en vez de volver a la línea 1 para importar otro código, lo escribís ahí mismo y se importa automáticamente. Esto permite trabajar con más rapidez. La sencillez del lenguaje también se ve cuando solo necesitás poner la primera letra en mayúscula o minúscula para definir si la variable será privada o pública.

package main

import "fmt"

var noExportada string
var Exportada string

func main () {
     saludo := "Hola bitlogic"

     fmt.Println (saludo)
}

  1. Permite codear rápidamente al tener una guía de estilos pre-definida y mantener el código limpio y estable con su sistema de garbage collector. Evita que te pongas a tener que definir con el equipo los estilos y elementos a utilizar. Y hace que el aprendizaje del lenguaje sea mucho más rápido. Y a su vez, mantiene el código prolijo y reducido ya que va eliminando lo que no usas más.
  2. Es eficiente por sus características de multiparadigma y su forma concurrente para ejecutar tareas. Podés hacer programación estructurada, funcional, salvo el tipo de programación orientada a objetos clásica. Esto puede ser una desventaja, entre comillas, ya que normalmente estudiamos programación bajo ese paradigma y Go no la usa, aunque te deja implementarlo con algunas variaciones. Además, es un lenguaje concurrente de forma nativa. La concurrencia significa que permite ejecutar tareas en pedacitos. Es decir, avanza una tarea y puede iniciar la otra. Y así sucesivamente. Todo en un solo procesador. No son simultáneos sino que las tareas se van intercalando muy rápidamente para que puedan ejecutarse muchas. Al contrario de utilizar el paralelismo para correr procesos/tareas en simultáneo que requiere un procesador y una tarea por proceso.
  3. Permite pensar en la lógica y desarrollo del negocio. La simpleza y la rapidez del lenguaje por los motivos antes mencionados, más algunas otras características técnicas como no permitir excepciones ni soportar herencias, hace que a la hora de programar deba estar definido de antemano lo que se pretende del negocio. Además, todo el desarrollo web lo podrías hacer con Go. Funciona especialmente para backend pero también permite crear templates para la vista en su propio servidor web.

¿Qué cosas se pueden hacer con GoLang?

Existen cuatro áreas principales en donde Go se destaca debido a las ventajas antes mencionadas:

  • Cloud y networking. Servicios y microservicios.
  • Scripts para el sistema.
  • Automatizaciones para devops.
  • Web.

En Bitlogic este lenguaje forma parte del stack tecnológico de muchos proyectos. En el sector fintech es donde más se prioriza su uso por su característica potente para soportar transacciones. Pero también lo utilizamos para proyectos del sector educativo.

Junto a la Universidad Católica de Córdoba, estamos trabajando en el reemplazo de sus sitios web más un CMS para la gestión de contenidos. A su vez, el proyecto de desarrollo y mantenimiento de la plataforma de G-SE destinada a la capacitación y desarrollo profesional de usuarios también tiene desarrollo en este potente lenguaje. También brindamos soporte a Mercado Libre en integraciones y pasarelas de pago, conexiones con procesadores de pago de múltiples países y el backend en cada uno de estos proyectos está desarrollado con Go.

Algunos aprendizajes sobre el uso de GoLang más allá de sentarte a codear

La simpleza y la rapidez con la que se programa permiten enfocarse en la lógica de desarrollo del negocio y nada más. No hace falta instalar entornos, librerías, setear paquetes de códigos. Programás en Go y salís muy rápido a producción. Te da más tiempo a pensar en cómo mejorar el negocio que ponerte a ver cómo lo construís.

La velocidad de aprendizaje del lenguaje también es un valor agregado para las empresas de software donde el recambio de talentos es una constante. El aprendizaje es tan rápido y el lenguaje es tan simple que acorta los tiempos de inducción. En dos semanas, cualquier persona programadora puede estar escribiendo con Go.

Y por último, GoLang está siendo uno de los lenguajes más demandados de la industria. Es decir, existe una gran demanda de programadores y programadoras que tengan este lenguaje pero poca oferta. Y esto se debe justamente a la facilidad, a su simpleza y a su rapidez de ejecución, pero por otro lado es un lenguaje muy nuevo, tiene tan solo 10 años ya que su primera versión estable fue en el 2012.

Los negocios lo necesitan y desde Bitlogic entendimos esa necesidad.

Si querés sumarte a nuestro staff, hacé clic acá.

Fuentes:
Ignacio Monasterio, Software Engineer en Bitlogic.
EDTeam
hired.com