Если вы видите что-то необычное, просто сообщите мне. Skip to main content

Паттерны проектирования с примерами на Golang

Это коллекция из 22 популярных паттернов проектирования с примерами кода на языке Go и кратким описанием паттерна.

В кратких описаниях будут употребляться классические термины, такие как Класс, Объект, Абстрактный Класс. Применимо к языку Go, это Тип, Значение этого типа и Интерфейс (где это возможно).

Умение правильно использовать шаблоны проектирования, так сказать, в нужном месте и в нужное время, помогут сохранить ваши нервные клетки.

Установка
Вы можете скачать этот репозиторий и запустить тесты

$ go get github.com/alexandergrom/go-patterns

Поведенческие паттерны (Behavioral)

Поведенческие паттерны делятся на два типа: 1. Паттерны уровня класса 2. Паттерны уровня объе...

Цепочка ответственности (Chain Of Responsibility)

Паттерн Chain Of Responsibility относится к поведенческим паттернам уровня объекта. Паттерн Chain...

Команда (Command)

Паттерн Command относится к поведенческим паттернам уровня объекта. Паттерн Command позволяет пре...

Итератор (Iterator)

Паттерн Iterator относится к поведенческим паттернам уровня объекта. Паттерн Iterator предоставля...

Посредник (Mediator)

Паттерн Mediator относится к поведенческим паттернам уровня объекта. Паттерн Mediator предоставля...

Хранитель (Memento)

Паттерн Memento относится к поведенческим паттернам уровня объекта. Паттерн Memento получает и со...

Наблюдатель (Observer)

Паттерн Observer относится к поведенческим паттернам уровня объекта. Паттерн Observer определяет ...

Состояние (State)

Паттерн State относится к поведенческим паттернам уровня объекта. Паттерн State позволяет объекту...

Стратегия (Strategy)

Паттерн Strategy относится к поведенческим паттернам уровня объекта. Паттерн Strategy определяет ...

Шаблонный метод (Template Method)

Паттерн Template Method относится к поведенческим паттернам уровня класса. Паттерн Template Metho...

Посетитель (Visitor)

Паттерн Visitor относится к поведенческим паттернам уровня объекта. Паттерн Visitor позволяет обо...

Порождающие паттерны (Creational)

Порождающие паттерны делятся на два типа: 1. Паттерны уровня класса 2. Паттерны уровня объект...

Структурные паттерны (Structural)

Структурные паттерны делятся на два типа: 1. Паттерны уровня класса 2. Паттерны уровня объект...

Спецификация (Specification)

Спецификация — шаблон проектирования, посредством которого представление правил бизнес логики мож...