18/4/2017 · Для гиков Технические темы

Год с Go в реальной работе - там водятся драконы.

Примерно год назад, в заметкe Go или не Go? я легкомысленно пообещал рассказать как показал себя Go в реальной работе. Пришло время исполнять взятые на себя обязательства.

За отчетный период с языком мало что поменялось, но в экосистеме произошло заметное улучшение - JetBrains взялись за Go по большому и иx Gogland IDE дошла до состояния "этим можно пользоваться". Штука у них получается неплохая и заметно, что разработка идет в правильные стороны. Я перешел на Gogland на своем основном рабочем компьютере, где провожу 80% времени. На лэптопе продолжаю использовать Atom + go-plus в основном по причине неуемного аппетита Gogland, который очень любит кушать батарейки.

За этот год я завершил довольно крупный проект, полностью на Go. Это около двух десятков сервисов разной степени замысловатости, отвечающих как за массивные операции по обработке данных, так и за весьма нетривиальную логику анализа этих данных на лету и в режиме предварительной обработки. Все это хозяйство обладает REST (и не только) API и обложено разными системными сервисами большая часть которых тоже на Go.

В проекте, кроме меня, постоянно трудятся еще пара программистов и пара бизнес аналитиков. Время от времени подключаются еще полтора программиста под разные непрофильные задачи. Все программисты пришли в проект без всякого предыдущего опыта на Go, аналитики (да, они у нас тоже иногда должны видеть код) про Go раньше не слыхали.

Мое субъективно-экспертное ощущение от Go, на фоне всего перечисленного:

И в завершение - при всем при этом мое, годовой давности, впечатление "На Go можно писать код, можно читать код и оба эти процесса на удивление приятны" остается неизменным. Возможно, я поспешил с "Go очень простой язык. T.e. совсем, совсем простой..". Да, он с виду прост, но иногда, за границами этой простоты водятся драконы.

Comments powered by Disqus