¿Por qué deberías aprender Go?

¿Por qué deberías aprender Go?
Fuente de imagen

Go es un lenguaje de programación relativamente joven pero popular. Por datos de la Encuesta Stack Overflow, fue Golang el que obtuvo el tercer lugar en el ranking de lenguajes de programación que a los desarrolladores les gustaría dominar. En este artículo intentaremos comprender las razones de la popularidad de Go, así como analizar dónde se usa este idioma y por qué vale la pena aprenderlo en general.

Un poco de historia

El lenguaje de programación Go fue creado por Google. En realidad, su nombre completo Golang es un derivado del “lenguaje de Google”. A pesar de que en el anuncio se llamó joven a la lengua, este año cumple diez años.

El objetivo de los creadores de Go era desarrollar un lenguaje de programación simple y eficiente que pudiera usarse para crear software de alta calidad. Rob Pike, uno de los creadores de Go, dijo que Go fue diseñado para los programadores de la compañía que son graduados relativamente nuevos y conocen Java, C, C++ o Python. Para ellos, Go es un lenguaje que pueden entender y acostumbrarse rápidamente.

Inicialmente era una herramienta dentro de Google, pero con el tiempo surgió de las profundidades de la corporación y se hizo de conocimiento público.

Ventajas del idioma

Golang tiene una gran cantidad de ventajas, tanto conocidas como no tan conocidas.

Simplicidad En realidad, este era el objetivo principal al crear el idioma y se logró. Go tiene una sintaxis bastante simple (con ciertas suposiciones), por lo que las aplicaciones se pueden desarrollar más rápido que otros lenguajes. Y aquí hay dos puntos interesantes.

En primer lugar, un completo principiante en programación puede aprender Golang con bastante rapidez, alguien que no conoce ningún idioma y que simplemente planea convertirse en desarrollador. Se puede decir de Go que es casi tan sencillo (relativamente hablando) como PHP o incluso Pascal, pero tan potente como C++.

En segundo lugar, Go puede ser dominado por un "programador formado", uno que ya conoce uno o más idiomas. La mayoría de las veces, los desarrolladores aprenden Go después de dominar Python o PHP. Además, algunos programadores utilizan con éxito el par Python/Go o PHP/Go.

Una gran cantidad de bibliotecas. Si le falta una función en Go, puede utilizar una de las muchas bibliotecas para realizar el trabajo. Go tiene otra ventaja: puedes interactuar fácilmente con las bibliotecas C. Incluso existe la opinión de que las bibliotecas Go son envoltorios para las bibliotecas C.

Limpieza del código. El compilador Go le permite mantener su código limpio. Por ejemplo, las variables no utilizadas se consideran un error de compilación. Go resuelve la mayoría de los problemas de formato. Esto se hace, por ejemplo, utilizando el programa gofmt al guardar o compilar. El formato se corrige automáticamente. Puedes saber más sobre todo esto en el tutorial. Eficaz.

Escritura estática. Otra ventaja de Go es que reduce la probabilidad de que un desarrollador cometa un error. Sí, durante los primeros días un programador acostumbrado a la escritura dinámica se irrita cuando tiene que declarar un tipo para cada variable y función, así como para todo lo demás. Pero luego queda claro que aquí hay ventajas continuas.

GoDoc. Una utilidad que simplifica enormemente la documentación de código. La gran ventaja de GoDoc es que no utiliza lenguajes adicionales como JavaDoc, PHPDoc o JSDoc. La utilidad utiliza la cantidad máxima de información que extrae del código que se documenta.

Mantenimiento de código. Es fácil de mantener gracias a su sintaxis simple y concisa. Todo esto es el legado de Google. Dado que la corporación tiene una gran cantidad de código para varios productos de software, así como decenas de miles de desarrolladores que lo resuelven todo, surge un problema de mantenimiento. El código debe ser comprensible para todos los que trabajan en él, estar bien documentado y ser conciso. Todo esto es posible con Go.

Al mismo tiempo, no hay clases en Golang (hay estructuras, struct), no hay soporte para herencia, lo que simplifica enormemente el cambio de código. Además no hay excepciones, anotaciones, etc.

¿Qué puedes escribir en Go?

Casi todo, con la excepción de algunos puntos (por ejemplo, desarrollos relacionados con el aprendizaje automático: Python con optimizaciones de bajo nivel en C/C++ y CUDA es más adecuado aquí).

Todo lo demás se puede escribir, especialmente en el caso de los servicios web. Además, Go vale la pena desarrollar aplicaciones tanto para el usuario final como para desarrollar demonios, UI y es adecuado para aplicaciones y servicios multiplataforma.

Demanda de Golang

¿Por qué deberías aprender Go?
Con el tiempo, el idioma se vuelve cada vez más demandado. Además de las empresas que están presentes en la imagen de arriba, Mail.ru Group, Avito, Ozon, Lamoda, BBC, Canonical y otras trabajan con Golang.

“Decidimos ampliar el negocio; para nosotros es importante construir una plataforma tecnológica fundamentalmente nueva que garantice un rápido desarrollo del producto. Confiamos en Go por su velocidad y confiabilidad y, lo más importante, por la audiencia de programadores que lo usan”, dijeron representantes de Ozon en 2018, después de que la compañía decidiera cambiar a Golang.

Bueno, ¿qué pasa con los ingresos? El salario de un desarrollador de Go el año pasado promedió entre 60 y 140 mil rublos. Según "Mi círculo" En comparación con 2017, esta cifra aumentó un 8,3%. Es probable que el crecimiento continúe en 2019, ya que muchas empresas necesitan desarrolladores de Golang.

¿Qué será lo próximo?

El desarrollo de Golang definitivamente no se detendrá. La necesidad de buenos especialistas que dominen este idioma no hará más que aumentar, por lo que no será difícil para un especialista (principiante o profesional) encontrar trabajo. En principio, esta afirmación sigue siendo relevante hoy en día, ya que existe una constante escasez de desarrolladores en el mercado de TI.

Go es bueno tanto para programadores principiantes como para profesionales que ya conocen uno o más lenguajes de programación. Casi cualquier programador puede aprenderlo o reaprenderlo.

El artículo fue elaborado en conjunto con la docente. curso de golang en GeekBrains por Sergei Kruchinin, ¡muchas gracias a él!

Fuente: habr.com

Añadir un comentario