| 
			| 
					
						| 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, это зависит от задачи. Если ты меняешь данные не каждую микросекунду, а значительно реже, то можно записывать каждый раз, но при этом не удалять сохранённые в БД структуры из памяти, чтобы не надо было повторно читать. Читать придётся лишь при первом обращении. Если же обновления данных идут очень часто, нужно смотреть на загрузку сети, сервера с БД, и выбирать стратегию записи исходя из ограничений. |  
						| 
								|  |  
								|  |  Записан | 
 
 Программировать - значит понимать (К. Нюгард)Невывернутое лучше, чем вправленное (М. Аврелий)
 Многие готовы скорее умереть, чем подумать (Б. Рассел)
 |  |  | 
	|  |