Как стать автором
Обновить

Комментарии 19

Нытье по поводу ямла вообще странная мода. Отличный формат по моему. Есть томл, как аналог, но он значительно менее удобен.

А что в нем хорошего? Плохо читается, плохо редактируется, сложный.
Какой-нибудь json, конечно, тоже не идеален - но проще и удобнее.

В джейсоне гора лишних знаков препинания. Это конкретныц коритерий. Что до остальных ваших утверждений, то они голословны.

Хм, а в чем проблема с лишними знаками препинания? Любой нормальный редактор их автоматически проставляет.

А вот сложность yaml - вполне объективная, можно смотреть по объему кода для разбора или по объему документации.
Сложность редактирования (вернее, простота допустить ошибку) - тоже вполне объективная. В Json опечатка приведет к нарушению синтаксиса. А вот в yaml опечатка приводит к изменению семантики, что гораздо грустнее.
Ну и так далее.

Ничуть опечатка не приведет в джейсоне к проблемам меньшим чем в ямле. Что за ерунда, рпечатка везде опечатка. Что до сложности разбора так не пишите парсеры ямла если аам сложно писать парсеры, а генерите их по грамматике ;)

Любой же нормальный редактор так же автоматически следит и за ямлом. Таким образом ужасы ямла остаются нытьем непонятным.

Особенно это неясно если тебе надо сделать многострочное значение или еще что то подобное и пусть редактор вам автоматически превратит все в кашу из экранирований ;)

А мне нравится toml.
Больше всего радует в нём, что на уровне самого формата предусмотрено переиспользование одних параметров конфига в определении других, и то, что прямо в конфиге можно указывать переменные окружения.

Что может быть превосходнее

Toml удобный, если у документа сущности не больше трёх уровней вложенности, в случае сильно вложенных структур он сильно хуже Yaml-а.

It nests very poorly. It doesn't fare well with large files.

Но назвать Yaml лучшим тоже язык не повернётся:

At the same time, YAML can be ambiguous about what types the data written into it is. There's also a persistent issue where very large YAML files become unmanageable, especially due to the significant indentation feature.

Эти цитаты из https://kdl.dev/ и я с ними согласен (сам формат при этом не сильно распространён). Ещё есть HOCON, популярный у джавистов и Json5, популяризированный разработчиками Хрома. И тут появляется проблема, что все альтернативы Json лучше, чем Json, но среди альтернатив нет явного лидера.

Так и живём.

Вот да, и HOCON и Json5 - лучше и json и, тем более, yaml. Но пока не так популярны (

Очень интересно, но ничего непонятно.

Не везде это удобно. Если для конфигов я двумя руками "за", то тот же сваггер в РНР не напишешь.

Там по ссылке, говорится о 10 преимуществах PHP конфигов. Но по сути, есть еще одно: они хотят, чтобы XML/YAML пакеты не были частью ядра. Чем меньше тем лучше. А продолжать использовать YAML никто не запрещает. Используйте, если удобно.

Всё так. В принципе, это очень логично для создателей фреймворка.

Только там разговор был в 2020 году... Прошло 4 года, а воз и ныне там (версия 7.1):
https://github.com/symfony/demo/tree/main/config
Видно, что-то не пошло.. :) Но спасибо за замечание.

В оригинальной issue говорилось о перводе конфигов контейнера с xml на php

Be warned that semantic configuration will stay in YAML for now (as using PHP is much harder there).

Прошло 4 года, а воз и ныне там

То, на что вы ссылаетесь - и есть semantic configuration

А первое предложение о чем?

In Symfony 6, I we will promote usage of configuration written in PHP instead of YAML.

Речь о конфигурировании контейнера. В принципе, можно и пакеты так конфигурировать, но теряется возможность использовать flex

А когда Томаш стал создателем симфони, а не ректора?)

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории