Точка входа
570 subscribers
13 photos
1 file
60 links
Спасибо, что зашли на канал!

Субъективно про будущее и настоящее IT сферы от разработчика ПО
Download Telegram
Последнее время активно пишу на Go (golang.org) и все сильнее убеждаюсь, что он со временем прижмет своих конкурентов по веб части.

В языке больше всего радуют 3 вещи:
- обработка ошибок
- жесткий синтаксис
- быстрый компилятор

Обработка ошибок в Go кардинально отличается от тех, которые я наблюдал в других "обычных" языках. Программист Go каждый раз должен делать осознанный выбор между "я забью на обработку ошибок" или " я обработаю эту ошибку сейчас", когда видит, что функция возвращает значение ошибки. Это дает возможность прямолинейно писать код и так же без труда его читать. В других же языках, чаще всего программист вообще не делает выбор, а просто забивает на обработку ошибок. Но в случае, когда обработка ошибок все-таки происходит, то везде вставляются try-catch блоки, что ведет к превращению кода в кашку и появлению побочных мануалов "как правильно отлавливать ошибки"

С жестким синтаксисом проблемы стиля кода отваливаются by design. Все как при коммунизме: все пишут одинаково (если забиндили вызов gofmt на сохранение кода, либо вызвали его руками) и нет никаких if в одну строку или тернарных операторов в тернарных операторах. С таким подходом к стилю кода, можно нанимать джуниоров не опасаясь за "нововведения по стилю" - они будут сходу писать простой и читаемый код (инфа проверена и оттестирована)

С компилятором все понятно: экономит время и нервы разработчика. Это позволяет увеличить кол-во сборок и сглаживает итерации ручного тестирования при написании кода

Рекомендую начать учить Go, хотя бы для того, чтобы увидеть другой подход. Стоит попробовать написать на нем простейшее приложение с обработкой http запросов, либо бота для телеграмма. Язык учится максимум за неделю, а рвотный рефлекс от нового синтаксиса проходит практически сразу (особенно если забиндить на сохранение файлов не просто gofmt, а сразу вот это: https://github.com/bradfitz/goimports)

Я начал познавать Go с этого тура: https://tour.golang.org

#golang #go