HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-03-10
1 <p>Теги: паттерны, структурные шаблоны проектирования, мост, bridge</p>
1 <p>Теги: паттерны, структурные шаблоны проектирования, мост, bridge</p>
2 <p><strong>Мост</strong>- структурный шаблон, который применяется в проектировании ПО для разделения абстракции и реализации таким образом, чтобы они могли меняться независимо друг от друга. Этот шаблон использует инкапсуляцию и агрегирование, а также, если требуется разделение ответственности между классами, может использовать наследование.</p>
2 <p><strong>Мост</strong>- структурный шаблон, который применяется в проектировании ПО для разделения абстракции и реализации таким образом, чтобы они могли меняться независимо друг от друга. Этот шаблон использует инкапсуляцию и агрегирование, а также, если требуется разделение ответственности между классами, может использовать наследование.</p>
3 <p>Давайте представим, что у нас есть веб-сайт с разными страницами, а нам надо разрешить пользователям менять тему этих страниц. Что делать? Вряд ли будет разумно создавать множественные копии для каждой веб-страницы и для каждой темы. Вопрос можно решить благодаря шаблону Мост.</p>
3 <p>Давайте представим, что у нас есть веб-сайт с разными страницами, а нам надо разрешить пользователям менять тему этих страниц. Что делать? Вряд ли будет разумно создавать множественные копии для каждой веб-страницы и для каждой темы. Вопрос можно решить благодаря шаблону Мост.</p>
4 <p>Если говорить простыми словами, то при использовании шаблона Мост обеспечивается<strong>предпочтение композиции над наследованием</strong>. В данном случае происходит передача деталей реализации из одной иерархии в другой объект с отдельной иерархией.</p>
4 <p>Если говорить простыми словами, то при использовании шаблона Мост обеспечивается<strong>предпочтение композиции над наследованием</strong>. В данном случае происходит передача деталей реализации из одной иерархии в другой объект с отдельной иерархией.</p>
5 <p>Лучше всего, конечно, посмотреть, как это будет выглядеть в коде вышеописанного примера с веб-страницами. Итак, у нас существует иерархия<strong>WebPage</strong>:</p>
5 <p>Лучше всего, конечно, посмотреть, как это будет выглядеть в коде вышеописанного примера с веб-страницами. Итак, у нас существует иерархия<strong>WebPage</strong>:</p>
6 <p>А также отдельная иерархия<strong>Theme</strong>:</p>
6 <p>А также отдельная иерархия<strong>Theme</strong>:</p>
7 <p>Теперь смотрим применение в коде:</p>
7 <p>Теперь смотрим применение в коде:</p>
8 <p>Также вам может быть интересен пример реализации шаблона "Мост" на языке программирования Java:<em>https://github.com/iluwatar/java-design-patterns/tree/master/bridge</em>.</p>
8 <p>Также вам может быть интересен пример реализации шаблона "Мост" на языке программирования Java:<em>https://github.com/iluwatar/java-design-patterns/tree/master/bridge</em>.</p>
9 <p><em>По материалам статьи "Design Patterns for Humans" - https://github.com/kamranahmedse/design-patterns-for-humans.</em></p>
9 <p><em>По материалам статьи "Design Patterns for Humans" - https://github.com/kamranahmedse/design-patterns-for-humans.</em></p>
10  
10