{"id":14279,"url":"\/distributions\/14279\/click?bit=1&hash=4408d97a995353c62a7353088166cda4ded361bf29df096e086ea0bbb9c1b2fc","title":"\u0427\u0442\u043e \u0432\u044b\u0431\u0435\u0440\u0435\u0442\u0435: \u0432\u044b\u0435\u0445\u0430\u0442\u044c \u043f\u043e\u0437\u0436\u0435 \u0438\u043b\u0438 \u0437\u0430\u0435\u0445\u0430\u0442\u044c \u0440\u0430\u043d\u044c\u0448\u0435?","buttonText":"","imageUuid":""}

ТОП-7 книг по Golang: новинки 2023 по языку программирования Go на русском и на английском языках

Представляю вашему вниманию топ 7 книг по языку программирования Go, получивших высокую оценку от читателей Амазон в 2023 году. Любую из этих книг в оригинале можно купить через сервис Booken, там же можно заказать перевод книги на русский язык.

Содержание

#1 Building Modern CLI Applications in Go: Develop next-level CLIs to improve user experience, increase platform usage, and maximize production - Создание современных приложений CLI на Go: разрабатывайте интерфейсы командной строки нового уровня для улучшения пользовательского опыта, увеличения использования платформы и максимизации производительности.

4.8 🌕🌕🌕🌕🌖

Building Modern CLI Applications in Go. Marian Montagnino. 2023.03.10

Ключевые особенности книги

  • Узнайте, как Go позволяет разрабатывать элегантные и интуитивно понятные интерфейсы командной строки.
  • Изучите ряд аспектов разработки CLI и почерпните множество лучших практик.
  • Создавайте привлекательные и удобные интерфейсы и научитесь их распространять.

Описание книги

Хотя графические пользовательские интерфейсы (GUI) интуитивно понятны и удобны для пользователя, ничто не сравнится с интерфейсом командной строки (CLI), когда дело касается производительности. Многие организации соглашаются на графический интерфейс, не ища альтернатив, которые предлагают лучшую доступность и функциональность.

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

После ознакомления со стандартами CLI и Go вы познакомитесь с проектированием инструментов и правильным использованием инфраструктуры для настоящего мастерства разработки. Затем книга переходит ко всем аспектам CLI, помогая вам освоить все: от аргументов и флагов до ошибок и вызовов API. Позже вы углубитесь в нюансы эмпатической разработки, чтобы обеспечить наилучший UX, прежде чем закончить работу с тегами сборки, кросс-компиляцией и распространением на основе контейнеров.

К концу этой книги по UX вы будете полностью готовы поднять производительность и гибкость приложений вашей организации на новый уровень.

Что вы узнаете

  • Освойте структуру кода Go, тестирование и другие основы.
  • Добавьте красочную информационную панель в свой интерфейс командной строки, используя привлекательные баннеры ASCII.
  • Используйте Cobra, Viper и другие платформы, чтобы дать преимущество вашему интерфейсу командной строки.
  • Обрабатывайте входные данные, команды API, ошибки и тайм-ауты как профессионал.
  • Правильный выбор целевых сборок для конкретных платформ с использованием тегов сборки.
  • Создавайте с сочувствием, используя простую отправку ошибок и отслеживание ошибок.
  • Контейнеризируйте, распространяйте и публикуйте свои интерфейсы командной строки быстро и легко.

Для кого эта книга

Эта книга предназначена для разработчиков Golang начального и среднего уровня, которые интересуются разработкой CLI и любят учиться на практике. Вам понадобится понимание основных концепций программирования на Golang, но вам не потребуются предварительные знания по проектированию и разработке CLI. Эта книга поможет вам присоединиться к сообществу разработчиков CLI и распространять ее с помощью популярного инструмента управления пакетами Homebrew.

  • Купить книгу «Building Modern CLI Applications in Go» в оригинале
  • Заказать перевод книги «Создание современных приложений CLI на Go» на русском

#2 Functional Programming in Go: Apply functional techniques in Golang to improve the testability, readability, and security of your code - Функциональное программирование на Go: применяйте функциональные методы в Golang для улучшения тестируемости, читаемости и безопасности вашего кода.

4.9 🌕🌕🌕🌕🌖

Functional Programming in Go. Dylan Meeus. 2023.03.10

Ключевые особенности книги

  • Изучите методы функционального программирования на архитектурном уровне и используйте их для решения реальных задач.
  • Поймите, как думать о коде функционально.
  • Узнайте о компромиссах функционального программирования и объектно-ориентированного программирования (ООП) в Go.

Описание книги

