|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Здравствуйте. Хотел спросить, может ли xml-файл служить альтернативой ini-файлам? У меня имеется программа которая использует профили материалов. Каждый профиль - это отдельный ini-файл , в котором хранится информация о материале. Я просто с xml еще не работал. Можно ли например все профили хранить в одном xml-файле, т.е. получается своего рода база данных, а потом считывать обращаясь к секциями выбранного материала для загрузки его параметров? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 17:08 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Damir_85, да, конечно можно. Единственное, есть два типа парсеров XML, одни строят полностью дерево узлов (DOM, Document Object Model), другие проходят документ последовательно и полное дерево не строят (SAX - Simple API for XML). Часто используются парсеры первого типа, но если документ XML очень большой, то при использовании парсеров первого варианта могут возникать тормоза. Зависит наверное от реализации, но по-моему раньше, по крайней мере, это становилось актуальным на файлах в десятки мегабайт например. Если у вас данные меньше, то без проблем, можно использовать XML. Компонент TXMLDocument позволяет работать с XML. В Delphi впридачу есть мастер, позволяющий по схеме XML или по образцу разбираемого файла построить интерфейсы для работы с файлами конкретного вида. При открытом проекте File - New - Delphi Projects - XML - XML Data Binding. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 17:31 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
s62, спасибо. Да , думаю что нужно в моём случае использовать первый тип, т.к. файлов в целом по статистике накапливается немного, ну штук 8-10 максимум, да и секций в каждом штук 6-7. Так что копейки все это весит по информации. Да, конечное еще с этим форматом мне предстоит разбираться, что к чему) ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 17:37 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Лучше сразу на json переходи. XML не эффективен и устарел. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 18:23 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Damir_85может ли xml-файл служить альтернативой ini-файлам? Не может. Как вручную редактируемый формат он слишком заморочен. Как внутренний формат - слишком неэффективен. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 18:31 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
JSON по моему опыту получился "дешевле" в понимании и редактировании чем SQL. Но ini файл ещё проще ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 19:49 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Damir_85 Здравствуйте. Хотел спросить, может ли xml-файл служить альтернативой ini-файлам? Нет, нельзя. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 19:50 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Damir_85 Да, конечное еще с этим форматом мне предстоит разбираться, что к чему) Вот пример сохранения расписания в XML-файл и сам файл, который получается. Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63.
Файл: Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
Да, можно пользоваться JSON, но для хранения настроек, профилей, как вы написали, и т.п., не играет особой роли избыточность текста в XML - ну будет в файле не 15 Кб, а 30 Кб, особой разницы нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 20:24 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Damir_85 Здравствуйте. Хотел спросить, может ли xml-файл служить альтернативой ini-файлам? У меня имеется программа которая использует профили материалов. Каждый профиль - это отдельный ini-файл , в котором хранится информация о материале. Я просто с xml еще не работал. Можно ли например все профили хранить в одном xml-файле, т.е. получается своего рода база данных, а потом считывать обращаясь к секциями выбранного материала для загрузки его параметров? Как угодно можно организовать, главное чтоб было удобно Вам пользоваться. Хоть XML, ClientDataSet, TMemTableEh из EhLib, да хоть обычный DBF - все в одном файле будет. XML хорош тем, что туда можно разно-структурированные данные засунуть. Нормально вручную редактируемый и читаемый формат, тут на вкус и цвет кому как... ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 20:53 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Damir_85, Может, действительно стоит использовать JSON, как написали. Он несколько компактней (зотя xml тоже можно делать более компактным, используя атрибуты и разумно короткие имена узлов). Я с JSON всего однажды или пару раз имел дело, относително давно, может быть с ним и меньше кода надо писать для сохранения/загрузки, точно не скажу. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 21:10 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Все настройки должны быть в базе. Разве что, если важен код рабочего места - то его можно в инифайлик затулить. Но лучше использовать имя компьютера. Или номер ком порта (да и это лучше в базу, с привязкой к номеру рабочего места, а лучше - к имени компьютера). Зачем для этого xml - не знаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 22:08 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
YuRock Все настройки должны быть в базе Каждый раз, когда я это читаю, мне становится интересно - где хранить настройки соединения с базой. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 22:40 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
softwarer, Просто примени рекурсию. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2021, 22:42 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
softwarer YuRock Все настройки должны быть в базе Каждый раз, когда я это читаю, мне становится интересно - где хранить настройки соединения с базой. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 04:42 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
YuRock Опять же, xml здесь не нужен. Да какая разница. С точки зрения этой задачи xml, json, ini, stringlist, registry, таблица в БД - эквивалентно тривиальные хранилища набора пар path.name=value. Если программист всерьёз задумывается о том, что же выбрать, и собирается писать разный код для этих случаев - он, мягко говоря, плохой программист. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 04:58 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Как всегда, развели демагогию и флуд :) ИМХО, хранить лучше всего в том формате, для которого есть удобный парсер, позволяющий на "раз-два-три" читать/писать данные ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 07:39 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
YuRock Все настройки должны быть в базе. Ага. Причем сразу на Oracle, который живет на отдельном сервере. Автору: XML - хороший вариант, где можно потом и структуру контролировать, и всяких ORM навешать. Хоть и замороченный чуток (но это опциональные фичи, которые могут и не понадобиться никогда), но он явно переживет весь софт, который есть на данный момент. У классического JSON есть несколько тараканов, которые решены только в JSON5. Не критичны, но имеют место. А если нужна прям совсем лаконичность, то YAML ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 13:59 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Damir_85может ли xml-файл служить альтернативой ini-файлам? Как внутренний формат - слишком неэффективен. Это если сериализаторами не пользоваться. Но там всё равно лучше JSON. YuRock Все настройки должны быть в базе. ... даже когда нет базы вообще 😃 ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 14:25 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Fr0sT-Brutal А если нужна прям совсем лаконичность, то YAML А для YAML есть что-то подобное https://github.com/grijjy/GrijjyFoundation/blob/master/Grijjy.Bson.Serialization.pas ? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 14:31 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Альтернатива ini-файлам - реестр. В нем можно хранить настройки программы, как общие для всех пользователей, так и для каждого конкретного пользователя отдельно. Если же цель состоит в обмене данными, то XML или JSON большой разницы нет. JSON в настоящее время моднее. " Каждый профиль - это отдельный ini-файл , в котором хранится информация о материале ". Идея хранения данных в ini-файлах со временем уступает место другим идеям. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 15:08 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Wlr-l Альтернатива ini-файлам - реестр. По хорошему - для разных задач предназначенные. Реестр нужен для хранения данных с общим доступом, ini для внутри-програмных данных. Хранить внутренние настройки ПО в реестре - дурной тон. ИМХО. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 15:14 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Wlr-l Альтернатива ini-файлам - реестр. В нем можно хранить настройки программы, как общие для всех пользователей, так и для каждого конкретного пользователя отдельно. Если же цель состоит в обмене данными, то XML или JSON большой разницы нет. JSON в настоящее время моднее. " Каждый профиль - это отдельный ini-файл , в котором хранится информация о материале ". Идея хранения данных в ini-файлах со временем уступает место другим идеям. как бы xml и json это немного разные вещи. json это посути тот же ini текстовый файл. а вот xml это уже строго структурированный файл, с xsd схемой описывающей его структуру. естественно что у xml оверхед значительно больше чем у простых текстовых файлов, просто не надо считать что если вы открыли файл по F3 и видите его содержимое то все просто :) И именно для обмена данными есть огромная разница между xml и json :) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 16:06 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Fr0sT-Brutal YuRockВсе настройки должны быть в базе. Ага. Причем сразу на Oracle, который живет на отдельном сервере.Особенно в этом случае. Тогда пользователь перейдет на другой компьютер, и не заметит, и ничего настраивать не надо. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 16:12 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
alekcvp YuRockВсе настройки должны быть в базе. ... даже когда нет базы вообще 😃В этом случае функции базы выполняет инифайл, т.ч. всё укладывается в мою архитектуру ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 16:13 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Чисто технически можно. JSON - модно + есть возможность создавать вложенные узлы, т.е. возможностей потенциально больше. Но потом ручками редактировать будет сложновато, если оно, конечно, надо. Я уже перешел на JSON + хранение в БД. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 16:21 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
YuRock Тогда пользователь перейдет на другой компьютер, и не заметит, и ничего настраивать не надо. Угу. Зверски люблю такие продукты. У меня, например, мониторы стоят вертикально, и геометрия окон - соответствующая. И вот, логинюсь я с ноута соседа, а это больное на голову приложение начинает тянуть из базы мои вертикальные настройки и уверять меня, что я ничего не замечу. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 16:29 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
rgreat Wlr-l Альтернатива ini-файлам - реестр. По хорошему - для разных задач предназначенные. Реестр нужен для хранения данных с общим доступом, ini для внутри-програмных данных. Хранить внутренние настройки ПО в реестре - дурной тон. ИМХО. Жаль, что вы осилили только первое предложение. Реестр и создавался для замены ini-файлов с целью централизации, унификации и упрощения хранения настроек программ. Возможности реестра превосходят возможности ini-файлов. ini-файлы - это обратная совместимость Windows с DOS. Чем отличаются "данные с общим доступом" от "внутри-програмных данных" с точки зрения их хранения вне программы для меня загадка. Уже в Delphi 2 был модуль, позволяющий работать с реестром как с ini-файлом, специально для тех, кто не смог осилить работу с реестром или расстаться с ini-файлами. Я, например, тоже еще не расстался с ini-файлами. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 16:31 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Wlr-l Жаль, что вы осилили только первое предложение. Я имею полное право комментировать в твоем посте то, что сам захочу. Реестр и создавался для замены ini-файлов с целью централизации, унификации и упрощения хранения настроек программ. Возможности реестра превосходят возможности ini-файлов.Замечательно. Согласен. Однако что ты несешь дальше - это сон разума. ini-файлы - это обратная совместимость Windows с DOS.Извини, ты дурак или притворяешься? Дос умер 20 лет назад, но почти все новое ПО все еще использует ini файлы. Наверно все эти дурные люди используют ini файлы для совместимости с ДОС. Чем отличаются "данные с общим доступом" от "внутри-програмных данных" с точки зрения их хранения вне программы для меня загадка.Тем что не надо в общее хранилище пихать своих личных тараканов. Это не помойка общего пользования. Реестр распухает и ОС начинает тормозить. В итоге приходится пользоваться всяким софтом, типа RegCleaner, дабы избавиться от последствий творчества "очень умных" говнокодеров. Меня вот умиляет утилита миграции от эмбаркадеры, которая для перехода выгружает данные из реестра в ini-шник, дабы потом это все импортнуть обратно в реестр по немного другому адресу. И это при том что куча настроек среды все одно лежит в файлах. Рука-лицо точка жпг. Уже в Delphi 2 был модуль, позволяющий работать с реестром как с ini-файлом, специально для тех, кто не смог осилить работу с реестром или расстаться с ini-файлами. Я, например, тоже еще не расстался с ini-файлами.Осталось что бы кто-то придумал модуль для работы с СУБД как с ini файлом. Заживем! ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 16:50 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
ini-файлы - это технология Windows 3.1 Реестр появился в Win95 для преодоления её недостатков (например, отсутствия возможностей бэкапа-восстановления). Войны того против другого отгремели в конце прошлого века и сейчас вспоминать что-то на эту тему просто смешно. Ну а что касается такой абстракции как "пользовательские настройки", как я уже сказал, неспособность отделить её от "сериализатора" / "места хранения" ярко подчёркивает джунский уровень. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 17:01 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
30.08.2021 17:01, softwarer пишет: > ini-файлы - это технология Windows 3.1 Реестр появился в Win95 для преодоления её недостатков в Windows 3.1 уже был реестр, правда только с одной веткой HKEY_CLASSES_ROOT. полноценный реестр появился в NT 3.1 и уже оттудова был перенесён в Win95. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 17:09 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
rgreat, Что вам еще сказать? Я, в отличии от вас, не опускался до оскорблений. Да, мне жаль, что вы не осиливаете прочитанное. Все ваши высказывания - это частности, основанные на вашем неудачном опыте: кто-то умер, что-то распухает... Да и логикой у вас что-то не так. Если нечто было создано в предыдущей системе, осталось в новой системе для совместимости с предыдущей и используется в новой системе, то это не отменяет причину, по которой это нечто перешло из одной системы в другую. softwarer справедливо заметил: " что касается такой абстракции как "пользовательские настройки", неспособность отделить её от "сериализатора" / "места хранения" ярко подчёркивает джунский уровень ". Научитесь отличать частное от общего, видеть причинно-следственные связи. Цены вам не будет. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 17:54 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Wlr-l Я, в отличии от вас, не опускался до оскорблений. Смени стиль и не будешь оскорблятся. Wlr-l Да и логикой у вас что-то не так. Если нечто было создано в предыдущей системе, осталось в новой системе для совместимости с предыдущей и используется в новой системе, то это не отменяет причину, по которой это нечто перешло из одной системы в другую. Хех, по твоему все что придумано ранее существует "для совместимости". Не путать причины и следствия - базовый аспект логики. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 17:59 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
энди Wlr-l Альтернатива ini-файлам - реестр. В нем можно хранить настройки программы, как общие для всех пользователей, так и для каждого конкретного пользователя отдельно. Если же цель состоит в обмене данными, то XML или JSON большой разницы нет. JSON в настоящее время моднее. " Каждый профиль - это отдельный ini-файл , в котором хранится информация о материале ". Идея хранения данных в ini-файлах со временем уступает место другим идеям. как бы xml и json это немного разные вещи. json это посути тот же ini текстовый файл. а вот xml это уже строго структурированный файл, с xsd схемой описывающей его структуру. естественно что у xml оверхед значительно больше чем у простых текстовых файлов, просто не надо считать что если вы открыли файл по F3 и видите его содержимое то все просто :) И именно для обмена данными есть огромная разница между xml и json :) Для обмена информацией между этими двумя механизмами большой разницы нет. Сегодня чаще используют json, но, как уже сказали, xml переживет это. Они оба хорошо справляются со своей задачей. Посмотрите статьи, где сравниваются эти два механизма, и вы найдете там достоинства и недостатки каждого из этих механизмов. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 18:06 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
rgreat, Мда... джунский уровень, для вас это недостижимый уровень. Всего хорошего. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 18:09 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Wlr-l, И вам не хворать. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 18:12 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
softwarer YuRock Тогда пользователь перейдет на другой компьютер, и не заметит, и ничего настраивать не надо. Угу. Зверски люблю такие продукты. У меня, например, мониторы стоят вертикально, и геометрия окон - соответствующая. И вот, логинюсь я с ноута соседа, а это больное на голову приложение начинает тянуть из базы мои вертикальные настройки и уверять меня, что я ничего не замечу. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 19:05 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
кстати насчет реестра. Реестр конечно можно использовать , но для хранения именно настроек программы, а не различные пользовательские данные. Тем более при некорекктном удалении останутся ветки от программы( потом CCLeaner пользователь будет запускать) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 19:09 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
да еще почему спросил, т.к. программа работает с CorelDraw, а последние версии 64-битные, и ОС тоже последние версии уже 64-битные , почему то на WriteIni и ReadIni из dll библиотеки Windows программа ругается. Не пойму. то ли корел, то ли в виндовсе что то поменяли На версиях пониже работает (ну корел я имею ввиду) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 19:12 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
правда не помню, то ли в system32.dll это команды WriteIniFile ReadIniFIle то ли в другой библиотеке ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 19:14 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Damir_85 кстати насчет реестра. Реестр конечно можно использовать , но для хранения именно настроек программы, а не различные пользовательские данные. Тем более при некорекктном удалении останутся ветки от программы( потом CCLeaner пользователь будет запускать) Совершенно верно, не нужно использовать. А я - использую, и для локальных настроек, и как постоянно доступную СУБД с параллельным доступом. Например, я в реестре храню историю инсталляций программного комплекса, очень удобно. Или в качестве буфера андо-редо редактора моих документов. Но вы - не используйте, вдруг ОС тормозить начнет, достаточно того, что мои программки там безбожно мусорят. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 20:13 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Damir_85, если речь идет о файлах, которые будет редактировать человек в текстовом редакторе - то сейчас используют yaml - краткий синтаксис и хорошие возможности (он реально намного удобнее многих других форматов). Из минусов (по сравнению с XML) - нет схем с валидацией (как следствие - нет инструментов автоматического биндинга полей XML к классам), не так распространен, как XML (если хочется именно набрать опыта работы с XML). ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2021, 21:08 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Wlr-l Реестр и создавался для замены ini-файлов с целью централизации, унификации и упрощения хранения настроек программ. Возможности реестра превосходят возможности ini-файлов. ini-файлы - это обратная совместимость Windows с DOS. Создавался, но сейчас вся эта бабуйня с реестром постепенно отмирает. Объемы данных в профиле растут и становятся более разнообразными, а значит, файлы снова в тренде. Да и мультиплатформенность заставляет реестр отмирать как пережиток мс-ного выбрыка. YuRock Особенно в этом случае. Тогда пользователь перейдет на другой компьютер, и не заметит, и ничего настраивать не надо. Всё надо применять сообразно цели. Настройки блокнота - в локальном файле, а профиль оболочки к БД - в БД. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2021, 10:24 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Fr0sT-Brutal Wlr-l Реестр и создавался для замены ini-файлов с целью централизации, унификации и упрощения хранения настроек программ. Возможности реестра превосходят возможности ini-файлов. ini-файлы - это обратная совместимость Windows с DOS. Создавался, но сейчас вся эта бабуйня с реестром постепенно отмирает. Объемы данных в профиле растут и становятся более разнообразными, а значит, файлы снова в тренде. Да и мультиплатформенность заставляет реестр отмирать как пережиток мс-ного выбрыка. 1. Не нужно путать идею с реализацией. Файлы, даже если они содержат внутри себя yaml, не обеспечат такую же функциональность, какую уже позавчера обеспечивал реестр. Использование своих файлов для хранения настроек программ - это иметь внутри каждой программы свой мини-реестр. Исключением могут быть программы-инсталляторы, которые должны иметь в своем составе настроечные файлы, но не факт, что это обязательно должны быть ini-файлы. 2. Имея опыт создания СУБД, можно легко решить сегодняшние проблемы реестра. Хотя в большинстве случаев это проблемы не реестра, а программистов, чьи "программки там безбожно мусорят". 3. Уже было сказано, бои "реестр или файлы настроек" отгремели в конце прошлого века. И то, и другое, имея неравные возможности, сегодня живет параллельно друг с другом. 4. Если на какой-то другой платформе нет чего-то подобного реестру Windows, то, может быть, эта платформа еще не доросла до этой идеи. Не нужно подчеркивать, что на одном полюсе все только хорошее, а на другом - плохое. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2021, 14:10 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Wlr-l Файлы, даже если они содержат внутри себя yaml, не обеспечат такую же функциональность, какую уже позавчера обеспечивал реестр. Это какую же? Геморрой с переносом на другую систему? Жесткую привязку к Windows? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2021, 14:28 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Fr0sT-Brutal Wlr-l Файлы, даже если они содержат внутри себя yaml, не обеспечат такую же функциональность, какую уже позавчера обеспечивал реестр. Это какую же? Геморрой с переносом на другую систему? Жесткую привязку к Windows? 1. В этом обсуждении изначально речь не шла о мультиплатформенности. 2. Если все, что связанно с конечными пользователями, находится на одной платформе, то в приложении нужно использовать возможности именно этой платформы, а не возможности этой платформы + платформы для полетов на Марс. 3. Все приложения VCL жестко привязаны к одной платформе. Геморрой реестра ни что по сравнению с остальной частью VCL-приложения. 4. Дальнейшее обсуждение этого вопроса уже не имеет смысла. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2021, 15:16 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Wlr-l, сегодня VCL, а завтра, например, CrossVCL. а привязка к реестру никуда не делась: всё равно переписывать придется. так может сразу сделать как нужно? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2021, 15:30 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
makhaon Wlr-l, сегодня VCL, а завтра, например, CrossVCL. а привязка к реестру никуда не делась: всё равно переписывать придется. так может сразу сделать как нужно? Не беспокойтесь, в завтрашней CrossVCL модуль System.Win.Registry будет мультиплатформенным. Забыл сказать. Каждый человек наделен волей, т.е. свободой сознательного выбора путей достижения цели. Т.е. выбор не предопределен сверху, но предполагает знание возможностей. Но воля это и ответственность за свой выбор. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2021, 16:16 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Реестр можно использовать в двух случаях: 1. Если твоя программа - какой-то популярный известный продукт, типа SQL-сервера, чтобы при инсталляции записать в LOCAL_MACHINE\Software\MyProgramName нужные людям параметры (если такие есть) - типа пути к папке, файлам и т.д. 2. Использовать для мусора - сохранять там настройки расположения окон и подобную хрень. Больше смысла в нём я не вижу, для других целей он не удобен хотя бы потому, что его нельзя открыть "в блокноте". P.S. Сказки про белого бычка плохих программистов, после которых приходится использовать утилиты для чистки реестра, оставьте не для этого форума. Тот, кто чистит реестр потому, что он большой - просто неадекват. Тут предлагаю банить за предложения почистить реестр какой-то любой утилитой. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2021, 22:21 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
YuRock Больше смысла в нём я не вижу, для других целей он не удобен хотя бы потому, что его нельзя открыть "в блокноте". Интересно, как Вы правите в блокноте те настройки, которые рекомендуете сохранять в БД. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2021, 23:31 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Wlr-l Забыл сказать. Каждый человек наделен волей, т.е. свободой сознательного выбора путей достижения цели. Т.е. выбор не предопределен сверху, но предполагает знание возможностей. Но воля это и ответственность за свой выбор. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 00:15 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
softwarer YuRock Больше смысла в нём я не вижу, для других целей он не удобен хотя бы потому, что его нельзя открыть "в блокноте". Интересно, как Вы правите в блокноте те настройки, которые рекомендуете сохранять в БД. Ты не заметил, а я "в блокноте" в кавычках написал. Для БД "блокнот" - это Toad, IBExpert, и проч. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 00:55 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
YuRock Для БД "блокнот" - это Toad, IBExpert, и проч. Так в чём вопрос? Ты не знаешь блокнота для registry? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 00:59 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Damir_85 Хотел спросить, может ли xml-файл служить альтернативой ini-файлам? Мочь-то может, но вот нужно ли это? Как я понимаю, программа с ini уже работает, это просто и надежно. Из минусов ini - приходится несколько извращаться что бы запихнуть в него многострочные или бинарные данные, но в этом случае вообще нужно подумать а надо ли их туда пихать. В чем возникла проблема с ini-файлами? Можно посмотреть пример вашего ini-файла? Какой размер у файлов? Мне имхуется что проблема или "проблема" легко решается и с ini-файлом. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 04:50 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
softwarer ini-файлы - это технология Windows 3.1 Реестр появился в Win95 для преодоления её недостатков (например, отсутствия возможностей бэкапа-восстановления). Сорри, чьих недостатков? Win95 или ini-файлов? Скопировать ini-файл это недостаточно продвинутый метод для бэкапа? Хранить настройки в папке программы и в папке данных программы недостаточно круто, нужно разбросать все это еще и по реестру, и для переноса программы нужно будет не только копировать файлы но еще копать в реестре, и бог знает в каком месте... С реестром никогда не работал, но имхо, у него всего 2 принципиальных преимущества перед ini и прочими файлами, как xml, json, yaml, etc... 1. относительно быстрый доступ на большом количестве данных 2. параллельный доступ для разных программ ИМХО Если не требуется ни первого ни второго - не нужно лезть в реестр. Если можно решить задачу через ini/csv - не нужно лезть в xml ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 05:04 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
fraks Если можно решить задачу через ini/csv - не нужно лезть в xml У ini преимущество в том, что они нативные и с ними можно работать через встроенные функции винды. У csv какие преимущества перед тем же json, например?.. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 09:27 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
alekcvp У ini преимущество в том, что они нативные и с ними можно работать через встроенные функции винды. Преимущество сомнительное, ибо эти нативные функции убогие, и один хрен все юзают TMemIniFile. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 10:15 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Fr0sT-Brutal alekcvp У ini преимущество в том, что они нативные и с ними можно работать через встроенные функции винды. Преимущество сомнительное, ибо эти нативные функции убогие, и один хрен все юзают TMemIniFile. Ну так TMemCsvFile всё равно нет вроде?.. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 10:53 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
alekcvp fraks Если можно решить задачу через ini/csv - не нужно лезть в xml У ini преимущество в том, что они нативные и с ними можно работать через встроенные функции винды. Не знаю на счет нативности, я так же использую TMemIniFile и премного им доволен. Штатный и нативный TIniFile дюже тормозной, он похоже за каждым параметром лазит в файл отдельно. У меня ini с настройками программы 83Кб, 3000 строк, лазить за каждым - получается медленно. TMemIniFile этоу проблему превосходно решает, и то что он платформонезависим и является Pascal-only - вот это вот и есть плюс. alekcvp У csv какие преимущества перед тем же json, например?.. Простота парсера, простота понимания. Можно прочитать нужную строку из гигантского csv читая построчно, без полного разбора дерева. Если бы категорически критичным было наличие динамического дерева - тогда да, и с csv и с ini будут проблемы. Но все мои псевдо-деревянные хотелки я прекрасно уложил в плоский вид. Есть еще одно место где я совместил ini с csv - некоторые секции внутри содержат csv данные, но не буду настаивать на том что это нормально :) Зато мне не потребовалось тащить json/xml парсер ни в виде кода ни в виде dll и сохранена платформонезависимость, в этом месте. Все что я делаю, делаю с прицелом запуска под wine. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 11:23 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
fraks 2. параллельный доступ для разных программ А вот и нет :) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 11:25 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
alekcvp Fr0sT-Brutal пропущено... Преимущество сомнительное, ибо эти нативные функции убогие, и один хрен все юзают TMemIniFile. Ну так TMemCsvFile всё равно нет вроде?.. Прочитать текстовый файл построчно - нет проблемы. Собрать/разобрать строку формата csv - это встроено в TStringList; Правда в D7 там есть косячок, связанный с пробелами или кавычками, пришлось кажется написать свой вариант. А в куда это дело складывать - отдельный вопрос, зависящий от автора. У меня вместо датасетов сделан собственный велосипед - гибрид датасета с динамическим массивом, но при этом не датасет :) Я к нему добавил функцию читать и писать из/в csv и всё пучком. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 11:27 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Kazantsev Alexey fraks 2. параллельный доступ для разных программ А вот и нет :) Ну тогда тем более смысла использовать реестр мало :) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 11:31 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
fraks, Что может быть проще готового парсера, которых под JSON дофига, причём с сериализаторами?.. По-моему даже из коробки есть. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 11:50 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
fraks Скопировать ini-файл это недостаточно продвинутый метод для бэкапа? Для борцуна-теоретика, сегодня утром впервые услышавшего про бэкап настроек - достаточно. Он имеет все основания сейчас чувствовать "как я круто ответил". Для человека с компетенциями хотя бы чуть выше чем "пилю нетленку для себя и друга Васи"... даже не смешно. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 12:08 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
csv ничем не лучше json. Просто формат старый и привычный. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 12:35 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
softwarer, Однако перенос ПО путем простого копирования каталога с оным - самый простой способ из всех возможных. Недаром есть целое движение за "portable" софт. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 12:38 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
rgreat csv ничем не лучше json По факту он сильно хуже во всём, кроме некоторого преимущества по размеру. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 12:39 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
rgreat csv ничем не лучше json. Просто формат старый и привычный. по RFC 4180 каждая строка (запись) должна содержать одинаковое количество полей. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 12:39 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Мимопроходящий а как вы в нём секции делаете? по RFC 4180 каждая строка (запись) должна содержать одинаковое количество полей. Либо это уже будет на CSV а нечто "по мотивам". ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 12:41 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
rgreat Мимопроходящий а как вы в нём секции делаете? по RFC 4180 каждая строка (запись) должна содержать одинаковое количество полей. Либо это уже будет на CSV а нечто "по мотивам". ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 12:43 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
rgreat Однако перенос ПО путем простого копирования каталога с оным - самый простой способ из всех возможных. Для двух школьников на двух компьютерах - да. rgreat Недаром есть целое движение за "portable" софт. Есть. Но у него объективно узкая аудитория, которая расширяться не будет. Грубо говоря - эникейщики, которые бегают по соседям переустанавливать винду. У промышленного подхода другие требования, и в сети на тысячу компьютеров админ ну точно не будет ковыряться в том, по какому пути у каждого конкретного пользователя лежат инишники каждой из пятисот нетленок. Не говоря уже о восстановлении из такого бэкапа. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 12:48 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Мимопроходящий а как вы в нём секции делаете? по RFC 4180 каждая строка (запись) должна содержать одинаковое количество полей. Не вижу проблемы. Для представления конфигурации в виде csv достаточно двух полей. NameValueFirstSection.FirstValue1SecondSection.FirstValue2FirstSection.SecondValue3SecondSection.SecondValue4 ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 12:52 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
softwarer Не вижу проблемы. Для представления конфигурации в виде csv достаточно двух полей. NameValueFirstSection.FirstValue1SecondSection.FirstValue2FirstSection.SecondValue3SecondSection.SecondValue4 ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 13:15 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Мимопроходящий ну дык, какая ж это альтернатива INI-файлу? Я этого не предлагал. Мотороллер не мой, я просто разместил объяву. (с) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 13:32 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
softwarer Для двух школьников на двух компьютерах - да. А можно для двух взрослых на трех компьютерах? Дяденька, ну пожалуйстя! rgreat Есть. Но у него объективно узкая аудитория, которая расширяться не будет. Не человек, скала! ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 13:35 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Мимопроходящий нафиг, нафиг. Однажды меня бросило в веб, и там я быстро понял, что гораздо проще реализовать на уровне базового класса обработку &format=, нежели в каждом конкретном сервисе разбираться, в каком формате от него могут захотеть данных. В результате получилось чертовски удобно и довольно забавно, то есть, например, "выгрузить конфигурацию как экселевский файл? да нефиг делать, вот прямо сейчас вот так вызываешь и всё". ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 13:35 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
softwarer YuRock Больше смысла в нём я не вижу, для других целей он не удобен хотя бы потому, что его нельзя открыть "в блокноте". Интересно, как Вы правите в блокноте те настройки, которые рекомендуете сохранять в БД. Э-э-э... Текст SQL-скрипта? )) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 13:40 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
softwarer Есть. Но у него объективно узкая аудитория, которая расширяться не будет. Грубо говоря - эникейщики, которые бегают по соседям переустанавливать винду. У промышленного подхода другие требования, и в сети на тысячу компьютеров админ ну точно не будет ковыряться в том, по какому пути у каждого конкретного пользователя лежат инишники каждой из пятисот нетленок. Не говоря уже о восстановлении из такого бэкапа. Ты не смешивай энтерпрайз и софт для конечного юзера. Портаблы по определению для тех, кто сам себе админ или хотя бы павер юзер. softwarer Мимопроходящий а как вы в нём секции делаете? по RFC 4180 каждая строка (запись) должна содержать одинаковое количество полей. Не вижу проблемы. Для представления конфигурации в виде csv достаточно двух полей. NameValueFirstSection.FirstValue1SecondSection.FirstValue2FirstSection.SecondValue3SecondSection.SecondValue4 Ну а какой в этом смысл? Тогда можно и простые key-value файлы применять. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 13:51 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Fr0sT-Brutal Ты не смешивай энтерпрайз и софт для конечного юзера. Портаблы по определению для тех, кто сам себе админ или хотя бы павер юзер. В чём смысл твоей фразы? Начал с брутального "ты не смешивай", а затем сказал в точности то же, что и я. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 14:01 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
rgreat softwarer, Однако перенос ПО путем простого копирования каталога с оным - самый простой способ из всех возможных. Недаром есть целое движение за "portable" софт. Переход на веб-версию конечно снял проблему переноса. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 14:09 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
softwarer YuRock Для БД "блокнот" - это Toad, IBExpert, и проч. Так в чём вопрос? Ты не знаешь блокнота для registry? Кроме того, это только одно из неудобств. Еще одно - что его нельзя скопировать на другой комп "вместе с папкой программы". ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 14:12 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
YuRock Этот блокнот неудобный :) Смотря с чем сравнивать. По сравнению с тем же IBExpert он просто зверски удобный. YuRock Еще одно - что его нельзя скопировать на другой комп "вместе с папкой программы". Это неудобство у нормального человека проявляется дай бог раз в несколько лет. И более чем компенсируется тем, что одним движением в бэкап кладутся настройки всех программ. А не 100500 файлов из такого же количества папок по отдельности. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 14:57 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
softwarer YuRock Еще одно - что его нельзя скопировать на другой комп "вместе с папкой программы". Это неудобство у нормального человека проявляется дай бог раз в несколько лет. И более чем компенсируется тем, что одним движением в бэкап кладутся настройки всех программ. А не 100500 файлов из такого же количества папок по отдельности. И сразу возникает вопрос - а зачем мне бэкапы настроек всех программ? Мне нужно только от 5 программ, остальные - даром не нужны. А бэкапы из-за этого имеют неадекватные размеры, потому как пихают туда все подряд. Моя программа переезжает с WinXP на Win10 - и зачем мне для этого бэкапы всего остального виндового мусора? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 19:17 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Мимопроходящий rgreat пропущено... Никак. CSV для этого не предназначен. Либо это уже будет на CSV а нечто "по мотивам". А что, кто-то утверждал что CSV - альтернатива INI? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 19:26 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
alekcvp fraks Если можно решить задачу через ini/csv - не нужно лезть в xml У ini преимущество в том, что они нативные и с ними можно работать через встроенные функции винды. А собственно, зачем?? Работа с Ini-файлом укладывается буквально в один экран. Зачем для этого использовать встроенные функции винды если это будет не короче и не переносимо? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 19:29 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
fraks И сразу возникает вопрос - а зачем мне бэкапы Так выглядит точнее. fraks А бэкапы из-за этого имеют неадекватные размеры, потому как пихают туда все подряд. (ушёл искать рыдающий смайлик) fraks Моя программа переезжает с WinXP на Win10 - и зачем мне для этого Вот первый пункт и подтвердился. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 19:32 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
alekcvp fraks, Что может быть проще готового парсера, которых под JSON дофига, причём с сериализаторами?.. По-моему даже из коробки есть. В D7 из коробки для JSON - нет. alekcvp которых под JSON дофига, причём с сериализаторами?.. Когда речь заходит про дофига вариантов - сразу возникает вопрос, а с какой целью их родилось дофига вариантов? Каждый чем-то не устраивал, и делали другой, со своим блек-джеком и т.п.? И какой выбирать? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 19:34 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
softwarer fraks Скопировать ini-файл это недостаточно продвинутый метод для бэкапа? Для борцуна-теоретика, сегодня утром впервые услышавшего про бэкап настроек - достаточно. Я не теоретик, я сугубо практик. У меня задача - сохранить настройки МОЕЙ программы, мне не нужна вся система. И настройки МОЕЙ программы сохраняются простым копированием либо файла, либо папки с программой и прочим. Это не по сегодняшним трендам, но у меня все причиндалы программы, кроме собственно Firebird, находятся в папке с программой. Устарновка программы - простым копированием. Бэкап программы - простым копированием. Впрочем, проще скопировать с соседнего компа. В ini ничего критично важного нету, а cам exe у всех одинаковый, и в любом случае самообновится из БД. Из программ аналогичного устройства, у нас используется СБИС++ - все что требуется - находится внутри одной папки. Это программа электронной отчетности в гос.органы и ЭДО. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 19:39 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
fraks Когда речь заходит про дофига вариантов - сразу возникает вопрос, а с какой целью их родилось дофига вариантов? Каждый чем-то не устраивал, и делали другой, со своим блек-джеком и т.п.?Ага. И какой выбирать?Лучший, конечно! ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 19:43 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
rgreat fraks Когда речь заходит про дофига вариантов - сразу возникает вопрос, а с какой целью их родилось дофига вариантов? Каждый чем-то не устраивал, и делали другой, со своим блек-джеком и т.п.? И какой выбирать?Лучший, конечно! Лучший JSON - это INI! :) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 19:56 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
fraks softwarer пропущено... Для борцуна-теоретика, сегодня утром впервые услышавшего про бэкап настроек - достаточно. Я не теоретик, я сугубо практик. У меня задача - сохранить настройки МОЕЙ программы, мне не нужна вся система. И настройки МОЕЙ программы сохраняются простым копированием либо файла, либо папки с программой и прочим. Это не по сегодняшним трендам, но у меня все причиндалы программы, кроме собственно Firebird, находятся в папке с программой. Устарновка программы - простым копированием. Бэкап программы - простым копированием. Впрочем, проще скопировать с соседнего компа. В ini ничего критично важного нету, а cам exe у всех одинаковый, и в любом случае самообновится из БД. Из программ аналогичного устройства, у нас используется СБИС++ - все что требуется - находится внутри одной папки. Это программа электронной отчетности в гос.органы и ЭДО. Ты офигел чтоли? ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 20:15 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
fraks Я не теоретик, я сугубо практик. Практик знает или хотя бы догадывается, что мир не исчерпывается его нетленкой. Он знает, что у каждого пользователя таких программ, от которых нужно бэкапить настройки, добрый десяток. Мало того, он знает, что пользователь занят своей работой и о бэкапах вообще не думает - это задача админа, у которого таких пользователей тысячи, а нетленок, в которых они работают - сотни. И даже если он гордо сидит в болоте на три компьютера и копирует свою программу с одного на другой - он может сообразить, что Microsoft в дизайне своих решений ориентируется не только на его нетленку. И именно поэтому она в том числе придумала реестр. Для того, чтобы одним махом снять с айтишников большой геморрой, оставив только маленький - с теми нетленками, авторы которых застряли в двадцатом веке и работают через инишники. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 20:20 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
softwarer Microsoft в дизайне своих решений ориентируется не только на его нетленку. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 20:32 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
softwarer Для того, чтобы одним махом снять с айтишников большой геморрой, оставив только маленький - с теми нетленками, авторы которых застряли в двадцатом веке и работают через инишники. А после следующего маха - еще и адовую помойку из каталога Users. Profit! Классическое: хотели как лучше, а получилось как всегда. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 20:34 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
В андроиде в этом плане раньше было лучше. ПО в одном месте, данные ПО в другом, по жестким правилам, но внутри этих правил довольно гибко. Бэкапить было удобно. Пока в очередной версии очень умный гуголь не запретил сторонним бэкап приложениям доступы к данным установленных программ. И все, пока-пока: пользуйтесь убогими и ограниченными решениями от брендов или идите нафиг. Здравствуй электронное рабство. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 20:43 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
softwarer fraks Я не теоретик, я сугубо практик. Практик знает или хотя бы догадывается, что мир не исчерпывается его нетленкой. Он знает, что у каждого пользователя таких программ, от которых нужно бэкапить настройки, добрый десяток. Мало того, он знает, что пользователь занят своей работой и о бэкапах вообще не думает - это задача админа, у которого таких пользователей тысячи, а нетленок, в которых они работают - сотни. И даже если он гордо сидит в болоте на три компьютера и копирует свою программу с одного на другой - он может сообразить, что Microsoft в дизайне своих решений ориентируется не только на его нетленку. И именно поэтому она в том числе придумала реестр. Для того, чтобы одним махом снять с айтишников большой геморрой, оставив только маленький - с теми нетленками, авторы которых застряли в двадцатом веке и работают через инишники. Практик в конкретно своем огороде, который составляет до пары сотен тачек в пяти городах, знает, что программ для которых имеет смысл что-то сохранять, на каждом компе можно сосчитать на пальцах одной руки. Все остальное сохранять, и тем более разбираться в сохраненном гавнище - не имеет смысла. Мне глубоко насрать как решает свои проблемы микрософт. Я решаю свои проблемы способом, минимально зависящим от окружения и текущей моды на езыки программирования в текущем квартале и полугодии, и прочие свистоперделки. Программам, которые все свое хранят в своей папке, не имеют внешних зависимостей которые нельзя простым способом проследить, и не раскидывают по системе - мое искреннее уважение. Можешь обойтись тем что у тебя есть - обойдись. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 21:09 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
rgreat И вот где во всем этом монетизация, облачные технологии и геморрой? Ты офигел чтоли? ;) Монетизация - она в бизнесе. Моя/мои программы решают вопросы бизнеса, никакой непосредственной монетизации не закладывается. Облако - только если оно собственное. Если чужое - в топку. Незачем тратить время и усилия на то что может исчезнуть в любой момент. Зависимость от внешних сервисов - только если очень надо, и только на время, потом поднять свой сервис или обойтись без него. Геморроя хватает собственного, и незачем разбираться еще и с чужим. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 21:14 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
softwarer fraks Я не теоретик, я сугубо практик. Практик знает или хотя бы догадывается, что мир не исчерпывается его нетленкой. Он знает, что у каждого пользователя таких программ, от которых нужно бэкапить настройки, добрый десяток. Практик знает, что его программа работает на всем спектре от WinXP до Win10, а так же некотором спектре линуксов. Чем меньше будет зависимостей - тем меньше будет проблем. Монолитный бинарник, общение через файлы или сервисы по TCP. Никаких OLE/DDE и прочей фигни. Минимальная ОС-зависимость. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 21:32 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
fraks rgreat пропущено... Именно. пропущено... Ага. пропущено... Лучший, конечно! Лучший JSON - это INI! :) так то и json можно в ини загнать ) только нужно ли... ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 21:55 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
makhaon fraks пропущено... Лучший JSON - это INI! :) так то и json можно в ини загнать ) только нужно ли... Можно много чего сделать, но нужно же как-то бороться с нынешней модой палить из пушки по воробьям и ездить в магазин за хлебом на индивидуально спроектированном, в соответствии с модой этого года, облачном метро, с нулевым выбросом метана и CO2. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 22:05 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
softwarer fraks Я не теоретик, я сугубо практик. При этом в рееестр насрала целая сотня, а может и не одна. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2021, 23:06 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
softwarer YuRock Этот блокнот неудобный :) Смотря с чем сравнивать. По сравнению с тем же IBExpert он просто зверски удобный. YuRock Еще одно - что его нельзя скопировать на другой комп "вместе с папкой программы". Это неудобство у нормального человека проявляется дай бог раз в несколько лет. И более чем компенсируется тем, что одним движением в бэкап кладутся настройки всех программ. А не 100500 файлов из такого же количества папок по отдельности. Забэкапирь ветки реестра проще, чем скопировать одну папку? Ну-ну. Фантазии про 100500 папок без комментариев. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 02:44 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
softwarer YuRock Еще одно - что его нельзя скопировать на другой комп "вместе с папкой программы". Это неудобство у нормального человека проявляется дай бог раз в несколько лет. У меня это примерно каждый месяц. Не по причине переезда а по причине обрудования нового рабочего места. Удаленка и т.п. softwarer И более чем компенсируется тем, что одним движением в бэкап кладутся настройки всех программ. А не 100500 файлов из такого же количества папок по отдельности. Ну, это типа засунуть все базы сервера в одну базу, один файл, и все это вместе забэкапить. А чо, удобно. Все базы одним движением в один бэкап. Особенно когда тебе нужно достать из бэкапа одну базу из 100 там присутствующих. И попутно решая вопрос а где хранить эти бэкапы, при том что бОльшая часть баз - это никогда не меняющаяся статика, которую можно просто скопировать с другого сервера, ибо они одинаковые. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 04:03 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Вот вы тут обсуждаете всякие ini, xml, json, реестры(боже упаси), а нормальные пацаны все настройки давно хранят в Active Directory... ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 09:49 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Barmaley57, особенно удобно в AD хранить настройки линукс приложений... ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 09:57 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
makhaon Barmaley57, особенно удобно в AD хранить настройки линукс приложений... ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 09:58 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Barmaley57, Действий проще и универсальней чем скопировать файл/каталог все одно не придумали. Файловые менеджеры есть везде, как и облачные хранилища для файлов доступны в ассортименте. На любой вид и вкус. Любые другие решения более ограничивающие. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 10:18 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Barmaley57 а нормальные пацаны все настройки давно хранят в Active Directory... Это типа медленный реестр не на локальной тачке? Барабаны Страдивари нормальным пацанам запретить невозможно :) Можно еще в облака закидывать или веб-сервис в облаке для этого смастерить. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 10:33 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Зато это полный кайф для администраторов. А еще это модно, стильно и молодежно)) И смузи дают... ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 10:36 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Barmaley57 Зато это полный кайф для администраторов. Перемещаемые профили. И админы кайфуют и программисты не напрягаются. И файлы. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 10:44 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Kazantsev Alexey Перемещаемые профили. И админы кайфуют и программисты не напрягаются. И файлы. Винда - та еще помойка по структуре хранения. Хотя для "бухгалтерии" вероятно и этого достаточно. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 11:05 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
ъъъъъ Damir_85 кстати насчет реестра. Реестр конечно можно использовать , но для хранения именно настроек программы, а не различные пользовательские данные. Тем более при некорекктном удалении останутся ветки от программы( потом CCLeaner пользователь будет запускать) Совершенно верно, не нужно использовать. А я - использую, и для локальных настроек, и как постоянно доступную СУБД с параллельным доступом. Например, я в реестре храню историю инсталляций программного комплекса, очень удобно. Или в качестве буфера андо-редо редактора моих документов. Но вы - не используйте, вдруг ОС тормозить начнет, достаточно того, что мои программки там безбожно мусорят. ну тут уж кому как удобно. если уж у вас реестр - это СУБД, значит СУБД. Просто почему некоторые настройки удобно в файлах хранить, неважно какого формата, например, при вылете операционной системы все данные в реестре стираются , т.к. переустановка нужна, ну а файл можно хранить не на системном диске, т.е. при форматироании при установке его не затронет, и потом вернуть старые настройки программы ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 11:10 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Damir_85, хотя реестр-СУБД, странное решение ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 11:10 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
rgreat, Что положишь то и будет. Если принципиально не кладётся, то симлинки. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 11:13 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Barmaley57 Вот вы тут обсуждаете всякие ini, xml, json, реестры(боже упаси), а нормальные пацаны все настройки давно хранят в Active Directory... Нормальные пацаны с embedded-версиями в кармане ходют. И не оставляют следов. Так что и AD, и реестр идут лесом. INI следом ковыляет туда-же. Так куда-же крестьянину деваться? Храните деньги в сберегательной кассе данные в базе данных. Одни плюсы. 1. Никакой криворукий админ случайно не грохнет ваши настройки. 2. Никакой диверсант не исправит ваши настройки так, что программа вылетит к чертям собачим за пределы экрана. 3. Никакой шпиён не проследит, какие названия имеются у ваших форм или другая информация полезная пытливому уму, которую он может почерпнуть из реестра или ini-файла. 4. Снимается проблема многопользовательской работы на одном компьютере. В случае AD или реестра она ещё как-то решается, но в случае INI - это треш и угар. 5. Снимается проблема версионности программ. Это вообще никак не решается ни INI, ни AD, ни регистром. 6. Снимается проблема сложных настроек. Например, настройки таблиц, с шириной колонок и их ассортиментом достаточно геморройно сохранить в любом месте, кроме БЛОБа 7. Тема архивации настроек, которую тут на нескольких страницах раскачивают, так-же автоматом под лавку уползает. Кроме того, если я захочу начать работу завтра с того места, где я её закончил сегодня, причём закончил на одном компьютере, а продолжу на другом? Ну-ка любители AD, регистра и ini, выкатите решение! Слабое место тут - строка подключения к БД. Её нужно где-то хранить. И где-же? ехидно вопрошает любитель AD, регистра и ini. Если не в AD, регистре или ini, то где? Уж не в EXE-шнике-ли, жёстко зашитой? EXE-шник тоже не вариант. Хотя можно поизвращаться и тут. Для себя пока приемлемым решением определил хранение строки подключения к БД в строке параметров запуска программы. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 12:05 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
zeon11 Нормальные пацаны с embedded-версиями в кармане ходют. И не оставляют следов. Так что и AD, и реестр идут лесом. INI следом ковыляет туда-же. Ну вот у нас "mobile" инсталляция есть. Когда ПК можно на флешку установить. Возникла "проблема" одновременного многопользовательского доступа к общим настройкам. Реестр позволяет, а что с флешкой делать? Параллельную запись в текстовый файл - никак. В итоге сделали хранение в файле базы FireBird Embedded, эта штука с версии 2.1 позволяет параллельно запись в файл базы делать. Для доступа - свой класс-враппер с интерфейсом от TregIniFile, вызовы транслируются либо в TRegIniFile, либо в команды доступа к базе, в зависимости от того, какую галку юзер при инсталляции клацнул. Для оперативного просмотра/редактирования - махонькая утилита, типа regedit. Всё очень просто. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 12:15 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
zeon11 Слабое место тут - строка подключения к БД. Её нужно где-то хранить. И где-же? ехидно вопрошает любитель AD, регистра и ini. Если не в AD, регистре или ini, то где? Уж не в EXE-шнике-ли, жёстко зашитой? EXE-шник тоже не вариант. Хотя можно поизвращаться и тут. В локальной базе данных рядом с exe-шником 🤣 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 12:21 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Damir_85 Здравствуйте. Хотел спросить, может ли xml-файл служить альтернативой ini-файлам? У меня имеется программа которая использует профили материалов. Каждый профиль - это отдельный ini-файл , в котором хранится информация о материале. Я просто с xml еще не работал. Можно ли например все профили хранить в одном xml-файле, т.е. получается своего рода база данных, а потом считывать обращаясь к секциями выбранного материала для загрузки его параметров? Топик стартовал с опозданием лет на 20. Технология XML расцвела в 2000х. Тогда с ней связывали большие надежды. В частности. Искусственный интеллект. Семантический веб. Базы знаний и онтологии. Сегодня XML хотя и прочно занял свою нишу, но в конфигах он выглядит рудиментом. Особенно страшно читать конфиги Apache Http Server. Вроде и xml и вроде и бульдог-носорог. Поэтому в продвинутых проектах давно используют Yaml или упрощённые диалекты JSON по типу Json-5 или Hocon где нет доминации кавычек и синтаксис выглядит human-readable. Но я говорю за свой сегмент. За back-end на Java-ent. В девопсах - тоже Yaml популярен. На нем поднимают всякие docker-compose. Как в сегменте Delphi - не знаю. Но думаю что Delphi тоже должен отражать какие-то цивилизационные процессы. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 13:15 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
zeon11 Слабое место тут - строка подключения к БД. Её нужно где-то хранить. И где-же? ехидно вопрошает любитель AD, регистра и ini. Если не в AD, регистре или ini, то где? Уж не в EXE-шнике-ли, жёстко зашитой? EXE-шник тоже не вариант. Хотя можно поизвращаться и тут. При коннекте к серверу приложений урла может быть удаленно изменена сервером. Если совсем прижало - можно поменять IP адрес сервера через DNS. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 13:54 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Сейчас ради прикола только в одной папке C:\Windows (у меня Win7) сделал поиск по маске *.ini чтобы просто посмотреть сколько вообще этих файлов еще используется. Нашел где то 654 файла. Так что достаточно много). По xml побольше , где то 1 264 но тут наврятли все прям настроечные. Насчет следующих версий Windows незнаю, насколько у них еще актуальны ini. Особенно в 10 версии ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 14:47 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
В среде Windows единой точкой сбора конфигов является реестр. Он - типизированный. И есть возможность вести какую-то древовидную структуру. Для винды делать ini/xml/json/yaml e.t.c. конфиги имеет смысл - если у вас portable версия приложения и вы хотите таскать ее на флешке с собой. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 15:25 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
zeon11 Храните деньги в сберегательной кассе данные в базе данных. Одни плюсы. То есть заботы программера скинуть на админа БД и умыть руки :)) отличное решение! Не говоря уже о том, что половина перечисленных плюсов очень сомнительна ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 18:20 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Fr0sT-Brutal zeon11 Храните деньги в сберегательной кассе данные в базе данных. Одни плюсы. То есть заботы программера скинуть на админа БД и умыть руки :)) отличное решение! Не говоря уже о том, что половина перечисленных плюсов очень сомнительна А когда умрёт винт - достаточно будет установить программу и взять базу из бэкапа (реплику, или как там сделано). И всё. Меньше работы - меньше требуется людей на поддержке. Это тупо деньги. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 18:36 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Fr0sT-Brutal zeon11 Храните деньги в сберегательной кассе данные в базе данных. Одни плюсы. То есть заботы программера скинуть на админа БД и умыть руки :)) отличное решение! Не говоря уже о том, что половина перечисленных плюсов очень сомнительна Вам сомнительна, а мне нет. Ваш опыт против моего опыта. Я попробовал все варианты и остановился на лучшем, с моей точки зрения. Я перечислил все плюсы, и постарался аргументировать, Вы даже не удосужились перечислить сомнительные с Вашей точки зрения пункты. И даже если половина, как Вы пишете, сомнительна, то вторая половина, даже для Вас бесспорна. Сомнения примем как 50 на 50, с учетом бесспорной для Вас половины, Вы согласны на 75% с моими выкладками. Так что админ может и потерпеть. И да, чем там программер нагрузил админа БД в данном кейсе? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 18:54 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
YuRock, у нас база бакапиться в одном архиве вместе с инишками. что мы делаем не так? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2021, 19:11 |
|
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 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
Fr0sT-Brutal Тем не менее, настройки там и в виде js хранятся Сложный и длинный .ini файл мало чем лучше для таких программ. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2021, 12:46 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
tunknown Если программа исключительно в исходниках, например, самописная на предприятии, то настройки иногда можно держать прямо в отдельных модулях кода. Если есть точное понимание и контроль того, как программа используется, то можно и в ресурсах .exe файла настройки хранить и править. Можно и в отдельных потоках файловой системы, если та поддерживает. Не буду говорить про антивирусы. Просто есть такая практика что дистрибутив приложения обычно подписывается электронной подписью от производителя. Если на любой пустяк - изменять ресурсы - то этот принцип будет сломан. Подпись недействительна. И сам подход к работе уж слишком напоминает взлом софта. И я не как разработчик а как пользователь этого софта был бы против такого подхода. Уж лучше реестр и ini-файлы. Мне так спокойнее. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2021, 19:52 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
mayton Просто есть такая практика что дистрибутив приложения обычно подписывается электронной подписью от производителя. Для самописки на предприятии это довольно странная и нелепая практика. Хотя конфигурация в ресурсах, конечно, изрядно напоминает фарингальную вазэктомию. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2021, 20:02 |
|
XML как альтернатива INI
|
|||
---|---|---|---|
#18+
softwarer mayton Просто есть такая практика что дистрибутив приложения обычно подписывается электронной подписью от производителя. Для самописки на предприятии это довольно странная и нелепая практика. Хотя конфигурация в ресурсах, конечно, изрядно напоминает фарингальную вазэктомию. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2021, 10:44 |
|
|
start [/forum/topic.php?all=1&fid=58&tid=2037044]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
44ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
150ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 255ms |
0 / 0 |