¿Por qué enseñas ir?


Fuente de imagen


Go es un lenguaje de programación relativamente joven pero popular. Según una encuesta de Stack Overflow, fue Golang el que obtuvo el tercer lugar en el ranking de lenguajes de programación que los desarrolladores desearían dominar. En este artículo, trataremos de comprender las razones de la popularidad de Go, y también veremos dónde se usa este idioma y por qué vale la pena estudiarlo.


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 el idioma se llamaba joven, este año cumplirá diez años.


El objetivo que enfrentaron los creadores de Go fue desarrollar un lenguaje de programación simple y efectivo que pudiera usarse para crear software de alta calidad. Rob Pike, uno de los creadores de Go, dijo que Go fue diseñado para programadores de empresas que recientemente habían completado sus estudios y conocían Java, C, C ++ o Python. Ir por ellos es un lenguaje que puedes entender rápidamente y acostumbrarte rápidamente.


Inicialmente, era una herramienta dentro de Google, pero con el tiempo salió de las entrañas de la corporación y se hizo pública.


Beneficios de lenguaje


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


Simplicidad En realidad, este era el objetivo principal de crear el lenguaje, y se logró. Go tiene una sintaxis bastante simple (con ciertos supuestos), por lo que las aplicaciones se pueden desarrollar más rápido que en otros idiomas. Y hay dos puntos interesantes.


En primer lugar, Golang puede aprender rápidamente un novato completo en programación, uno que no conoce un solo idioma y que solo se convertirá en desarrollador. Sobre Go, podemos decir que es casi tan sencillo (relativamente, por supuesto) como PHP o incluso Pascal, pero tan poderoso como C ++.


En segundo lugar, Go puede ser dominado por un "programador maduro" que ya conoce uno o más idiomas. Muy a menudo, los desarrolladores aprenden Go después de haber dominado Python o PHP. Además, algunos programadores usan con éxito un par de Python / Go o PHP / Go.


Una gran cantidad de bibliotecas. Si se está perdiendo alguna función en Go, puede usar una de las muchas bibliotecas y completar la tarea requerida. Go tiene una ventaja más: puede interactuar fácilmente con las bibliotecas de C. Incluso existe la opinión de que las bibliotecas Go son envoltorios para las bibliotecas C.


Código de limpieza. El compilador Go mantiene el código limpio. Por ejemplo, las variables no utilizadas se consideran un error de compilación. Ir aborda la mayoría de los problemas de formato. Esto se hace, por ejemplo, usando el programa gofmt al guardar o compilar. El formateo se corrige automáticamente. Puede obtener más información sobre todo esto en el tutorial Efectivo .


Mecanografía estática. Otra ventaja de Go, que reduce la probabilidad de que un desarrollador cometa un error. Sí, los primeros días un programador, acostumbrado a la escritura dinámica, se molesta al declarar un tipo para cada variable y función si es necesario, así como para todo lo demás. Pero luego queda claro que hay ventajas sólidas.


Godoc Una utilidad que simplifica enormemente el código de documentación. Una 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 documentado.


Mantenimiento de código. Es fácil de mantener gracias a su sintaxis simple y concisa. Todo esto es un 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 entienden todo esto, surge un problema de servicio. El código debe ser claro para todos los que trabajan en él, bien documentado y conciso. Todo esto es posible con Go.


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


Lo que puedes escribir en Go


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


Todo lo demás se puede escribir, especialmente con respecto a los servicios web. Además, Go debe desarrollar aplicaciones tanto para el usuario final como para el desarrollo de demonios, UI, es adecuado para aplicaciones y servicios multiplataforma.


Demanda de golang



Con el tiempo, el lenguaje se vuelve más y más popular. Además de aquellas compañías que están presentes en la imagen de arriba, Mail.ru Group, Avito, Ozon, Lamoda, BBC, Canonical y otras trabajan con Golang.


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


Bueno, ¿qué pasa con los ingresos? Los salarios del desarrollador de Go el año pasado promediaron 60-140 mil rublos según My Circle. En comparación con 2017, este indicador aumentó un 8,3%. En 2019, es probable que el crecimiento continúe, ya que muchas empresas necesitan desarrolladores de Golang.


Que sigue


Golang definitivamente no dejará de desarrollarse. La necesidad de buenos especialistas que conozcan este idioma solo aumentará, por lo que no será difícil encontrar un trabajo para un especialista (principiante o profesional). En principio, esta declaración también es relevante ahora, ya que hay una escasez constante 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 volver a aprenderlo.


El artículo fue preparado en conjunto con el profesor del curso de Golang en GeekBrains Sergey Kruchinin, por lo que muchas gracias a él.

Source: https://habr.com/ru/post/446914/


All Articles