Несмотря на то, что Go — это мультипарадигмальный язык, который дает вам возможность выбрать ту парадигму, которая лучше всего подходит для конкретной проблемы, которую вы хотите решить, он поддерживает функции, которые позволяют вам применять функциональные принципы в вашем коде. В этой книге вы узнаете о концепциях, центральных для парадигмы функционального программирования, а также о том, как и когда применять методы функционального программирования в Go.

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

К концу этой книги вы будете готовы улучшить свою кодовую базу, применяя методы функционального программирования на Go, чтобы писать более чистый, безопасный и безошибочный код.

Что вы узнаете

  • Получите более глубокое понимание функционального программирования с помощью практических примеров.
  • Создайте прочную основу для основных концепций FP и посмотрите, как они применимы к коду Go.
  • Узнайте, как FP может улучшить тестируемость вашей базы кода.
  • Применяйте функциональные шаблоны проектирования для решения проблем.
  • Поймите, когда следует выбирать, а когда не выбирать концепции FP.
  • Откройте для себя преимущества функционального программирования при работе с параллельным кодом.

Для кого эта книга

Если вы инженер Go с опытом работы в традиционно объектно-ориентированных языках, таких как Java или C++, и хотите расширить свои знания в области функционального программирования, эта книга для вас.

  • Купить книгу «Network Automation with Go» в оригинале
  • Заказать перевод книги «Автоматизация сети с помощью Go» на русском

#3 Network Automation with Go: Learn how to automate network operations and build applications using the Go programming language - Автоматизация сети с помощью Go: узнайте, как автоматизировать сетевые операции и создавать приложения с помощью языка программирования Go.

4.7 🌕🌕🌕🌕🌖

Network Automation with Go. Nicolas Leiva. 2023.01.05

Ключевые особенности книги

  • Комплексный путеводитель по миру современной сетевой автоматизации.
  • Используйте Go для создания чего угодно: от автоматизации повторяющихся задач до сложных распределенных систем.
  • Более 30 практических, готовых к использованию примеров программ.

Описание книги

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

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

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

К концу этой книги вы будете хорошо разбираться в Go и иметь четкое представление о сетевой автоматизации.

Что вы узнаете

  • Понять основы языка программирования Go на примерах, связанных с сетью.
  • Узнайте, какие функции делают Go мощной альтернативой для автоматизации сети.
  • Изучите цели, преимущества и распространенные случаи автоматизации сети.
  • Узнайте, как взаимодействовать с сетевыми устройствами с помощью различных технологий.
  • Интегрируйте программы Go в среду автоматизации.
  • Воспользуйтесь преимуществами экосистемы OpenConfig с помощью Go.
  • Создавайте распределенные и масштабируемые системы для наблюдения за сетью.

Для кого эта книга

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

  • Купить книгу «Functional Programming in Go» в оригинале
  • Заказать перевод книги «Функциональное программирование на Go» на русском

#4 Effective Concurrency in Go: Develop, analyze, and troubleshoot high performance concurrent applications with ease - Эффективный параллелизм в Go: с легкостью разрабатывайте, анализируйте и устраняйте неполадки высокопроизводительных параллельных приложений.

4.8 🌕🌕🌕🌕🌖

Effective Concurrency in Go. Burak Serdar. 2023.04.21

Ключевые особенности книги

  • Узнайте о примитивах параллелизма Go, модели памяти Go и общих шаблонах параллелизма.
  • Получите представление о том, как моделировать решения реальных проблем с использованием параллелизма.
  • Изучите практические методы анализа поведения параллельных программ.

Описание книги

Язык Go набирает обороты благодаря тому, что параллелизм рассматривается как основная функция языка, что делает параллельное программирование более доступным, чем когда-либо. Тем не менее, параллелизм по-прежнему является сложным навыком для освоения, поскольку он требует развития правильного мышления для правильного разложения проблем на параллельные компоненты. Эта книга поможет вам углубить понимание параллелизма и покажет, как максимально эффективно использовать его преимущества.

Вы начнете с изучения того, какие гарантии предлагает язык при запуске параллельных программ. На нескольких примерах вы увидите, как использовать эту информацию для разработки параллельных алгоритмов, которые работают без гонок за данными и успешно завершаются. Вы также узнаете все, что вам нужно знать о нескольких распространенных шаблонах параллелизма, таких как рабочие пулы, асинхронные конвейеры, разветвление, планирование периодических или будущих задач, а также обработка ошибок и паники в подпрограммах goroutines.

Центральная тема этой книги — дать вам, разработчику, понимание того, почему параллельные программы ведут себя именно так и как их можно использовать для создания правильных программ, которые работают одинаково на всех платформах.

