Курсовая работа: Управление базой данных на языке программирования С+
}
// "Client" - the interaction environment of the products
class Client
{
private AbstractProductA abstractProductA;
private AbstractProductB abstractProductB;
// Constructor
public Client (AbstractFactory factory)
{
abstractProductB = factory. CreateProductB ();
abstractProductA = factory. CreateProductA ();
}
public void Run ()
{
abstractProductB. Interact (abstractProductA);
}
}
1.2 Репозитории
Посредничает между уровнями области определения и распределения данных (domain and data mapping layers), используя интерфейс, схожий с коллекциями для доступа к объектам области определения.
Система со сложной моделью области определения может быть упрощена при помощи дополнительного уровня, например Data Mapper, который бы изолировал объекты от кода доступа к БД. В таких системах может быть полезным добавление ещё одного слоя абстракции поверх слоя распределения данных (Data Mapper), в котором бы был собран код создания запросов. Это становится ещё более важным, когда в области определения множество классов или при сложных, тяжелых запросах. В таких случаях добавление этого уровня особенно помогает сократить дублирование кода запросов.
Паттерн Repository посредничает между слоем области определения и слоем распределения данных, работая, как обычная колекция объектов области определения. Объекты-клиенты создают описание запроса декларативно и направляют их к объекту-репозиторию (Repository) для обработки. Объекты могут быть добавлены или удалены из репозитория, как будто они формируют простую коллекцию объектов. А код распределения данных, скрытый в объекте Repository, позаботится о соответсвующих операциях в незаметно для разработчика. В двух словах, паттерн Repository инкапсулирует объекты, представленыые в хранилище данных и операции, производимые над ними, предоставляя более объектно-ориентированное представление реальных данных. Repository также преследует цель достижения полного разделения и односторонней зависимости между уровнями области определения и распределения данных.
2. Анализ предметной области
Предметной областью данной курсовой работы является магазин фотоаппаратуры с большим ассортиментом товаров. Для удобства работы "персонала" создана база данных в MicrosoftAccess2003 с поддерживаемой целостностью данных.
В ней разработаны основные критерии, по которым оценивают и выбирают фотокамеры:
· цена;
· производитель;
· тип;
· габариты;