История Go
Go разработан в корпорации Google легендарным Робом Пайком – создателем Unix и Inferno. Отсюда, собственно, и название «Golang» – сокращение от «Google language». Широкой аудитории Go был представлен осенью 2009 года. С тех пор вышло восемь версий, самая последняя из которых датируется апрелем 2017 года.
Язык отличается строгостью, лаконичностью, почти полным отсутствием синтаксического сахара. Статическая типизация позволяет получать читаемый и понятный код.
Несмотря на свою молодость, Go считается одним из самых интересных и перспективных.
Язык, который можно выучить за три часа
По мнению Артёма Ковалёва (Senior software engineer в одной из крупных европейских компаний), среди главных преимуществ Go — простота и логичность. Язык очень лёгок в освоении. Изучить его основы можно буквально за 2-3 часа. Но есть одно «но»: придётся полностью перестроить привычную схему мышления. Ведь создатели Go отошли от привычных принципов объектно-ориентированного программирования, сделав акцент не на объектах, а на методах и структурах.
Изучать новый язык можно самостоятельно. Помогут курсы или специальные ресурсы в сети. Один из таких – https://tour.golang.org. Это полноценный тур по Golang, рассчитанный на новичков. Пройти его полностью можно всего за несколько часов, максимум – за выходные.
Чем проще, тем лучше
По мнению Артёма, язык чрезвычайно производителен. На высоте кросскомпилируемость, работа с многопоточностью проходит без типичных «головняков», отлично работают сборщики мусора, очищая память от неактуальной информации. Большое количество библиотек тоже является одним из «плюсов». Их наличие позволяет решить практически любую задачу.
А вообще, несмотря на множество преимуществ Go, главной его особенностью является простота и отсутствие лишних деталей. В языке не более 25 ключевых слов (в PHP их, к примеру, почти 70). Синтаксис «без заморочек» помогает не только создавать понятный код, но и многократно увеличивает производительность.
При разработке посредством Go даже начинающему программисту не придётся лишний раз погружаться в документацию или копаться в интернете в поисках спецификации языка. Сфера применения Создатели Go надеялись, что с его помощью можно создавать уникальные продукты с широким функционалом. Он изначально задумывался как простое и надёжное средство разработки самых разных высокоэффективных программ.
Хотя многие до сих пор полагают, что Golang подходит для создания веб-приложений или простеньких сервисов. Действительно, на языке удобно писать утилиты, сетевое программное обеспечение, бэкенд. В реальности потенциал Go огромен. По словам Артёма, сфера его возможностей не ограничивается микросервисами и утилитами: есть успешная практика написания на языке более серьёзных программных продуктов и даже игровых движков. Достаточно сказать, что всеми любимые kubernetes и docker созданы с помощью Golang.
Наши рекомендации
Если Вы тоже решили освоить Go, Вам очень кстати придутся советы нашего эксперта Артёма Ковалёва. Он порекомендовал несколько полезных ресурсов, где можно почитать об этом молодом, но перспективном языке:
• https://golang.org/ — официальный сайт с документами и блогом
• https://4gophers.ru/ — отличный сайт о Go со статьями на русском языке
• https://golangshow.com/ — русскоязычный подкаст с регулярным обновлением выпусков
• Ну и, наконец, на десерт – лучший учебник под названием «Go Programming Blueprints», где описывается полный цикл разработки продуктов на Golang.