Паттерны проектирования Flashcards

1
Q

Что такое паттерны проектирования

A

Готовые решение распространенных в программировании проблем проектирования ПО

В ООП решают проблемы создания и взаимодействия объектов

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Какие бывают паттерны проектирования

A

Creational patterns(порождающие)
Structural patterns(структурные)
Behavioral patterns(поведенческие)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Creational patterns(порождающие)

A

Builder
Singlton

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Structural patterns(структурные)

A

Фасад
Декоратор

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Behavioral patterns(поведенческие)

A

Итератор
Наблюдатель

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Builder

A

Позволяет создавать сложные объекты пошагово. Строитель дает возможность использовать один и тот же код строительства для получения разных представлений объектов.
Часто используется для сериализации и десериализациию
В примере использовалась библиотека lombok

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Singlton(антипатерн)

A

Гарантирует, что у класса есть только один экземпляр, и предоставляет к нему глобальную точку доступа.
Чаще всего встречается в классе- конфигурации

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Фасад

A

Предоставляет простой интерфейс к сложной системе классов, библиотеке или фреймворку
По сути все прячется, а для использования остается простые методы

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Декоратор

A

Позволять добавлять функциональности поверх
Например путем добавление аннотаций

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Итератор

A

Дает возможность последовательно обходить элементы составных объектов, не раскрывая их внутреннего представления
Например в коллекциях используется интерфейс Iterable, так что при любом обходе коллекций мы пользуемся этим паттерном

How well did you know this?
1
Not at all
2
3
4
5
Perfectly