Как стать автором
Обновить

Комментарии 6

А есть какие-нибудь книги по Го для программистов, опытных в языке? Что-нибудь более глубокое. Разбор практик принятых в разных известных компаниях и проектах. Что-то за пределами синтаксиса и GoTour...

Предлагаем обратить своё внимание на:
- 100 ошибок Go и как их избежать
- Golang для профи: Создаем профессиональные утилиты, параллельные серверы и сервисы, 3-е изд.

Книги для опытных Go-разработчиков, хорошо знакомых с синтаксисом языка.

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

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

Не думаю, что чего-то прям "глубокого" по этому языку можно узнать. Всё что глубже его синтаксиса, механизмов, модели памяти и псевдо ООП - это уже нужно углубляться в изучение платформы конкретной, на которой работает это приложение (Linux, Windows, MacOS), чтобы понимать что там с горутинами и каналами происходит (как они реализованы на низком уровне). А все основные подходы там жёстко зафиксированы (даже наименование методов нельзя контролировать - ошибки компилятора можно в разных случаях схватить).

Мне он как язык программирования совсем не нравится, хоть и имел я с ним опыт работы порядка одного года. Очень он ограниченный, шаблонный и мне на нём просто сложно даже мысль свою выражать. Лучше чем C++ я ещё не нашёл :) Там прям хороший баланс между низкоуровневыми и высокоуровневыми вещами выдержан, рекомендую ;)

Возможно моя оценка "глубины Go" чрезмерно критична, но всё же захотел ей поделиться :)

Вот это неплохая

"Concurrency in Go: Tools and Techniques for Developers"

Всегда удивлялся, что люди после java переходят на go. Единственный реальный плюс, который был актуален до недавнего времени, это горутины (сейчас после релиза loom это больше не актуально). Другие аргументы вроде "spring сложный, аннотации неочевидны" мягко скажем не про java и если у вас нет необходимости их использовать - это необязательно. Но больше всего меня поразило, когда в go наконец завезли генерики и я даже рассматривал его как потенциальный язык для следующего проекта, внезапно значительная часть комьюнити начала их хейтить, мол оно нам не надо. Это чем-то напомнило мне, как мои родители долго не переходили на смартфоны: "нам нужен кнопочный".

Зарегистрируйтесь на Хабре, чтобы оставить комментарий