XML vs SQL :)

Тема в разделе "WASM.HEAP", создана пользователем UbIvItS, 6 янв 2019.

  1. q2e74

    q2e74 Active Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    999
    CheckOut, json позволяет сбежать из этого зоопарка, и программирование логики вернуть в язык программирования, а не заниматься хренью. Это программируем так, схему программируем этак. Тут у нас база есть, но некогда изучать ее возможности, давайте просто там хранить картинки. И прочий подобный бред. Добавьте сюда любовь к введению, а затем изменению правил игры. Ой, начиная с версии такой-то ... идите переучивайтесь.
    Это всё та же попытка отделить долгоживущие данные от зоопарка кода, который переписывается, переходит на другие языки и т.п.
    Идейно ниже json-а некуда двигаться, поэтому он победит. Все эти выносы кусков логики в форматы хранения обречены. Нужно хранение большого - бд. Малого - видимо json. Что бы не пришлось потом писать парсер, для отчистки налипшего тегового говна, когда данные потребуются спустя год в чистом виде.

    Нужна иерархия - json. Не нужна - cvs. Нужно много? - бд.

    yaml хуже json по одной причине, пробел в тексте чаще встречается чем спец.скобки jsonа . А значит его парсить для большинства мелких задач удобней. Вот и всё. Поэтому и json побеждает.
     
    Последнее редактирование: 11 янв 2019
  2. CheckOut

    CheckOut New Member

    Публикаций:
    0
    Регистрация:
    14 фев 2018
    Сообщения:
    24
    q2e74, описание класса не есть описание логики. Не буду продолжать участвовать в холиварах, в Интернете полно похожих обсуждений типа json vs xml vs yaml vs toml vs ...
    По поводу обречения, yaml почти 20 лет, новых проектов, которые работают с этим форматом, полно - ansible и тд (см. https://ru.wikipedia.org/wiki/YAML#Использование)
     
  3. q2e74

    q2e74 Active Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    999
    Типичная болезнь. Вы просто не услышали основной посыл. У вас описание класса - представляет по себе какую-то ценность. А людям насрать на классы, функции, методы. А вы к их данным(пусть это и название внутри кнопочки) постоянно норовите прилепить "описание классов". Такие как вы и плодят и поддерживают весь этот зоопарк. Это называется "сокрализация знаний", так люди делают на любой работе. Искусственно накручивают себе ценность. То, что у кого получается так себя вести на протяжении 20 лет. Кончится это как всегда. Люди плюнут и не будут за это платить.
     
  4. CheckOut

    CheckOut New Member

    Публикаций:
    0
    Регистрация:
    14 фев 2018
    Сообщения:
    24
    q2e74, о, быстро вы на личности переходить начали. Видимо маленький совсем ещё, взрослые люди рассуждают, а не говорят "такие как вы". с вами больше говорить не о чем!

    Не будь "таких как я" вы бы наверное еще на телегах до сих пор ездили, а не на автомобилях, ибо зачем эти все навороты, едет и едет!
     
  5. SadKo

    SadKo Владимир Садовников

    Публикаций:
    8
    Регистрация:
    4 июн 2007
    Сообщения:
    1.610
    Адрес:
    г. Санкт-Петербург
    Вот разработчиков Ansible, как раз, из-за YAML хочется прибить. Когда видишь эти ужасные файлы плейбуков, постоянно проскальзывает мысль: "Такое могли придумать только питонисты".
    По поводу недостатков JSON - да, циклические ссылки на объекты там не сделать, это серьёзный минус. Однако комментарии вполне допустимо использовать, если достать/написать правильный парсер.
    В любом случае, YAML (по крайней мере для меня) как конфигурация воспринимается очень тяжело в отличие от JSON либо XML.
    --- Сообщение объединено, 11 янв 2019 ---
    Ну это тоже слишком категорично. Хранить BLOB'ы в реляционных БД крайне не рекомендую, геморрой ещё тот.
     
  6. Rel

    Rel Well-Known Member

    Публикаций:
    2
    Регистрация:
    11 дек 2008
    Сообщения:
    5.323
    есть еще QML и TOML например, можем по ним затереть... я QML вообще очень люблю и как язык конфигураторов, и в контексте десктопной/мобильной разработки на чистом QtQuick или VPlay (хотя VPlay только пробовал, никаких проектов на нем не делал)... TOML как перерождение ini файлов тоже хорош по своему... вообще говоря о YAML, для питонистов это вполне удобный язык описания конфигурации... но для передачи данных по вебу он мало пригоден, тк парсеры json и xml в разы быстрее...
     
  7. CheckOut

    CheckOut New Member

    Публикаций:
    0
    Регистрация:
    14 фев 2018
    Сообщения:
    24
    Возможно это дело привычки. Для меня наоборот (и да, я часто пишу на питоне :) ) лишние кавычки очень сильно отвлекают, и т.к. json позволяет не особо запариваться с форматированием конфигов, некоторые особо и не запариваются - в итоге не конфиги, а каша получается, которую нужно самому разгребать.
     
  8. SadKo

    SadKo Владимир Садовников

    Публикаций:
    8
    Регистрация:
    4 июн 2007
    Сообщения:
    1.610
    Адрес:
    г. Санкт-Петербург
    Посмотрел примеры QML - красивенько. Как упрощённый XML, только нет многабукав для открывающих/закрывающих тэгов.
    --- Сообщение объединено, 11 янв 2019 ---
    Ааа, ну всё понятно. Для вас отступы - дело обычное. Для меня - нет. Хотя, есть ещё такая штука, как GNU Makefiles, но там тело цели отделяется одним знаком табуляции (не больше и не меньше), поэтому вполне нормально воспринимается.
     
  9. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    UbIvItS, хранить простые данные вида "список объектов" - для этого XML избыточен, так делает только Microsoft. Кроме того, голый XML - это не слишком интересно. Для раскрытия его мощи нужны доп.технологии: XPath, XQuery, XSLT. И внутри должен лежать не .ini-подобный список из пяти параметров, а большая БД со сложной иерархической структурой, в которую нужно делать сложные запросы. Вот тогда да. Иначе - JSON (лучше поддержка, но все же много мусорных символов). Или YAML - поддержки меньше, но человекопонятность почти идеальная, ничего лишнего - только отступы, имена и значения. И еще некоторые клевые плюшки типа ссылок внутри документа и возможности делать свои теги с программной обработкой. Ну и sqlite - это СУБД, а перечисленное тобой выше - это форматы хранения данных. Немного разные понятия :)