LINUX.ORG.RU
ФорумTalks

Почему вам не нравятся конфиги в XML?


0

0
Плюсы перечислять, я думаю, не надо, они и так очевидны. А вот что насчет минусов? Основной аргумент против -- human unreadable синтаксис. Серьезный аргумент. Но проблема ли это формата? При наличии простых и удобных инструментов для редактирования XML (и для консоли, я думаю, можно сделать что-то удобное), ваше мнение поменялось бы в положительную сторону и если нет -- почему? Какие еще существенные минусы?

> При наличии простых и удобных инструментов для редактирования XML (и для консоли, я думаю, можно сделать что-то удобное), ваше мнение поменялось бы в положительную сторону и если нет -- почему? Какие еще существенные минусы?

Вот вам и минус. Есть VI, им можно редактировать конфиг. Но XML редактировать не удобно. Прикажете на каждый сервер ставить некий консольный XML-editor? Ну и нах. оно нужно?
andreyu ★★★★★
()
Ответ на: комментарий от andreyu
> Вот вам и минус. Есть VI, им можно редактировать конфиг. Но XML редактировать не удобно. Прикажете на каждый сервер ставить некий консольный XML-editor? Ну и нах. оно нужно?

А ви там как появился? Его предустановили. Если будет необходимо, предустановят и эту утилиту.

a3
() автор топика
Ответ на: комментарий от andreyu
> Есть VI, им можно редактировать конфиг. Но XML редактировать не удобно.

а для vim разве нельзя сделать плагин для разбора/редактирования xml?
isden ★★★★★
()
Ответ на: комментарий от a3
>Если будет необходимо, предустановят и эту утилиту.

С таким же успехом можно и гуёвину с иксами преудстановить. А вим - стандарт, есть в любой вменяемой системе.
Turbid ★★★★★
()
Одному мне кажется, что XML вполне human readable? Главное, чтобы он был оформлен нормально, а кашу вместо конфига можно и с горячо всеми любимым ini-style сотворить.
narayan
()
Ответ на: комментарий от Turbid
>А вим - стандарт, есть в любой вменяемой системе.

Разве что в RH/Fedora или слаквари какой-нибудь. В генте по дефолту nano, в убунте на ливсиди труйни типа vim/emacs вообще нет.

Absurd ★★★
()
Плюсов не вижу. Зачем учить лишние инструменты для редактирования xml, если имеющиеся форматы конфигов прекрасно справляются со своей задачей и редактируются любым удобным в конкретной ситуации средством? Еще один минус: парсер xml — не слишком легкая вещь, если оно будет встроено во все используемые программы, это будет ощутимо. Итог: 2 минуса, 0 плюсов. Нафиг.
x3al ★★★★★
()
Ответ на: комментарий от isden
В чем вообще смысл XML? Если текст, то в виде, простом для редактирования человеком без необходимости в дополнительных инструментах, что классически сложилось в *nix. Если уж для автоматической обработки, то использовать какую-нибудь СУБД.
А XML что-то среднее, проигрывающее по обоим "флангам". Вроде и текстовый, но неудобный и избыточный для ручной правки и в тоже время с потерей быстродействия для автоматической обработки. Как то так.
Bod ★★★★
()
Ответ на: комментарий от tailgunner
>> Плюсы перечислять, я думаю, не надо, они и так очевидны.

>Разве что тебе лично

В жабе можно сходу сотворить древовидный конфиг без third-party библиотек и велосипеда.

Absurd ★★★
()
Ответ на: комментарий от Absurd
Есть в RH и Debian, остальное от лукавого, т.к. речь в основном идет в удаленном редактировании конфигов на серверах.

p.s. А что, в nano xml удобней править чем в vim?

В любом случае дистростроители не будут заморачиваться с предустановкой плагинов к, например, vim.
Turbid ★★★★★
()
Ответ на: комментарий от Turbid
>Есть в RH и Debian, остальное от лукавого, т.к. речь в основном идет в удаленном редактировании конфигов на серверах.

Серверов много под соляризом и BSD, там древний и тупой vi как правило.

Absurd ★★★
()
- хуман анридбл

- хуман анедитбл, нафига текстовый конфиг если малейшая ошибка в мешанине тэгов приводит к тому что все вхлам. Причем если парсинг из-за этого уйдет не в ту степь - пипец всем остальным веткам. Уж всяко лучше TLV hexeditorom

- гораздо проще часа за 4-е нарисовать парсер иерархических конфигов.

- его засунули туда куда он изначально не предназначался.

iBliss
()
Ответ на: комментарий от Absurd
> В жабе можно сходу сотворить древовидный конфиг без third-party библиотек и велосипеда.

Это очень важно для базовой системы, да.

tailgunner ★★★★★
()
Ответ на: комментарий от narayan

Robots in my thread.

>Одному мне кажется, что XML вполне human readable?

Вы видели YAML? Вот это действительно hunam readable. И при этом машиной нормально разбирается,
Camel ★★★★★
()
Ответ на: комментарий от Deleted
> ITT неосилившие XML.

