Let's Go Further: Продвинутые приёмы разработки на Go — Alex Edwards — обложка книги
590 страниц
Go (Golang)
PDF
4.5

Let's Go Further: Продвинутые приёмы разработки на Go

Продвинутый Go: REST API, базы данных и деплой

Автор:

Год:

Краткое содержимое:

Введение

Книга «Let's Go Further» (2022) Алекса Эдвардса — это логическое продолжение его бестселлера «Let's Go», посвящённого основам веб-разработки на языке Go. Если первая книга закладывала фундамент (маршрутизация, шаблоны, middleware, работа с БД), то «Let's Go Further» поднимает планку: здесь вы научитесь создавать production-ready REST API, управлять сложными запросами к PostgreSQL, внедрять аутентификацию на основе JWT и токенов, писать интеграционные тесты и разворачивать приложение на сервере. Книга вышла в 2022 году, насчитывает 590 страниц и ориентирована на разработчиков, уже знакомых с основами Go.

О чём книга

«Let's Go Further» — это практическое руководство по созданию полноценного веб-сервиса на Go. Автор последовательно ведёт читателя от проектирования архитектуры до деплоя. Основные темы:

  • Проектирование RESTful API с нуля (маршруты, обработчики, JSON-ответы);
  • Работа с PostgreSQL: миграции, сложные запросы, транзакции, пагинация;
  • Аутентификация и авторизация: JWT, bcrypt, refresh-токены, middleware;
  • Обработка ошибок и валидация данных (кастомные типы ошибок, структурированные ответы);
  • Тестирование: unit-тесты, интеграционные тесты с тестовой БД, mock-объекты;
  • Деплой: сборка Docker-образа, настройка CI/CD, работа с переменными окружения;
  • Производительность: пулы соединений, кэширование, профилирование.

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

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

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

  • Backend-разработчикам, переходящим на Go с других языков;
  • Разработчикам, которые хотят изучить лучшие практики построения REST API;
  • Тем, кто хочет научиться писать тесты и настраивать CI/CD для Go-проектов;
  • Студентам и выпускникам курсов, желающим получить практический опыт.

Если вы только начинаете изучать Go, лучше сначала прочитать «Let's Go» того же автора — эта книга предполагает уверенное владение основами.

Что узнает читатель

После прочтения «Let's Go Further» вы сможете:

  • Спроектировать и реализовать RESTful API с поддержкой CORS, пагинации, фильтрации;
  • Работать с PostgreSQL через database/sql и pgx (пулы, транзакции, миграции);
  • Реализовать аутентификацию с помощью JWT и refresh-токенов;
  • Писать интеграционные тесты, которые запускаются в изолированной БД;
  • Настроить Docker-контейнер для приложения и базы данных;
  • Оптимизировать производительность: профилировать, кэшировать, управлять соединениями;
  • Структурировать код так, чтобы его было легко поддерживать и расширять.

Сильные стороны

Главное достоинство книги — её практическая направленность. Каждая концепция сопровождается работающим кодом, который можно скачать с GitHub. Автор не просто объясняет теорию, а показывает, как принимать решения в реальной разработке: почему выбран тот или иной паттерн, как избежать типичных ошибок. Книга написана живым, понятным языком, без излишней академичности. Особенно ценны главы про тестирование и деплой — эти темы редко освещаются так подробно в других руководствах. Ещё один плюс — актуальность: книга вышла в 2022 году и использует современные версии Go и библиотек.

Кому рекомендуется

Я настоятельно рекомендую «Let's Go Further» всем, кто хочет перейти от написания учебных проектов к созданию коммерческих сервисов на Go. Книга идеально подойдёт для самостоятельного изучения: вы можете читать её последовательно или использовать как справочник по конкретным темам. Если вы уже работаете с Go, но чувствуете пробелы в архитектуре, тестировании или деплое — эта книга закроет их. Для команд, переходящих на Go, она может стать стандартом внутреннего обучения.

В целом, «Let's Go Further» — это must-read для любого серьёзного Go-разработчика. Она не только учит писать код, но и формирует правильный инженерный подход к созданию веб-сервисов.

Рекомендаций