![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Сохранение списка
Stenfit © (2010-08-31 17:15:00)есть список (наследник TList) записей типа TAttr.
PAttr = ^TAttr;
TAttr = packed record
Name: Str;
Val : Variant;
end;
Как грамотно сохранить его в stream. Пока что способов, кроме как использовать TWriter не знаю.
sniknik (2010-08-31 22:11:00) [21]> Как в таком случае грамотно хранить и передавать параметры?
все уже придумано до нас... возьми к примеру изучи протокол http там и запрос и параметры передаются, нужно больше данных чем в GET влазит? смотри POST, еще больше данных? смотри базы/клиент сервер/трехзвенки типа midas/soap, в общем по изучай то, что есть до изобретения своего велосипеда...
sniknik (2010-08-31 22:02:00) [22]> Я собссно к тому что в CDS есть и готовая сериализация/десериализация и, если уж угодно, тот самй назойливый Хмыль, коль скоро приспичит поддаться уговорам)
а я собссно к тому что в TADODataSet есть и готовая сериализация/десериализация и, если уж угодно, тот самй назойливый Хмыль, коль скоро приспичит поддаться уговорам)
_Юрий (2010-08-31 22:01:00) [23]
> Stenfit (31.08.10 21:48) [8]
> Не будет ли громоздким использование xml?
От объемов пакетов зависит. Если объемы позволяют, то лучше конечно текст. Если есть хоть малейшая вероятность того, что система будет развиваться
Stenfit (2010-08-31 21:48:00) [24]Уточню. Есть клиент и сервер (взаимодействуют через сокеты). Вместе с запросом, посылаемым клиентом серверу, необходимо передавать ряд параметров (для каждого запроса индивидуальны). Как в таком случае грамотно хранить и передавать параметры? Не будет ли громоздким использование xml? Если использовать xml, то как правильно передать его содержимое через сокет? ... TXMLDocument.SaveToStream и полученный стрим через сокет? Так?
QAZ (2010-08-31 21:28:00) [25]
> освободи свой мозг и пальцы для более творческих задач.
а вы последние лет 5 не замечали что производительность компов растет
паралельно с падением быстродействия софта?
Сергей М. (2010-08-31 20:43:00) [26]
> sniknik © (31.08.10 19:02) [5]
Я собссно к тому что в CDS есть и готовая сериализация/десериализация и, если уж угодно, тот самй назойливый Хмыль, коль скоро приспичит поддаться уговорам)
sniknik (2010-08-31 19:02:00) [27]> то почему не использовать TClientDataSet ?
не принципиально... я вот предпочитаю TADODataSet, но не настаиваю и не пихаю его всем как некоторые xml.
(а его назойливое рекламирование это + к тем вещам за что его не люблю. в общем то эту рекламу считаю основой из за которой пошли все последующие проблемы)
Сергей М. (2010-08-31 17:58:00) [28]
> nik (31.08.10 17:50) [3]
ну коль скоро речь коснулась дельфийских data-aware-контролов, то почему не использовать TClientDataSet ?
Там тебе и сериализация готовая, там тебе и XML ..
nik (2010-08-31 17:50:00) [29]каменный век давно кончился.
убери свой лист и рекорд.
используй recordset
плюсы:
не надо писать сериализацию, она уже есть (LoadFromFile).
не надо писать десериализацию, она уже есть (SaveToFile).
имеешь встроенные средства поиска и фильтрации (findfirst,locate,filter).
...
имеешь стандартные способы отображения (dbgrid,dbedit,dbxxxx)
имеешь стандартные способы работы с базой при переходе на критические объемы...
и .тд.
освободи свой мозг и пальцы для более творческих задач.
Медвежонок Пятачок (2010-08-31 17:29:00) [30]каменный век давно кончился.
убери свой лист и рекорд.
используй xml
плюсы:
не надо писать сериализацию, она уже есть (Load,LoadXML).
не надо писать десериализацию, она уже есть (save).
имеешь встроенные средства поиска и фильтрации (selectnodes,selectsinglenode).
освободи свой мозг и пальцы для более творческих задач.
Сергей М. (2010-08-31 17:18:00) [31]райтер и есть самый удобный и единственно верный способ решения задачи.
Не хочешь пользоваться райтером или не нравится формат даненых на его выводе ? Ищи его функциональные аналоги-заменители либо пиши свой сериализатор по образу и подобию.