Однозначное определение в СSS, эффективно разбирается и машиной и человеком.

Кстати расскажи для чего изначально был разработан XML?

iBliss
()
Ответ на: комментарий от iBliss
Про CSS grid layout слышал? Вот :)

>Кстати расскажи для чего изначально был разработан XML?


В гугле забанили и какое это имеет отношение?
Deleted
()
Ответ на: комментарий от Deleted
> "какое это имеет отношение"? Это как бы вопрос (:

Уфффф. Это язык для сериализации данных. Начерта сериализация данных в конфиге того-же вм? Кто кроме такого-же wm, причем такой-же версии сможет воспользоваться?

iBliss
()
Ответ на: комментарий от tailgunner
>> В жабе можно сходу сотворить древовидный конфиг без third-party библиотек и велосипеда.

>Это очень важно для базовой системы, да.

Насколько я понял в топике речь идет о конфигах вообще.

Absurd ★★★
()
В этом треде кормятся тролли, не слышавшие об отступах и подцветке XML.
shahid ★★★★★
()
Ответ на: комментарий от iBliss
Ну вот возьмём простой пример.

<config>
<main>
<owner>user1</owner>
<resource>myres1</resource>
</main>
</config>

Как некая абстрактная "сериализация" мешает жить в данном случае?
Deleted
()
Ответ на: комментарий от iBliss

Preformatted

Ну вот возьмём простой пример.

<config>
    <main>
        <owner>user1</owner>
        <resource>myres1</resource>
    </main>
</config>

Как некая абстрактная "сериализация" мешает жить в данном случае?
Deleted
()
Ответ на: комментарий от x3al
Можно. А что делать, когда структура конфига усложняется? Причём у каждой программы она своя и, например, что бы написать общую конфигурялку нужно изобрести кучу лисапедов. Очень удобно.
Deleted
()
Ответ на: комментарий от x3al

P.S.

Имя "user1" может содержать пробелы и другие экзотические символы. Начинается пляска с кавычками и экранированием. В XML оно тоже есть, но стандартизовано > и <, к примеру.
Deleted
()
Ответ на: комментарий от Deleted
>и, например, что бы написать общую конфигурялку нужно изобрести кучу лисапедов
Или не заниматься написанием ненужного софта и использовать обычные редакторы plaintext`а. Очень удобно.
x3al ★★★★★
()
Ответ на: комментарий от x3al
В ынтырпрайзе с таким отношением далеко не уедешь. Да и простые пользователи хотят GUI, потому лисапеды будут.
Deleted
()
Ответ на: комментарий от Absurd
>>Не нравится YAML.
>Объективный такой критерий.


Было бы весело услышать от tailgunner ответ ДА.
Devix
()
Ответ на: Preformatted от Deleted
> Как некая абстрактная "сериализация" мешает жить в данном случае?

Она просто тут ненужна.

1. Примеры желательно брать посложнее

2. Идиотский оверхед

3. Возьмите примеры с дебилизмами вроде

<resource>
<name type=string>string_resource</name>
<resource_cost type=integer>12345</resource_cost>
<validity type=date>01.01.01</validity>
</resource>

Внимание вопрос 12345-это integer или таки string? А 01.01.01 это date или тоже string ?

Мало того что такие вещи

- в случае ошибок неоднозначно парсятся

- данные после парсинга всеравно останутся стрингами которые надо дополнительно разбирать

- при высокой сложности, доверять такой конфиг хуманам - смертельно опасно, люди ненадежны.
iBliss
()
Ответ на: комментарий от Deleted
> Да и простые пользователи хотят GUI, потому лисапеды будут.

Так гуи к конфигу является лисапедом именно сейчас, когда один дрочит правой, другой левой, третий вприсядку. Если все конфиги будут стандартизованы, то гуи для них будет писать просто и легко. А вместо клацанья на чекбоксе лезть искать конфиг ~ /etc и разбираться в очередном мегаформате васи пупкина -- маразм.

a3
() автор топика
Ответ на: комментарий от iBliss
>Возьмите примеры с дебилизмами вроде

Проблема XML'а в том, что аффтар псих? Писать type=integer/data или ещё что кто-то заставляет? В ini конфиге ты же их не пишешь, зачем в XML?

>Внимание вопрос 12345-это integer или таки string? А 01.01.01 это date или тоже string ?


ini файл магически даёт сведения об этом? Или вы за какой формат?

>данные после парсинга всеравно останутся стрингами которые надо дополнительно разбирать


Я скажу больше — данные проверять придётся в любом случае. Если не хочешь словить сегфолт случайными данными.
Deleted
()
Ответ на: комментарий от a3
И чем не вариант на XML стандартизовать? Предложите свой вариант :)

Если то, что говорит википедия про YAML правда, то он монструозен.
Deleted
()
Ответ на: комментарий от Deleted
* аффтар проги имеется в виду :}
Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.