К моменту окончания последней главы вы сможете разрабатывать, анализировать и устранять неполадки параллельных алгоритмов, написанных на Go.

Что вы узнаете

  • Понимание основных концепций и проблем параллелизма.
  • Узнайте о примитивах параллелизма Go и о том, как они работают.
  • Узнайте о модели памяти Go и почему это важно.
  • Поймите, как использовать общие шаблоны параллелизма.
  • Посмотрите, как можно справиться с ошибками в параллельной программе.
  • Откройте для себя полезные методы устранения неполадок.

Для кого эта книга

Если вы разработчик с базовыми знаниями Go и хотите получить опыт в разработке высокопараллельных серверных приложений, то эта книга для вас. Разработчики Go среднего уровня, которые хотят сделать свои серверные системы более надежными и масштабируемыми, также найдут много полезной информации. Обязательным условием является предварительное знакомство с языком Go.

  • Купить книгу «Effective Concurrency in Go» в оригинале
  • Заказать перевод книги «Эффективный параллелизм в Go» на русском

#5 Test-Driven Development in Go: A practical guide to writing idiomatic and efficient Go tests through real-world examples - Разработка через тестирование на Go: практическое руководство по написанию идиоматических и эффективных тестов Go на реальных примерах.

4.7 🌕🌕🌕🌕🌖

Test-Driven Development in Go. Adelina Simion. 2023.04.28

Ключевые особенности книги

  • Напишите наборы тестов Go, используя популярные фреймворки для макетирования и тестирования.
  • Используйте TDD для реализации тестирования на всех уровнях архитектуры веб-приложений и микросервисов.
  • Овладейте искусством написания тестов, охватывающих крайние случаи и параллельный код.

Описание книги

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

Книга начинается с обучения тому, как использовать TDD для решения различных задач — от простых математических функций до веб-приложений. Затем вы научитесь структурировать и запускать модульные тесты с использованием стандартной библиотеки тестирования Go, а также изучите две популярные среды тестирования: Testify и Ginkgo. Вы также будете реализовывать наборы тестов с использованием табличного тестирования — популярной техники Go. По мере продвижения вы будете писать и запускать тесты разработки на основе поведения (BDD), используя Ginkgo и Godog.

Наконец, вы изучите сложные аспекты внедрения и тестирования TDD в рабочей среде, такие как рефакторинг вашего кода и тестирование архитектуры микросервисов с помощью контрактного тестирования, реализованного с помощью Pact. Все эти методы будут продемонстрированы на примере REST API, а также на небольших примерах специального кода.

К концу этой книги вы узнаете, как разработать и реализовать комплексную стратегию тестирования для ваших приложений Go и архитектуры микросервисов.

Что вы узнаете

  • Создавайте практические модульные тесты Go, используя макеты и утверждения с помощью Testify.
  • Создавайте наборы тестов на основе таблиц для веб-приложений HTTP.
  • Напишите тесты в стиле BDD, используя среду тестирования Ginkgo.
  • Используйте среду тестирования Godog для надежного тестирования веб-приложений.
  • Проверяйте архитектуру микросервисов с помощью контрактного тестирования Pact.
  • Разрабатывайте тесты, охватывающие крайние случаи, используя тестирование свойств и фаззинг.

Для кого эта книга

Если вы разработчик среднего уровня или специалист по тестированию программного обеспечения, который знает основы Go и хочет реализовывать проекты с помощью Go, то эта книга для вас. Знание синтаксиса, структур, функций и интерфейсов Go поможет вам извлечь максимальную пользу из этой книги.

  • Купить книгу «Test-Driven Development in Go» в оригинале
  • Заказать перевод книги «Разработка через тестирование на Go» на русском

#6 Full-Stack Web Development with Go: Build your web applications quickly using the Go programming language and Vue.js - Полноценная веб-разработка с помощью Go: быстро создавайте свои веб-приложения, используя язык программирования Go и Vue.js.

3.3 🌕🌕🌕🌘

Full-Stack Web Development with Go. Nanik Tolaram. 2023.02.24

Ключевые особенности книги

  • Узнайте, как структурировать свои проекты Go, быть умнее с SQLc, создавать промежуточное ПО и защищать свои приложения.
  • Изучите различные интерфейсные фреймворки и погрузитесь в Vue и Tailwind CSS.
  • Используйте Terraform и Docker и развертывайте за считанные минуты.

Описание книги

Go — это современный язык программирования, позволяющий создавать высокопроизводительные приложения. Благодаря растущей экосистеме веб-фреймворков Go является предпочтительным выбором для создания полноценных веб-приложений. Это практическое руководство позволит вам поднять свои навыки Go на новый уровень, создавая полнофункциональные приложения.

