Dr.Yevhenius
|
|
« : 06-04-2010 14:38 » |
|
Программирую на С++. Делаю текстовый редактор. Для каждого открытого файла сохраняю его данные (полный путь, имя, расширение и т. д.) в структуре. Но есть возможность записать сразу все эти данные в БД и при необходимости загружать их оттуда. БД все равно используется. Сабж. Подскажите, какой, на ваше мнение, вариант лучше.
|
|
« Последнее редактирование: 06-04-2010 15:27 от Sel »
|
Записан
|
|
|
|
Sla
|
|
« Ответ #1 : 06-04-2010 14:50 » |
|
На ведь потом ты данные будешь все равно копировать в структуру?
БД используется для других целей. Зачем хранить временные данные. Где ты получаешь выигрыш?
|
|
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
Dr.Yevhenius
|
|
« Ответ #2 : 06-04-2010 15:04 » |
|
Все эти данные все равно будут записаны в базу... Просто к структуре я получая доступ сразу, а в случае с БД нужно делать запрос, а потом получить эти данные с запроса, но структура станет меньше и проще. Стоит ли оно того? Данные с БД нужно будет получить несколько раз.
|
|
|
Записан
|
|
|
|
Dimka
Деятель
Команда клуба
Offline
Пол:
|
|
« Ответ #3 : 06-04-2010 15:16 » |
|
То ли я чего-то не понимаю, то ли автор вопроса.
Структура есть и в C++ и в БД. И там, и там структура определяется пользователем по своему усмотрению. Разница в том, что: структуры в C++ доступны лишь во время работы программы, но зато с ними можно непосредственно работать; структуры в БД (или файле) хранятся вне зависимости от работы программы, но для доступа к ним их нужно загрузить в структуры C++, а для сохранения, наоборот, структуры C++ выгрузить в БД (или файл).
Так задать вопрос, это всё равно, что спросить, что лучше для езды: машина с двигателем, но без колёс, или машина с колёсами, но без двигателя?
|
|
|
Записан
|
Программировать - значит понимать (К. Нюгард) Невывернутое лучше, чем вправленное (М. Аврелий) Многие готовы скорее умереть, чем подумать (Б. Рассел)
|
|
|
Dr.Yevhenius
|
|
« Ответ #4 : 06-04-2010 15:25 » |
|
Попробую исправиться. Что лучше: держать данные в С++ структуре и записать в БД только при выходе, или записать сразу же и при нужности выбирать их с БД?
|
|
|
Записан
|
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #5 : 06-04-2010 15:34 » |
|
машина с колёсами, но без двигателя
- лучше )
|
|
|
Записан
|
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #6 : 06-04-2010 15:35 » |
|
YevhenUA, по-моему, записывать лучше сразу, но не каждый символ, а по кнопке + автосохранение с настраиваемым интервалом времени. Ну и при закрытии, естественно
|
|
|
Записан
|
|
|
|
Dimka
Деятель
Команда клуба
Offline
Пол:
|
|
« Ответ #7 : 06-04-2010 15:45 » |
|
YevhenUA, это зависит от задачи. Если ты меняешь данные не каждую микросекунду, а значительно реже, то можно записывать каждый раз, но при этом не удалять сохранённые в БД структуры из памяти, чтобы не надо было повторно читать. Читать придётся лишь при первом обращении. Если же обновления данных идут очень часто, нужно смотреть на загрузку сети, сервера с БД, и выбирать стратегию записи исходя из ограничений.
|
|
|
Записан
|
Программировать - значит понимать (К. Нюгард) Невывернутое лучше, чем вправленное (М. Аврелий) Многие готовы скорее умереть, чем подумать (Б. Рассел)
|
|
|
|