![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Отражение объетов на реляционную БД. Подходы? Способы? [D6, MSSQL]
mvg_first © (2002-11-06 17:18:00)Нужен совет опытных мастеров, разрабатывавших или разрабатывающих большие системы используя ООП не только для создания своих форм, но и для работы с физическими и логическими сущностями.
Суть вопроса: Каким образом можно хранить объекты в БД, а главное каким образом работать с этими объектами используя всю мощь Объектного языка, такого как делфи например.
Понимаю что слишком туманно, поэтому приведу пример, который,IMHO,прольет свет на мою проблему.
Итак если разрабатывать любую систему средней сложности в ней всегда есть объекты представляющие какие нибудь сущности реального мира возьмем к примеру сотрудника организации.
В книжках по ООП очень много примеров как можно написать класс "Сотрудник", как обвешать его поведением и все прочее, это вопросов у меня не вызвает. Основной вопрос как хранить эти данные в базе?
Что б не казаться полным чайником скажу что знаю что такое таблицы и знаю что для каждой сущности можно ответси таблицу в которой и хранить ее.
Но тут появляется второй вопрос, как быть с большими объемами данных? Например - есть перечень сотрудников в 10 000 человек? Таблица вроде бы и не большая? Но если прочитать данные в объекты то это уже 10 000 экземпляров только одной сущности, а их может быть и больше например товары народного потребления? Не будет ли проблем с памятью или со скоростью обработки?
И как отображать это все? Ведь DBGrid просто показывает таблицу,
а не перечень сущностей???
mvg_first (2002-11-07 11:43:00) [21]Предложите альтернативный вариант, хотя бы в намеках...
Может оно конечно и выглядит бредово, но мне кажется на объектном языке работать нужно с объектами во всем а не только на уровнях, для реализации своих контролов. Понимаете о чем я?
Т.е. если мне необходим объект сотрудник с определенным поведением и свойствами - то это очень легко реализуется. Но я хотел бы получить какой нибудь совет по хранению, а главное способам отображения на экране этих объектов ( в больших количествах).
Мне не проблема создать TList и в нем хранить перечень объектов TCustomer которые на старте программы подгружать из базы. Но Что делать если у меня есть множетсво сущностей (пользователи, документы, товары), а так же множество потомков этих сущностей? Не грузить же все это в память?
Да и оборажать на экране это как? DBGrid - удобная вещь - но он отражает просто данные из таблицы - но это же не объекты??? Или я ошибаюсь??
Как это делают? Мне интересно мнение профессионалов.
Fiend (2002-11-07 11:30:00) [22]та нет. просто вы немного бредово подходите к решению вопроса.
Зачем вам отображать объект из БД(в сущности результат выбора данных из нескольких таблиц)в объект ООП языка. Это просто ни к чему.
mvg_first (2002-11-07 11:21:00) [23]Господа, может непонятен вопрос? Или есть другие причины мне не отвечать? Я затрагиваю чье-то ноу-хау?
mvg_first (2002-11-06 17:24:00) [24]Есть кончено специализированная БД называется помоему "Cache" - но так как она не понастоящему объектная а только на 70% то я исключил ее из рассмотрения и стараюсь рассматривать эту проблему в следующей связке Delphi + MS SQL 2000.