Я видел людей, использующих *.cfg(Python Buildout), *.xml(Gnome), *.json(расширение Chrome), *.yaml(Google App Engine), *.ini и даже *.py для файлы конфигурации приложения (например, Django).
Мой вопрос: почему существует так много разных форматов конфигурационных файлов? Я вижу преимущество от подхода xml vs json (гораздо менее подробного) или Python (иногда у вас есть приложение Python и вы не хотите использовать конкретный модуль для разбора файла конфигурации), но как насчет другого подходы?
Я знаю, что есть еще больше форматов, чем те конфигурационные файлы, которые я привел в пример. Каковы их преимущества по сравнению друг с другом? Исторические причины? Совместимость с различными системами?
Если вы запустили приложение для чтения каких-либо файлов конфигурации (с помощью экосистемы плагина), какой из них вы бы использовали?
Какие из них, которые я привел в качестве примера, являются самыми старыми? Вы знаете историю?