CheckOut, json позволяет сбежать из этого зоопарка, и программирование логики вернуть в язык программирования, а не заниматься хренью. Это программируем так, схему программируем этак. Тут у нас база есть, но некогда изучать ее возможности, давайте просто там хранить картинки. И прочий подобный бред. Добавьте сюда любовь к введению, а затем изменению правил игры. Ой, начиная с версии такой-то ... идите переучивайтесь. Это всё та же попытка отделить долгоживущие данные от зоопарка кода, который переписывается, переходит на другие языки и т.п. Идейно ниже json-а некуда двигаться, поэтому он победит. Все эти выносы кусков логики в форматы хранения обречены. Нужно хранение большого - бд. Малого - видимо json. Что бы не пришлось потом писать парсер, для отчистки налипшего тегового говна, когда данные потребуются спустя год в чистом виде. Нужна иерархия - json. Не нужна - cvs. Нужно много? - бд. yaml хуже json по одной причине, пробел в тексте чаще встречается чем спец.скобки jsonа . А значит его парсить для большинства мелких задач удобней. Вот и всё. Поэтому и json побеждает.
q2e74, описание класса не есть описание логики. Не буду продолжать участвовать в холиварах, в Интернете полно похожих обсуждений типа json vs xml vs yaml vs toml vs ... По поводу обречения, yaml почти 20 лет, новых проектов, которые работают с этим форматом, полно - ansible и тд (см. https://ru.wikipedia.org/wiki/YAML#Использование)
Типичная болезнь. Вы просто не услышали основной посыл. У вас описание класса - представляет по себе какую-то ценность. А людям насрать на классы, функции, методы. А вы к их данным(пусть это и название внутри кнопочки) постоянно норовите прилепить "описание классов". Такие как вы и плодят и поддерживают весь этот зоопарк. Это называется "сокрализация знаний", так люди делают на любой работе. Искусственно накручивают себе ценность. То, что у кого получается так себя вести на протяжении 20 лет. Кончится это как всегда. Люди плюнут и не будут за это платить.
q2e74, о, быстро вы на личности переходить начали. Видимо маленький совсем ещё, взрослые люди рассуждают, а не говорят "такие как вы". с вами больше говорить не о чем! Не будь "таких как я" вы бы наверное еще на телегах до сих пор ездили, а не на автомобилях, ибо зачем эти все навороты, едет и едет!
Вот разработчиков Ansible, как раз, из-за YAML хочется прибить. Когда видишь эти ужасные файлы плейбуков, постоянно проскальзывает мысль: "Такое могли придумать только питонисты". По поводу недостатков JSON - да, циклические ссылки на объекты там не сделать, это серьёзный минус. Однако комментарии вполне допустимо использовать, если достать/написать правильный парсер. В любом случае, YAML (по крайней мере для меня) как конфигурация воспринимается очень тяжело в отличие от JSON либо XML. --- Сообщение объединено, 11 янв 2019 --- Ну это тоже слишком категорично. Хранить BLOB'ы в реляционных БД крайне не рекомендую, геморрой ещё тот.
есть еще QML и TOML например, можем по ним затереть... я QML вообще очень люблю и как язык конфигураторов, и в контексте десктопной/мобильной разработки на чистом QtQuick или VPlay (хотя VPlay только пробовал, никаких проектов на нем не делал)... TOML как перерождение ini файлов тоже хорош по своему... вообще говоря о YAML, для питонистов это вполне удобный язык описания конфигурации... но для передачи данных по вебу он мало пригоден, тк парсеры json и xml в разы быстрее...
Возможно это дело привычки. Для меня наоборот (и да, я часто пишу на питоне ) лишние кавычки очень сильно отвлекают, и т.к. json позволяет не особо запариваться с форматированием конфигов, некоторые особо и не запариваются - в итоге не конфиги, а каша получается, которую нужно самому разгребать.
Посмотрел примеры QML - красивенько. Как упрощённый XML, только нет многабукав для открывающих/закрывающих тэгов. --- Сообщение объединено, 11 янв 2019 --- Ааа, ну всё понятно. Для вас отступы - дело обычное. Для меня - нет. Хотя, есть ещё такая штука, как GNU Makefiles, но там тело цели отделяется одним знаком табуляции (не больше и не меньше), поэтому вполне нормально воспринимается.
UbIvItS, хранить простые данные вида "список объектов" - для этого XML избыточен, так делает только Microsoft. Кроме того, голый XML - это не слишком интересно. Для раскрытия его мощи нужны доп.технологии: XPath, XQuery, XSLT. И внутри должен лежать не .ini-подобный список из пяти параметров, а большая БД со сложной иерархической структурой, в которую нужно делать сложные запросы. Вот тогда да. Иначе - JSON (лучше поддержка, но все же много мусорных символов). Или YAML - поддержки меньше, но человекопонятность почти идеальная, ничего лишнего - только отступы, имена и значения. И еще некоторые клевые плюшки типа ссылок внутри документа и возможности делать свои теги с программной обработкой. Ну и sqlite - это СУБД, а перечисленное тобой выше - это форматы хранения данных. Немного разные понятия