Паттерны проектирования на Go (Golang)
Применение классических и современных паттернов в разработке на Go
Краткое содержимое:
Книга «Паттерны проектирования на Go» — это практическое руководство по применению классических и современных паттернов в разработке на языке Go (Golang). В отличие от традиционных изданий, ориентированных на Java или C++, эта книга учитывает особенности Go: отсутствие наследования, встроенные горутины и каналы, интерфейсы как основной механизм абстракции.
Книга разделена на три части:
- Порождающие паттерны — синглтон, строитель, фабричный метод, абстрактная фабрика, прототип. Рассматриваются особенности реализации в Go с учётом идиом языка.
- Структурные паттерны — адаптер, мост, компоновщик, декоратор, фасад, заместитель. Примеры применения для организации кода и разделения ответственности.
- Поведенческие паттерны — цепочка обязанностей, команда, итератор, посредник, снимок, наблюдатель, состояние, стратегия, шаблонный метод, посетитель. Особое внимание уделено интеграции с горутинами и каналами.
Каждый паттерн сопровождается:
- подробным описанием проблемы и контекста применения;
- диаграммой классов и взаимодействий;
- полным примером кода на Go с пояснениями;
- анализом преимуществ и недостатков;
- рекомендациями по альтернативным решениям в экосистеме Go.
Для кого эта книга:
- Go-разработчики, желающие улучшить архитектуру своих проектов;
- программисты, переходящие с других языков на Go и ищущие аналоги привычных паттернов;
- тимлиды и архитекторы, проектирующие масштабируемые и поддерживаемые системы;
- студенты и изучающие Go, которые хотят освоить профессиональные практики разработки.
Читатель узнает:
- как адаптировать классические паттерны под идиоматичный Go;
- какие паттерны эффективны в конкурентной среде с горутинами;
- как избегать антипаттернов и излишней сложности;
- как строить гибкую архитектуру, устойчивую к изменениям требований.
Книга содержит более 20 паттернов, каждый с рабочим кодом, который можно сразу использовать в реальных проектах. Все примеры протестированы на последней версии Go и соответствуют современным стандартам кодирования.
Эта книга станет настольным справочником для любого Go-разработчика, стремящегося писать чистый, модульный и легко поддерживаемый код.
Рекомендаций
Безопасность TypeScript приложений
Алгоритмы и структуры данных на Go (Golang)
JavaScript (Node.js) и Kubernetes: Практическое руководство по оркестрации
Паттерны проектирования на Kotlin: 23 классических шаблона
Алгоритмы и структуры данных на TypeScript
Конкурентность в Rust: Осваиваем асинхронное программирование и многопоточность