На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! В разделе обсуждаются следующие темы:
1) Процесс разработки программного обеспечения.
2) Определение требований к программному обеспечению.
3) Составные части и процесс проектирования (см. Шаблоны проектирования).
4) Документирование программного продукта(проекта).
5) Руководство разработкой программного обеспечения.
6) Проектирование пользовательского интерфейса.
7) Контроль версий проекта (см. Управление версиями в Subversion, Стратегии использования svn).
Модераторы: ElcnU
  
> API для доступа и хранения настроек или других данных , Component (API) for unified access of program configuration & settings
    В связи с необходимостью хранить настройки межплатформенной программы, возникает вопрос о межплатформенных средствах для доступа ко всякого рода хранилищам данных, будь то Ini/conf/YAML/JSON или XML.
    Конкретно для Windows подходит Registry, но хотелось бы иметь компонент для унифицированного доступа к древовидной информации. Что-то наподобие технологии клиент-сервер, чтобы можно было использовать один запрос для получения/хранения данных вне зависимости от типа хранилища данных.

    Вот, обыскал уже "половину интернета", но так ничего подходящего не нашёл. Пока что использую Ini простых данных или XML для древовидных. Но для каждого формата - свой API, да ещё зависит от реализации.
      Многие существующие программы используют для этого sqlite.
        Цитата ch__ @
        Многие существующие программы используют для этого sqlite.

        Sqlite целесообразно применять для средне-большого количества настроек. Обычно берут XML/Ini.
        Однако, для доступа к ним не хватает единого API, как универсального инструмента для любого проекта.
          Romtek, INI, имхо, в лета ушёл, собственно Microsoft не пользуется больше оным, учитывая, что и в .NET Framework встраивать не стали. Registry в общем-то тоже скорее всего помрёт (хоть MS и обещали это ещё к Vist'е, но не выполнили) рано или поздно. Сводится в принципе всё к одному лишь XML, как наиболее унифицированному формату, да и поддержку оного стараются реализовать все.
          В принципе, нормальная схема и особых проблем с форматом быть не должно, хотя я и не особо в курсе как другие IDE, отличные от VIsual Studio помогают разработчикам при работе с XML, как с объектами...
            Я интересуюсь в общем, потому что могу обойтись и без такого компонента. Хотя, с таким мне было бы намного удобнее. Даю эту идею тем, кто хочет написать полезный компонент (в виде динамической библиотеки). Нужно начинать с описания абстрактного интерфейса, а затем реализовывать для каждого типа конфигурации.

            Если кто желает, здесь можно обсудить абстрактный интерфейс. Как кандидат можно рассматривать компонент TXMLConfig. Сегодня им и пользуюсь.

            Типы данных:
            • булевое значение /boolean/
            • целое число /integer/
            • вещественное число /float/
            • строка (уникод) /string/
            • массив абстрактных данных (бинарный) /binary/

            Функции: OpenKey, CloseKey, ResetKey, GetValue, SetValue.
              INI-файлы думается проживут еще долго. Формирование и разбор их производится легче чем XML. Размер их несколько (почти в два раза) меньше. Они легче читаются и редактируются без использования специальных средств.
              Для некоторых это окупает недостаточную гибкость. Хотя при желании и нужную гибкость можно обеспечить.
              1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
              0 пользователей:


              Рейтинг@Mail.ru
              [ Script execution time: 0,0189 ]   [ 14 queries used ]   [ Generated: 19.05.24, 05:40 GMT ]