Эта книга поможет вам создать и разработать полноценный современный веб-сервис с использованием аутентификации, промежуточного программного обеспечения, серверного рендеринга, баз данных, современных интерфейсных инфраструктур и API на базе Go. Вы начнете со структурирования приложения и важных аспектов, таких как сетевое взаимодействие, а затем объедините все различные части вместе для создания полноценного веб-продукта. Далее вы узнаете, как создавать и поставлять законченный продукт, начав с фундаментальных строительных блоков создания серверной части Go. Вы примените лучшие практики в отношении файлов cookie, API и безопасности, а также повысите свои навыки с помощью самой быстрорастущей среды внешнего интерфейса Vue. Как только ваше полнофункциональное приложение будет готово, вы поймете, как запустить его в продакшн, и будете готовы обслуживать клиентов и делиться им со всем миром.

К концу этой книги вы узнаете, как создавать и поставлять безопасные, масштабируемые и полноценные продукты, а также как комбинировать Golang с существующими продуктами, используя лучшие практики.

Что вы узнаете

  • Узнайте, как быстро создавать, структурировать и создавать приложения Golang.
  • Проектируйте и создавайте базы данных с использованием PostgreSQL и SQLc для генерации типобезопасного кода SQL.
  • Мониторинг приложений с централизованным журналированием и сбором метрик для обеспечения высокой производительности.
  • Изучите интерфейсные платформы и библиотеки, такие как Vuetify, Buefy и Tailwind CSS, чтобы создать адаптивный интерфейс для вашего приложения.
  • Безопасная связь между интерфейсом и сервером с помощью файлов cookie и обработки сеансов с помощью промежуточного программного обеспечения.
  • Поймите, как упаковывать приложения с помощью Docker и настраивать конвейеры CI в GitHub.

Для кого эта книга

Эта книга предназначена для программистов Go, которые хотят объединить возможности языка Go с современными технологиями веб-разработки для создания полноценных веб-приложений от внешнего интерфейса до внутреннего интерфейса. Книга предполагает начальный уровень знаний HTML, CSS и Интернета.

#7 Network Programming and Automation Essentials: Get started in the realm of network automation using Python and Go - Основы сетевого программирования и автоматизации: начните работу в области сетевой автоматизации с использованием Python и Go.

5.0 🌕🌕🌕🌕🌕

Ключевые особенности книги

  • Понимание основ сетевого программирования и автоматизации.
  • Изучите советы и рекомендации по переходу от традиционных сетей к автоматизированным сетям.
  • Решайте повседневные проблемы с помощью фреймворков автоматизации на Python и Go.

Описание книги

Сетевое программирование и автоматизация, в отличие от традиционных сетевых технологий, — это современный навык, который помогает в настройке, управлении и эксплуатации сетей и сетевых устройств. Эта книга предоставит вам важную информацию, которая поможет вам настроить и начать работу с сетевым программированием и автоматизацией.

С помощью курса «Основы сетевого программирования и автоматизации» вы вкратце изучите основы работы в сети. Вы изучите экосистему сетевого программирования и автоматизации, узнаете о ведущих программируемых интерфейсах и познакомитесь с протоколами, инструментами, методами и технологиями, связанными с сетевым программированием. В этом подробном руководстве вы также освоите автоматизацию сети с использованием Python и Go с помощью практических занятий и реальной эмуляции сети.

К концу этой книги вы будете хорошо подготовлены к эффективному программированию и автоматизации сетей.

Что вы узнаете

  • Понять основы сетевого программирования.
  • Изучите программно-определяемые сети и связанные семейства.
  • Осознайте различия между Go и Python посредством сравнения.
  • Используйте лучшие практики Go и Python.
  • Создайте свою собственную среду тестирования автоматизации сети, используя эмуляцию сети.
  • Приобретите навыки использования фреймворков и стратегий автоматизации.

Для кого эта книга

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

  • Купить книгу «Network Programming and Automation Essentials» в оригинале
  • Заказать перевод книги «Основы сетевого программирования и автоматизации» на русском
0
3 комментария
Alexandr Yurovskih

Спасибо за отличную книжную подборку. Как раз искал источники по Go.

Ответить
Развернуть ветку
Александра Борош

Обожаю подборки книг, спасибо, что с описанием)

Ответить
Развернуть ветку

Комментарий удален автором поста

Развернуть ветку
evgeniyaniya

какая книга все таки наиболее полезная ?

Ответить
Развернуть ветку
0 комментариев
Раскрывать всегда