Логотип LiveLibbetaК основной версии

Рецензия на книгу

Go. Идиомы и паттерны проектирования

Джон Боднер

  • Аватар пользователя
    sariya118 августа 2024 г.

    Знакомство с Гофером

    Книга просто пушка-бомба. Есть, конечно, главы, которые написаны сложновато или не до конца раскрывают тему, но 90% материала написаны отлично. Еще версия Go в книге 1.14, то есть очень старая (на момент чтения последняя версия 1.23).

    У меня есть бэкграунд в разработке/программировании. И огромный плюс книги в том, что автор не разжевывает общие концепции, а делает упор на том, что уникально для Go. Например, автор показывает как настроить окружение под Go. Скучать разработчиком с опытом не придется. Подойдет ли она тем, кто вообще не знаком с языками программирования - скорее да (не уверен), чем нет, потому что как я понял эта книга самая простая, которая есть по Go. Также к плюсам отнесу то, что автор иногда раскрывает как что-то работает под капотом. И огромнейший плюс - глава про ТЕСТИРОВАНИЕ. Глава про конкурентность не очень хорошая, не все понятно с первого раза да примеры скудные. Что-то понял, но не до конца. Может это связано со сложностью темы именно для меня.

    Теперь к минусам. Глава про контекст - ужасная. Примеры, ну просто жесть. Вместо того, чтобы понять, что такое контекст, ты пытаешься разобраться в коде автора (об этом дальше). Я ее даже не дочитал, а пошел смотреть видос на ютубе. И я понял, что такое контекст и зачем он нужен. Глава про стандартные библиотеки мне тоже не понравилась по той же причине - ужасные примеры. Опять же пошел читать статьи и смотреть видосы. Глава про модули 50/50. Вот почему автор не удосужился написать о том, как импортировать локальные пакеты? У него примеры только с пакетами из удаленных репозиториев. Представили человека, который прочитав эту книгу, будет каждый вспомогательный одномоментный пакет выкладывать на гитхаб? Может это я дурак и что-то упустил. И последний минус - код автора. Чуть ли не в каждой главе он пишет про чистоту кода, про то, какой Go классный, идиоматичный и все такое. Видел бы этот код Роберт Мартин, то у него бы глаза выплали. "a, b, xt, c и прочие твари" - вот так можно охарактеризовать код из книги. И вот представьте, что вы читаете главу про контекст и к этому еще должны выполнять роль расшифровщика переменных. Самый прикол в том, что эта цитата принадлежит автору - "Более короткий код далеко не всегда является более понятным и легким в сопровождении"

    Несмотря на минусы я бы все равно прочитал ее еще раз. По ощущениям она базовая. То есть must have для тех, кто хочет начать писать на Go.

    3
    190