Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.149.243.106] |
|
Сообщ.
#1
,
|
|
|
В связи с необходимостью хранить настройки межплатформенной программы, возникает вопрос о межплатформенных средствах для доступа ко всякого рода хранилищам данных, будь то Ini/conf/YAML/JSON или XML.
Конкретно для Windows подходит Registry, но хотелось бы иметь компонент для унифицированного доступа к древовидной информации. Что-то наподобие технологии клиент-сервер, чтобы можно было использовать один запрос для получения/хранения данных вне зависимости от типа хранилища данных. Вот, обыскал уже "половину интернета", но так ничего подходящего не нашёл. Пока что использую Ini простых данных или XML для древовидных. Но для каждого формата - свой API, да ещё зависит от реализации. |
Сообщ.
#2
,
|
|
|
Многие существующие программы используют для этого sqlite.
|
Сообщ.
#3
,
|
|
|
Цитата ch__ @ Многие существующие программы используют для этого sqlite. Sqlite целесообразно применять для средне-большого количества настроек. Обычно берут XML/Ini. Однако, для доступа к ним не хватает единого API, как универсального инструмента для любого проекта. |
Сообщ.
#4
,
|
|
|
Romtek, INI, имхо, в лета ушёл, собственно Microsoft не пользуется больше оным, учитывая, что и в .NET Framework встраивать не стали. Registry в общем-то тоже скорее всего помрёт (хоть MS и обещали это ещё к Vist'е, но не выполнили) рано или поздно. Сводится в принципе всё к одному лишь XML, как наиболее унифицированному формату, да и поддержку оного стараются реализовать все.
В принципе, нормальная схема и особых проблем с форматом быть не должно, хотя я и не особо в курсе как другие IDE, отличные от VIsual Studio помогают разработчикам при работе с XML, как с объектами... |
Сообщ.
#5
,
|
|
|
Я интересуюсь в общем, потому что могу обойтись и без такого компонента. Хотя, с таким мне было бы намного удобнее. Даю эту идею тем, кто хочет написать полезный компонент (в виде динамической библиотеки). Нужно начинать с описания абстрактного интерфейса, а затем реализовывать для каждого типа конфигурации.
Если кто желает, здесь можно обсудить абстрактный интерфейс. Как кандидат можно рассматривать компонент TXMLConfig. Сегодня им и пользуюсь. Типы данных: Функции: OpenKey, CloseKey, ResetKey, GetValue, SetValue. |
Сообщ.
#6
,
|
|
|
INI-файлы думается проживут еще долго. Формирование и разбор их производится легче чем XML. Размер их несколько (почти в два раза) меньше. Они легче читаются и редактируются без использования специальных средств.
Для некоторых это окупает недостаточную гибкость. Хотя при желании и нужную гибкость можно обеспечить. |