Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/AlexanderGrom/go-patterns
Design patterns in Golang
https://github.com/AlexanderGrom/go-patterns
go golang patterns
Last synced: 28 days ago
JSON representation
Design patterns in Golang
- Host: GitHub
- URL: https://github.com/AlexanderGrom/go-patterns
- Owner: AlexanderGrom
- License: mit
- Created: 2015-08-13T10:33:26.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2021-04-15T17:42:30.000Z (over 3 years ago)
- Last Synced: 2024-08-03T23:26:35.901Z (4 months ago)
- Topics: go, golang, patterns
- Language: Go
- Size: 101 KB
- Stars: 1,819
- Watchers: 78
- Forks: 241
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-golang-repositories - go-patterns
README
## Паттерны проектирования с примерами на Golang
Это коллекция из 22 популярных паттернов проектирования с примерами кода на языке Go и кратким описанием паттерна.
В кратких описаниях будут употребляться классические термины, такие как Класс, Объект, Абстрактный Класс. Применимо к языку Go, это Тип, Значение этого типа и Интерфейс (где это возможно).
Умение правильно использовать шаблоны проектирования, так сказать, в нужном месте и в нужное время, помогут сохранить ваши нервные клетки.
## Установка
Вы можете скачать этот репозиторий и запустить тесты
```bash
$ go get github.com/alexandergrom/go-patterns
```## Паттерны
### [Порождающие (Creational)](Creational)
* [Абстрактная фабрика (Abstract Factory)](Creational/AbstractFactory)
* [Строитель (Builder)](Creational/Builder)
* [Фабричный метод (Factory Method)](Creational/FactoryMethod)
* [Прототип (Prototype)](Creational/Prototype)
* [Одиночка (Singleton)](Creational/Singleton)### [Структурные (Structural)](Structural)
* [Адаптер (Adapter)](Structural/Adapter)
* [Мост (Bridge)](Structural/Bridge)
* [Компоновщик (Composite)](Structural/Composite)
* [Декоратор (Decorator)](Structural/Decorator)
* [Фасад (Facade)](Structural/Facade)
* [Приспособленец (Flyweight)](Structural/Flyweight)
* [Заместитель (Proxy)](Structural/Proxy)### [Поведенческие (Behavioral)](Behavioral)
* [Цепочка ответственности (Chain Of Responsibility)](Behavioral/ChainOfResponsibility)
* [Команда (Command)](Behavioral/Command)
* [Итератор (Iterator)](Behavioral/Iterator)
* [Посредник (Mediator)](Behavioral/Mediator)
* [Хранитель (Memento)](Behavioral/Memento)
* [Наблюдатель (Observer)](Behavioral/Observer)
* [Состояние (State)](Behavioral/State)
* [Стратегия (Strategy)](Behavioral/Strategy)
* [Шаблонный метод (Template Method)](Behavioral/TemplateMethod)
* [Посетитель (Visitor)](Behavioral/Visitor)## -~- THE END -~-