7 паттернов проектирования, которые должен знать КАЖДЫЙ разработчик
ForrestKnight
0:00 / 0:00
7 паттернов проектирования, которые должен знать КАЖДЫЙ разработчик
1 371 587 просмотров · 1 год назад
ForrestKnight
705 тыс. подписчиков
1 371 587 просмотров · 1 год назад
Сегодня вы узнаете о 7 различных шаблонах проектирования программного обеспечения. Многие из них вы уже используете, осознаёте вы это или нет. Потому что, проще говоря, это решения распространённых проблем программирования, которые возникают снова и снова, независимо от используемого языка или платформы. Вот что такое шаблон проектирования. Повторяемое решение проблемы разработки программного обеспечения. Шаблоны, которые можно применять в различных ситуациях.
А ещё в 1994 году четыре разработчика, известные как «Банда четырёх», написали книгу, в которой задокументировали, каталогизировали и формализовали 23 часто используемых шаблона проектирования. Поэтому я настоятельно рекомендую прочитать эту книгу, поскольку она по-прежнему очень актуальна сегодня. Но все эти шаблоны делятся на 3 отдельные категории.
Создательные шаблоны — это всё о создании объектов. Таким образом, вместо непосредственного создания объектов, эти шаблоны дают вам больше гибкости в том, как объекты появляются. Представьте себе пиццерию — вы не просто смешиваете ингредиенты, у вас может быть меню из заранее определённых пицц (шаблон «Фабрика»), или вы можете позволить клиентам собирать свои собственные пиццы по кусочкам (шаблон «Строитель»).
Структурные шаблоны описывают, как объекты взаимодействуют друг с другом. Представьте их как чертежи для строительства больших сооружений из отдельных деталей. Это как LEGO — вы можете взять сложные наборы и создать упрощенные инструкции для их сборки. У Звезды Смерти тысячи деталей, но инструкция разбивает ее на выполнимые шаги.
Поведенческие шаблоны описывают взаимодействие между объектами — как они взаимодействуют и распределяют ответственность. Сюда входит величайший шаблон всех времен — шаблон стратегии. Представьте это как переключение между различными навигационными приложениями — Google Maps для вождения, AllTrails для пеших прогулок, Transit для общественного транспорта. Одна и та же цель, разные стратегии. В коде:
Идея существования шаблонов в программном обеспечении действительно потрясающая. Умение понимать шаблоны, абстрагировать их и повторно использовать стратегию для написания программного обеспечения — это одно из лучших умений, потому что независимо от того, какое программное обеспечение вы пишете, существуют шаблоны, которые могут упростить задачу и помочь другим людям быстрее освоиться.
0:00 3 типа шаблонов проектирования
1:34 Шаблон Singleton
3:35 Шаблон Builder
5:21 Шаблон Factory
7:47 Шаблон Twingate Security
8:58 Шаблон Facade
12:56 Шаблон Adapter
16:18 Шаблон Strategy
20:03 Шаблон Observer
22:49 Знайте, когда использовать каждый из них
Если вы разработчик, подпишитесь на мою бесплатную рассылку Dev Notes 👉 https://www.devnotesdaily.com/
Если вы студент, ознакомьтесь с моим шаблоном Notion Studious: https://notionstudent.com
Не понимаю, зачем вам подписываться на меня в других социальных сетях. Я даже ничего не публикую. Но вот, пожалуйста.
🐱🚀 GitHub: https://github.com/forrestknight
🐦 Twitter: / forrestpknight
💼 LinkedIn: / forrestpknight
📸 Instagram: / forrestpknight