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
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.