- •130. Образцы проектирования. Abstract Factory
- •131. Образцы проектирования. Prototype
- •132. Образцы проектирования. Bridge
- •133. Образцы проектирования. Facade
- •134. Образцы проектирования. Chain of Responsibility
- •135. Образцы проектирования. Command
- •136. Образцы проектирования. Mediator.
- •137. Образцы проектирования. Memento
- •138. Образцы проектирования. State
- •139. Образцы проектирования. Strategy
- •140. Образцы проектирования. Template Method.
- •141. Физический уровень модели osi (задачи, принципы, примеры технологий).
- •143. Сетевой уровень модели osi (задачи, принципы, примеры технологий).
- •144. Транспортный уровень модели osi (задачи, принципы, примеры технологий
- •145. Сеансовый уровень модели osi (задачи, принципы, примеры технологий
- •146. Уровень представления модели osi (задачи, принципы, примеры технологий
- •147. Прикладной уровень модели osi (задачи, принципы, примеры технологий
- •149. Cgi: возникновение технологии, ее назначение, принципы действия, пример программы
- •150. Php: возникновение технологии, ее назначение, принципы действия, пример программы
- •151. Asp: возникновение технологии, ее назначение, принципы действия, пример программы
- •152. JavaSript: возникновение технологии, ее назначение, принципы действия, пример программы
- •153. Ajax: возникновение технологии, ее назначение, принципы действия, пример программы
- •154. Субд Oracle: область применения, основные характеристики, отличия от других субд
- •155. Субд ibm db2: область применения, основные характеристики, отличия от других субд
- •157. Субд MySql: область применения, основные характеристики, отличия от других субд
- •158. Субд PostgreSql: область применения, основные характеристики, отличия от других субд
- •159. Субд Apache Derby: область применения, основные характеристики, отличия от других субд
- •160. Perl: возникновение технологии, ее назначение, принципы действия, пример программы
- •161. Python: возникновение технологии, ее назначение, принципы действия, пример программы
- •162. Ruby: возникновение технологии, ее назначение, принципы действия, пример программы
- •163. Erlang: возникновение технологии, ее назначение, принципы действия, пример программы
- •164. Groovy: возникновение технологии, ее назначение, принципы действия, пример программы
133. Образцы проектирования. Facade
Шаблон Facade (Фасад) — Шаблон проектирования, позволяющий скрыть сложность системы путем сведения всех возможных внешних вызовов к одному объекту, делегирующему их соответствующим объектам системы.
Как обеспечить унифицированный интерфейс с набором разрозненных реализаций или интерфейсов, например, с подсистемой, если нежелательно высокое связывание с этой подсистемой или реализация подсистемы может измениться? Определить одну точку взаимодействия с подсистемой — фасадный объект, обеспечивающий общий интерфейс с подсистемой и возложить на него обязанность по взаимодействию с её компонентами. Фасад — это внешний объект, обеспечивающий единственную точку входа для служб подсистемы. Реализация других компонентов подсистемы закрыта и не видна внешним компонентам. Фасадный объект обеспечивает реализацию паттерна Устойчивый к изменениям (Protected Variations) с точки зрения защиты от изменений в реализации подсистемы.
Шаблон применяется для установки некоторого рода политики по отношению к другой группе объектов. Если политика должна быть яркой и заметной, следует воспользоваться услугами шаблона Фасад. Если же необходимо обеспечить скрытность и аккуратность (прозрачность), более подходящим выбором является шаблон Заместитель (Proxy).
134. Образцы проектирования. Chain of Responsibility
Цепочка обязанностей (Chain of responsibility) — поведенческий шаблон проектирования, предназначенный для организации в системе уровней ответственности.
Шаблон рекомендован для использования в условиях:
в разрабатываемой системе имеется группа объектов, которые могут обрабатывать сообщения определенного типа;
все сообщения должны быть обработаны хотя бы одним объектом системы;
сообщения в системе обрабатываются по схеме «обработай сам либо перешли другому», то есть одни сообщения обрабатываются на том уровне, где они получены, а другие пересылаются объектам иного уровня.
135. Образцы проектирования. Command
Команда (command) — шаблон проектирования, используемый при объектно-ориентированном программировании, представляющий действие. Объект команды заключает в себе само действие и его параметры.
Создание структуры, в которой класс-отправитель и класс-получатель не зависят друг от друга напрямую. Организация обратного вызова к классу, который включает в себя класс-отправитель.
Обеспечивает обработку команды в виде объекта, что позволяет сохранять её, передавать в качестве параметра методам, а также возвращать её в виде результата, как и любой другой объект.
136. Образцы проектирования. Mediator.
Шаблон Mediator (также известный как Посредник) – поведенческий шаблон проектирования
Обеспечивает взаимодействие множества объектов, формируя при этом слабую связанность и избавляя объекты от необходимости явно ссылаться друг на друга.
Обеспечить взаимодействие множества объектов, сформировав при этом слабую связанность и избавив объекты от необходимости явно ссылаться друг на друга.
Создать объект, инкапсулирующий способ взаимодействия множества объектов.
Устраняется связанность между "Коллегами", централизуется управление.
"Посредник" определяет интерфейс для обмена информацией с объектами "Коллеги", "Конкретный посредник" координирует действия объектов "Коллеги". Каждый класс "Коллеги" знает о своем объекте "Посредник", все "Коллеги" обмениваются информацией только с посредником, при его отсутствии им пришлось бы обмениваться информацией напрямую. "Коллеги" посылают запросы посреднику и получают запросы от него. "Посредник" реализует кооперативное поведение, пересылая каждый запрос одному или нескольким "Коллегам".