|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
YuRock Fr0sT-Brutal пропущено... То есть заботы программера скинуть на админа БД и умыть руки :)) отличное решение! Не говоря уже о том, что половина перечисленных плюсов очень сомнительна А когда умрёт винт - достаточно будет установить программу и взять базу из бэкапа (реплику, или как там сделано). И всё. Меньше работы - меньше требуется людей на поддержке. Это тупо деньги. Опасное направление выбрано. Если развивать идею дальше - то можно просто предложить использовать вместо десктопа веб-приложения. Их вообще не надо бэкапировать. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 20:48 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
А ведь когда-то о трехзвенках спорили, а теперь - об инифайлах... ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 21:07 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
mayton YuRock пропущено... Админу и так и так надо бэкапить базу. Тут работы только уменьшится - не надо будет бэкапить конфиги. А когда умрёт винт - достаточно будет установить программу и взять базу из бэкапа (реплику, или как там сделано). И всё. Меньше работы - меньше требуется людей на поддержке. Это тупо деньги. Опасное направление выбрано. Если развивать идею дальше - то можно просто предложить использовать вместо десктопа веб-приложения. Их вообще не надо бэкапировать. У меня для тебя плохие новости. То, что за тебя хостер делает бакапы - вовсе не значит, что бакапить их не надо :) авторА ведь когда-то о трехзвенках спорили, а теперь - об инифайлах... одних уж нет а те далече... ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 21:32 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Какой еще хостер. Кажется мы говорим на разных языках. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 21:36 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
zeon11 6. Снимается проблема сложных настроек. Например, настройки таблиц, с шириной колонок и их ассортиментом достаточно геморройно сохранить в любом месте, кроме БЛОБа Вот вообще не проблема сохранить нужные настройки в Ini. Если единственным вариантом видится только БЛОБ, то ИМХО что-то не то в консерватории. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
Параметр CDS.Width - это список колонок в клиентском CDS и их ширина. Ширина со знаком минус - коронка скрыта. Пользователь может управлять видимостью колонок, скрывая ненужные. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 21:44 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
makhaon YuRock, у нас база бакапиться в одном архиве вместе с инишками. что мы делаем не так? :) Да, это один раз делается (если с одной папки), а потом само работает. Но всё равно работы больше. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 23:29 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
mayton YuRock пропущено... Админу и так и так надо бэкапить базу. Тут работы только уменьшится - не надо будет бэкапить конфиги. А когда умрёт винт - достаточно будет установить программу и взять базу из бэкапа (реплику, или как там сделано). И всё. Меньше работы - меньше требуется людей на поддержке. Это тупо деньги. Опасное направление выбрано. Если развивать идею дальше - то можно просто предложить использовать вместо десктопа веб-приложения. Их вообще не надо бэкапировать. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 23:32 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Я запрыгнул не в свой вагон. Форум я имею в виду. Поэтому я с вашего позволения создам форк этой темы в Программировании. С вопросом о конфигах. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 23:37 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
mayton Какой еще хостер. Кажется мы говорим на разных языках. То, что фронт не бэкапиться вовсе не значит что бэка вообще не существует и бакапить его не нужно. авторВсё так. Только это сложно, ведь базу бэкапить онлайн - требуется спец. средство, после чего еще файлы копировать. Да, это один раз делается (если с одной папки), а потом само работает. Но всё равно работы больше. Работа админа заключается только в указании места (папки) автобакапа и/или нажатия кнопки ручного бакапа. Всё остальное делает сам софт: бакапит базу, упаковывает бакап + инишки в архив. Собственно кода там десяток строк. Ну а если программистам лень десять строк написать для удобства себя и пользователей (админов) - то тут, конечно, печально и безисходно. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 23:45 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
fraks zeon11 6. Снимается проблема сложных настроек. Например, настройки таблиц, с шириной колонок и их ассортиментом достаточно геморройно сохранить в любом месте, кроме БЛОБа Вот вообще не проблема сохранить нужные настройки в Ini. Если единственным вариантом видится только БЛОБ, то ИМХО что-то не то в консерватории. .... Fraks, будьте уж последовательными. У Вас-же EXE-шник в БД, и оттуда разворачивается, и это хорошо. У меня EXE-шник в БД "живет" много лет. Помимо этого в БД "живут" DLL-ки, плагины, шаблоны отчётов, и прочая обвеска. И в БД я это запихивал не в один день. Проверял, сравнивал производительность. И ini у меня когда-то болтались на диске, потом я это дело вытравил и не жалею. И по поводу "консерватории". Я не писал про единственный вариант хранения в БЛОБ. Я написал, что по сравнению с БЛОБ всё остальное более затратно. Будьте внимательны ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2021, 06:07 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
DDV Format, an alternative to CSV for Pascal https://github.com/exlunaproject/catarinka/blob/master/docs_pascal/pas.ddv.md ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2021, 09:55 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
zeon11 Вам сомнительна, а мне нет. Ваш опыт против моего опыта. Я попробовал все варианты и остановился на лучшем, с моей точки зрения. Я перечислил все плюсы, и постарался аргументировать, Вы даже не удосужились перечислить сомнительные с Вашей точки зрения пункты. И даже если половина, как Вы пишете, сомнительна, то вторая половина, даже для Вас бесспорна. Сомнения примем как 50 на 50, с учетом бесспорной для Вас половины, Вы согласны на 75% с моими выкладками. Так что админ может и потерпеть. И да, чем там программер нагрузил админа БД в данном кейсе? Подозреваю, здесь у нас разное понимание области обсуждения. Если говорить о клиенте к БД, который уже общается с БД на выделенном сервере, то даже обсуждать нечего: сократить используемые сущности - это правильно. Но изначальный вопрос стоял про программы в целом, без БД. И вот сюда тащить БД только ради профилей (без весомого обоснования) - ересь ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2021, 10:12 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
X11 DDV Format, an alternative to CSV for Pascal https://github.com/exlunaproject/catarinka/blob/master/docs_pascal/pas.ddv.md А зачем он нужен? Ну тоесть... какие преимущества дает? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2021, 10:19 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Fr0sT-Brutal Но изначальный вопрос стоял про программы в целом, без БД. И вот сюда тащить БД только ради профилей (без весомого обоснования) - ересь ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2021, 10:31 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
mayton, там же написано ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2021, 10:32 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Ну вот так было. Код: sql 1. 2. 3. 4.
И так стало. Код: sql 1. 2. 3. 4.
Как по мне - нечитабельная фигня. Плюс еще нужно держать справочник ключей в голове. Уж лучше yaml. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2021, 10:38 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
zeon11 fraks пропущено... Вот вообще не проблема сохранить нужные настройки в Ini. Если единственным вариантом видится только БЛОБ, то ИМХО что-то не то в консерватории. Fraks, будьте уж последовательными. У Вас-же EXE-шник в БД, и оттуда разворачивается, и это хорошо. Что-то не уловил связи между exe в БД и настройками программы. У меня в БД не только exe, но и печатные формы, и файлы шаблонов прайсов, и собственно данные лежат :) zeon11 И ini у меня когда-то болтались на диске, потом я это дело вытравил и не жалею. У меня рядом с программой лежит 2 ini. Одна - со стокой коннекта к БД, и этот файл правится руками, когда надо. Второй ini пишет и читает само приложение, сохраняя туда локальные настройки которые нет смысла хранить в БД. zeon11 И по поводу "консерватории". Я не писал про единственный вариант хранения в БЛОБ. Я написал, что по сравнению с БЛОБ всё остальное более затратно. Будьте внимательны Я не вижу в чем тут затратность. В ini у меня на каждую форму по секции, далее параметр=значение. Читаю/пишу. А где эта ini хранится - как-бы не суть. Но раз она имеет смысл только к рядом лежащему exe то почему бы не лежать рядом? А так, можно этот ini хранить не в виде файла а в виде блоба в БД, ну ровно ничего от этого не меняется. Кроме головняка как различить какой из ini нужно из базы выковыривать. Мое приложение однопоточное. Если нужна какая-то параллельная работа - то просто запускается второй экземпляр. Если нужно для одного экземпляра иметь одни настройки а для второго - другие - тупо копируем папку с приложением, что бы у них были разные ini-файлы - и всё. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2021, 10:41 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
X11 DDV Format, an alternative to CSV for Pascal https://github.com/exlunaproject/catarinka/blob/master/docs_pascal/pas.ddv.md Какая-то странная поделка. Чуть улучшает ситуацию для частного случая, но даже с ним как-то не очень. Но привносит свои ограничения. Мне например непонятно почему нужно себя ограничивать неупотреблением символа-разделителя между типа NAME и остальными параметрами. Разделитель там ' --'. А что если такая последовательность встречается в NAME? Единственное что можно рассматривать как некоторый плюс DDV перед CSV - именованные поля, зная ключ поля можно выковыривать его произвольно из строки. Но однако, зная ключ (индекс поля) точно так же он выковыривается и из CSV. Если же большой список параметров каждый из которых довольно редко встречается, то это тот самый ini и есть. Код: xml 1. 2. 3. 4. 5. 6. 7.
То что типа можно сортировать.. тоже непонятнько. Разница между DDV и CSV в показанных примерах только в том что в CSV поля могут быть окавычены и нет, это сбивает сортировку, но зато дает отсутствие проблемы с разделителем полей. Сортировка прямо по файлу будет все равно корявая, длина поля для сортировки не фиксирована, да и зачем это надо, сам файл сортировать? Все равно это все загружается в некую структуру и там уже и сортируется по нормальному. Кроме того, эта поделка решает вопрос как разобрать одну строку/секцию. А как найти нужную в файле? Ini этот вопрос решает, а тут остается за кадром. И в чем смысл? Единственное где хоть как-то это может иметь смысл, я вижу в случае если типов полей тыща, но в конкретной записи штук 5. CSV в таком варианте будет состоять из большого количества разделителей полей. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2021, 10:57 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Вот я-бы так сделал. На базе имеющегося стандарта. Код: python 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Можно горизонтально развернуть. Тоже в рамках того-же формата. Код: python 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2021, 11:13 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Вспомнил, у меня же есть в базе таблица для хранения настроек :) Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
Планировалось засунуть настройки туда, но что-то не зашло. Там сейчас только общие настройки, для всех, типа путь к папке с картинками и префикс URL до картинок на сайте. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2021, 11:17 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
По поводу сортировки колонок. В NoSQL-ных системах наподобие Apache Cassandra такой подход используется. Но Cassandra оперирует бинарным форматом блока (партишена). И поэтому для нее точечный или диапазонный поиск колонки - занимает короткое (логарифмическое) время. Для текстового формата данная сортировка ничего нам не дает. Ведь для парсинга мы все равно обязаны вычитать всю DDV строку целиком. Или всю entity для Json/Yaml. Чтоб моя мысль была более понятна - представте себе что строка очень длинная (до 1Гб на диске). ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2021, 11:19 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
mayton Вот я-бы так сделал. На базе имеющегося стандарта. Код: python 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Тот самый случай когда yaml начинает иметь смысл и незачем изобретать недовелосипеды :) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2021, 11:21 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
mayton Для текстового формата данная сортировка ничего нам не дает. Ведь для парсинга мы все равно обязаны вычитать всю DDV строку целиком. Или всю entity для Json/Yaml. Чтоб моя мысль была более понятна - представте себе что строка очень длинная (до 1Гб на диске). При таких размерах (тем более одной записи) я бы уже давно хранил это в БД, что бы иметь возможность читать нужную часть не разматывая предварительно весь файл. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2021, 11:24 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
А это - экономия на спичках. Код: plaintext 1.
Вот вообще-вообще ничего не дает. В наше время. Ну надыбал -30% и что? В 90х было популярно такое. Когда тактовая частота мерялась единицами мегагерц а память только мегабайтами и сети были модемные. Был создан торговый протокол (FIX/QuickFix) для покупок продаж. Вот пример такого торгового сообщения с вики https://en.wikipedia.org/wiki/Financial_Information_eXchange Код: pascal 1.
Здесь теги - числа. Я помню по памяти что 9 определяет всю длину сообщения в байтах. Да есть целые биржевые суб-справочники на базе этого. И каждая торговая организация расширяет его новыми тегами. Вот если автор гнался за экономией - пусть берет такой подход. Хотя в наше время это ничего кроме проблем не создает. По хорошему если хочет скорости и компактности - пусть берет Apache Thrift . И куча языков совместима по типу. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2021, 11:44 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
tunknown Fr0sT-Brutal Но изначальный вопрос стоял про программы в целом, без БД. И вот сюда тащить БД только ради профилей (без весомого обоснования) - ересь Речь про полноценную БД на выделенном сервере. SQLite , возможно, как общий знаменатель для всех систем - т.к. это дефолт под Android. Тем не менее, настройки там и в виде js хранятся ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2021, 12:09 |
|
|
start [/forum/topic.php?fid=58&msg=40094984&tid=2037044]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
47ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
1ms |
others: | 272ms |
total: | 426ms |
0 / 0 |