Форум
[Все сообщения]
Тема : Моделирование данных в Rational RoseИмя : Светлана Город : Обнинск 11/08/2003 04:04 Сообщение: Подскажите пожалуйста: 1) В каких случаях в Logical View, Schemas на схемах БД используется view (этот инструмент присутствует на панеле инструментов, доступной в момент работы со схемой), нужно ли это для создания полноценных классов классов? 2) При работе с БД есть ли целесообразность делать классами строки таблицы, ведь принципы работы одни и те же со всеми БД, нужно создавать, редактировать, удалять строки таблицы, которые являются целостными в моем случае сущностями?
Тема : Моделирование данных в Rational RoseИмя : Сергей Трофимов 11/08/2003 20:03 Сообщение: Здесь нужно понимать, что при проектировании структуры данных создается _физическая_ модель, а классы приналежат к логической, поэтому классы могут использоваться только для обработки конкретных таблиц и представлений. При проектировании классов не обязательно создавать таблицы и представления, также как и при проектировании структуры таблиц - не обязательно создавать классы их обрабатывающие. Однако, если принять за основу стиль проектирования классов: граничный класс-контроллер-сущность, то классы сущьностей как раз и будут связаны с конкретной таблицей данных или view. View используется если необходима организация доступа к нескольким таблицам или для доступа "только чтение". Таким образом, в общем случае необходимо создать структуру таблицы данных и класс ее обрабатывающий. Как Вы правильно заметили, обработка у всех таблиц одинаковая, поэтому можно создать абстрактный класс для реализации общих алгоритмов, а затем унаследовать его в конкретном классе-сущности. Тема : Моделирование данных в Rational RoseИмя : Светлана Город : Обнинск 19/08/2003 04:01 Сообщение: Еще раз извините за беспокойство. Могу ли я унаследовать этот "абстрактный класс" каждым из объектов объектной модели, сгенерированной из схемы БД? Хороший ли это будет способ? Тема : Моделирование данных в Rational RoseИмя : Сергей Трофимов 19/08/2003 21:34 Сообщение: Не нужно смешивать модель данных, которая создается при помощи Data Modeler и логическую модель классов. Создайте структуру таблицы в Data Modeler, затем создайте класс в диаграмме классов, который отвечает за редактирование конкретной таблицы и унаследуйте его от абстрактного класса о котором говорилось ранее. Это будет более или менее нормально для, например, MS SQL. Возможны и другие варианты, это уже вопрос конкретного проекта и конкретных СУБД. Тема : Моделирование данных в Rational RoseИмя : Светлана Город : Обнинск 20/08/2003 05:06 Сообщение: И все-таки не совсем понятно, для чего нужна объектная модель, генерируемая Data Modeler, занимают ли ее классы, а это уже именно классы (И чем тогда будут объекты - экземпляры этих классов?) какое-то место среди остальных классов или же это только представление самой базы данных... Почему тогда нельзя в эти классы добавлять обработку как получается их атрибутов? И как например тогда работать с информацией из БД? Как к примеру выбрать все строки таблицы? Где можно получить к ним доступ, через атрибуты каких объектов, через что вообще? Или нужно на конкретном языке писать запросы к БД? Тема : Моделирование данных в Rational RoseИмя : Сергей Трофимов 20/08/2003 09:16 Сообщение: Представьте, что нет у Вас RR, а есть только ERwin и Visual Studio, тогда будет создана структура таблиц и представлений в ERwin, а классы запрограммированы руками. Так и здесь с той лишь разницей, что структуру таблиц и представлений создаете в Data Modeler, а классы в диаграмме классов. Для простой структуры данных в MS SQL вообще нет необходимости использовать Data Modeler, создайте структуру руками или при помощи встроенного в Enterprise Manager редактора диаграмм. Трансформация в объектную модель лишь помогает создать структуру классов, чтобы получить список классов с нужными атрибутами. Конечно, в эти классы можно и нужно добавить обработку атрибутов при помощи, например, ADO, для получения данных и сохранения обновлений в базе. Здесь уже вопрос о программировании, а не о проектировании.
|
|