User Эллеонора Керри
Эллеонора Керри
41 уровень

В закладки: подборка статей о паттернах проектирования — теория, вопросы на собеседованиях и обзор книги

Статья из группы Random
Для удобства учеников JavaRush мы решили собрать лекции и статьи о самых важных темах в программировании. Первая подборка — о паттернах проектирования. В мини-гайде мы кратко излагаем суть статей, а если перейти по ссылке — можно подробнее ознакомиться с интересующей темой. Добавляйте подборку в закладки и возвращайтесь к ней, когда потребуется. В закладки: подборка статей о паттернах проектирования — теория, вопросы на собеседованиях и обзор книги - 1

Лекции о главных паттернах проектирования

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

Синглтон — это один из самых простых шаблонов (паттернов) проектирования, который применяется к классу. Иногда говорят: "этот класс — синглтон", подразумевая, что этот класс реализует паттерн проектирования синглтон. Иногда необходимо написать класс, у которого можно будет создать только один объект. Например, класс, отвечающий за логирование или подключение к базе данных.

Паттерн проектирования "Адаптер"

В этой лекции знакомимся с паттерном под названием "Адаптер". "Название у него говорящее, и ты не раз встречался с адаптерами в реальной жизни. Один из самых распространенных адаптеров — кардридеры, которыми снабжены множество компьютеров и ноутбуков", — рассказывает автор о паттерне. Как и в предыдущих лекциях, на примере кода поясняется, как работает паттерн.

Паттерн проектирования "Стратегия"

В статье рассматривают один из наиболее распространенных паттернов под названием "Стратегия". Паттерн «Стратегия» определяет семейство алгоритмов, инкапсулирует каждый из них и обеспечивает их взаимозаменяемость. Он позволяет модифицировать алгоритмы независимо от их использования на стороне клиента.

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

Bridge решает эту задачу путем разделения одного или нескольких классов на отдельные иерархии — абстракцию и реализацию. Изменение функционала в одной иерархии не влечет за собой изменения в другой. В статье перечисляются плюсы и минусы паттерна, где он применяется, и на практике разбирают, как он работает.

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

Паттерн Proxy помогает решить проблемы, связанные с контролируемым доступом к объекту. На примерах автор разбирает, в каких ситуациях может понадобиться знание этого паттерна, его преимущества и недостатки. И много полезного кода!

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

В этой лекции автор рассказываем о Фабрике: какую проблему решают с помощью данного шаблона, покажем пример, как Фабрика помогает открывать кофейню. А еще в этой лекции есть 5 простых шагов для создания Фабрики.

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

Вы узнаете, что такое фабричный метод и для решения каких задач подходит данный шаблон. Мы рассмотрим этот паттерн проектирования на практике и изучим его структуру. Шаблон проектирования фабричный метод решает проблему создания различных групп продуктов, каждая из которых обладает некоторой спецификой.

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

Лекцию надо читать, чтобы узнать, что такое абстрактная фабрика и какую проблему данный паттерн решает. Также в лекции показывают пример создания каркаса кроссплатформенного приложения для заказа кофе с пользовательским интерфейсом. В качестве бонуса, в лекции спрятана пасхалка, благодаря которой вы научитесь определять имя операционной системы с помощью Java и в зависимости от результата выполнять то или иное действие.

Паттерны проектирования в Java [Часть 1]

Краткая статья по паттернам проектирования в Java. Она будет полезна тем, кто уже в теме, для повторения и обобщения. Или напротив, для тех, кто первый раз подошел к паттернам — для самого первого обзора темы, прежде, чем копнуть глубже.

Паттерны проектирования в Java [Часть 2]

В продолжении предыдущей статьи автор показывает, как использовать паттерны.

Паттерны проектирования в “вопросах и ответах на собеседованиях”

Разбор вопросов и ответов с собеседований на Java-разработчика. Часть 1

Собеседуя джунов, работодатели любят спрашивать о паттернах. Эта статья поможет подготовиться к таким вопросам. Среди прочего — в ней много другой полезной информации для технического интервью.

Уровень 37. Ответы на вопросы к собеседованию по теме уровня

Весь текст посвящен разбору вопросов на собеседованиях, связанных с паттернами проектирования. Что такое паттерны, какими они бывают, зачем нужны и где применять — все есть в этой статье.

Лекции об антипаттернах

Вполне может быть, что на собеседовании вас могут спросить и об антипаттернах — злых братьях-близнецах паттернов, поэтому мы решили добавить их в эту подборку.

Что такое антипаттерны? Разбираем примеры (часть 1)

В этой статье разбираются антипаттерны области управления, архитектуры и проблемы разработки.

Что такое антипаттерны? Разбираем примеры (часть 2)

В тексте разбирают такие антипаттерны, как золотой молоток, преждевременная оптимизация, спагетти-код, магические числа. В общем, гоу читать!

Бонус

Обзор книги “Паттерны проектирования” (Head First Design Patterns)

Эта книга входит в десятку самых популярных на Stackoverflow, и небезосновательно. Легкость подачи, фундаментальная тема и качественные примеры делают книгу востребованной. Среди людей, которые хотя бы минимально знакомы с серией Head First, есть немало тех, кто считает подобную литературу довольно поверхностным чтивом для новичков. Рекомендуем прочитать обзор, а может и книгу, и сделать собственные выводы.

Полезный ресурс: Рефакторинг.Гуру

“Рефакторинг.Гуру” посвящен темным материям программирования: рефакторингу, паттернам проектирования, принципам SOLID и другим важным темам из мира программирования. На сайте собран каталог паттернов, описана история их появления, польза и недостатки.
Другие материалы серии:
В закладки: подборка статей о паттернах проектирования — теория, вопросы на собеседованиях и обзор книги - 2
Комментарии (10)
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
Юличка Уровень 32, Москва, Россия
1 августа 2021
Подскажите пожалуйста, как здесь добавлять в закладки?
Артур Уровень 3
17 июля 2021
Здравствуйте! А как добавить в закладки статью на сайте? Или имеются ввиду закладки браузера?
Павел Уровень 35
15 июля 2021
Очень приятно, что вы JR, перестаете почивать на лаврах былых заслуг и начинаете работать на благо людей🙌 вас содержащих.
Robert Imangulov Уровень 43, Мелеуз, Россия
14 июля 2021
Большое спасибо за подборку!