Цель работы:
– научиться использовать шаблоны проектирования;
– используя методологию проектирования, основанную на шаблонах разработать структуру классов трехслойного приложения;
– создать класс согласно шаблону Controller для обработки системных событий не типизированными объектами;
– создать приложение БД, использующее трехслойную архитектуру на базе объектно-реляционного отображения с не типизированными объектами.
Введение
7.1.1. Трёхслойная архитектура на базе объектно-реляционного отображения с не типизированными объектами
Понятие «не типизированные объекты» связано со слоем графического интерфейса. Классы этого слоя могут работать с классами слоя бизнес-логики только посредством контроллера. Таким образом, интерфейс вызывает методы класса контроллера, а класс контроллер вызывает методы классов слоя бизнес-логики. Интерфейс не связан с классами Бизнес-логики, что позволяет менять интерфейс, не переписывая вызовы методов слоя бизнес-логики (см. Рисунок 7.1).
Рисунок 7.1 – Трехслойная архитектура с контроллером
Для разработки приложения на базе архитектуры с не типизированными объектами мы будем применять шаблоны проектирования. Ниже описана часть основных шаблонов проектирования используемых при разработке программных систем.
Шаблоны проектирования
Опытные разработчики объектно-ориентированных систем сформулировали общие принципы и стандартные решения, помогающие в разработке программного обеспечения. Если эти принципы и идиомы систематизировать и структурировать, а также присвоить им имена, то их можно применять в качестве шаблонов (patterns).
Шаблоны проектирования упрощают повторное использование удачных проектных и архитектурных решений. Представление прошедших проверку временем методик в виде паттернов проектирования облегчает доступ к ним со стороны разработчиков новых систем. С помощью шаблонов проектирования можно улучшить качество документации и сопровождения существующих систем, позволяя явно описать взаимодействия классов и объектов, а также причины, по которым система была построена так, а не иначе. Проще говоря, шаблоны проектирования дают разработчику возможность быстрее найти «правильный» путь.
В объектно-ориентированной технологии шаблоном проектирования называют именованное описание проблемы и ее решения, которые можно применить при разработке других систем. В идеале, шаблон должен содержать советы по поводу его применения в различных ситуациях, а также описание его преимуществ и недостатков. Многие шаблоны содержат рекомендации по распределению обязанностей между объектами с учетом специфики задачи.
Проще говоря, шаблон – это именованная пара "проблема/решение", содержащая рекомендации для применения в различных конкретных ситуациях, которую можно использовать в различных контекстах.
Шаблон можно назвать новым, если он описывает новую идею. Однако сам термин "шаблон" означает стандартную, повторяющуюся сущность. Шаблоны не предназначены для изучения и выражения новых принципов разработки программного обеспечения. Скорее, наоборот. Они призваны систематизировать существующие знания, идиомы и принципы. Чем шире они используются, тем лучше.
Паттерн состоит из четырех основных элементов:
1) Имя. Всем шаблонам должны быть присвоены осмысленные имена. Именование шаблонов, методов и принципов имеет следующие преимущества: позволяет зафиксировать понятие в памяти человека; облегчает общение.
2) Задача. Описывает то, где следует применять паттерн. Необходимо сформулировать задачу и ее контекст. Может описываться конкретная проблема проектирования, например способ представления алгоритмов в виде объектов. И
3) Решение. Описание элементов дизайна, отношений между ними, функций каждого элемента.
4) Результаты – это следствия применения паттерна и разного рода компромиссы.