S
Но можно было сделать одно и то же
Stanislav
JSON, XML...
Павел
в чем необходимость в XML иметь параметры листа и параметры ветви? Или как там это называется
Pavel
в чем необходимость в XML иметь параметры листа и параметры ветви? Или как там это называется
Ну это зависит от требований. Например мы имеет классы языках программирования. У них объектов есть имя класса и множество параметров. Ветвь - это имя класса, множество параметров это параметры листа. Для описания объекта из ЯП xml подходит хорошо. Если использовать JSON то придется городить условности, типа "а давайте хранить имя класса в поле className, а проперти в классах с именем className запретим"
Pavel
Ну технически можно.
Павел
ну и зачем оно мне?
Pavel
ну и зачем оно мне?
Чтобы не было как раз условностей.
Павел
Pavel
Путаница будет как раз при условностях.
Pavel
Давайте пример.
Pavel
Тише тише Виталий) Отвечу)
Павел
Путаница будет как раз при условностях.
зачем мне 2 проперти class к примеру? для чего? Только путать буду лишний раз человека
Pavel
Лист это ветвь без продолжения. В академических языках ветвь иногда называют корнем, но стараюсь избегать этого термина потому что можно спутать с корнем дерева.
Pavel
В том что в xml обязывает давать названия ветвям и листьям (узлам)
Павел
вот мне кажется в json например структуру типичного экрана в iOS описать будет проще
Pavel
Не понял вопроса.
Pavel
А еще в XML для хранения детей не нужно выделять поле и именовать его как в JSON. JSON обязывает нас при наличии детей, отправлять их в именованое поле.
Anonymous
Работать пойдем сегодня?
Dmitriy
Я не занимаюсь разработкой приложений под мобильные устройства, но занимаюсь разработкой backend под всякое вот. Я ни разу за все время не видел острой необходимости использовать xml.
Dmitriy
И все еще от парсера зависит
Pavel
ну и что тут такого то?
В том что вам нужно завести условность "а давайте мы детей будет хранить в поле children" и постоянно везде писать это children.
Павел
я прекрасно представляю UIView в виде JSON, с полем subViews, а UIView в виде XML где все сабвьюхи будут внутри скобочек не очень представляю
Dmitriy
Насчет верстки в XML. У нас есть некоторые приложения, верстка которых сделана в XML. И есть такой файлик, который называется project.xml
Dmitriy
И вот в ряде случаев он занимает 10-15к строк xml
Dmitriy
И редактировать это руками это пиздец
Pavel
А это потому что у XML нет такого понятия в спецификации как массив вообще
Дети и так обычно рассматриваются как массив. Если у вас не кастомный интерпретатор конечно.
Dmitriy
Дети и так обычно рассматриваются как массив. Если у вас не кастомный интерпретатор конечно.
Ну т.е. с одной стороны мы педантично ковыряем json, а тут "обычно рассматривается"?
Pavel
Ради бога, ты можешь придумывать сколько угодно спецификаций. Но зачем, когда есть xml который делает все это из коробки: добавляет детей без боли, имеет имя узла. Имя узла особенно важно для ООП, потому что почти всегда объекты имеют класс.
Dmitriy
А причем тут ооп вообще?
Pavel
Ну т.е. с одной стороны мы педантично ковыряем json, а тут "обычно рассматривается"?
Ну я не стал жестить в утверждении, потому что вы правы, что добавление детей можно трактовать по разному, и спецификция это не регламентирует.
Dmitriy
Я не понимаю что происходит. XML 1) избыточен 2) сложнее парсится (время на парсинг) 3) сложнее редактируется 4) Если есть схема то вообще пиздец
Pavel
Опиши на JSON коллекцию из строк, которая не может иметь скажем больше 3 строк и содержит в данный момент 2 строки. Вот как бы выглядело это на xml: <collection maxItems="3"> <str>qwe</str> <str>qwe</str> </collection>
Pavel
ЧТобы описать это на JSON вам потребуется большее количество узлов.
Pavel
Я не понимаю что происходит. XML 1) избыточен 2) сложнее парсится (время на парсинг) 3) сложнее редактируется 4) Если есть схема то вообще пиздец
Если XML избыточен - используйте менее избыточные нотации - xml, json. Но для описания View иерархий XML не избыточен, а JSON и YAML "недостаточно многословные", хз как это сказать по русски. Короче противовположность избыточности. Когда вы говорите об избыточности, вы говорите для чего, потому что абстрактно язык не может быть избыточным.
Valery
Если xml избыточен, используйте xml
Valery
Кек
Dmitriy
Да
Александр
Если есть опыт настройки пушей с firebase - отпиши пожалуйста. серт никак не толкается в firebase
Dmitriy
Я ж говорю, это все красиво, но у меня есть project.xml в 15к строк
Dmitriy
И когда туда надо добавить одно поле — это пиздец
Pavel
Если xml избыточен, используйте xml
Ну просто есть же разные структуры данных, разные деревья. Если у вас нет имен узлов, используйте json. Если есть имена узлов то xml.
Pavel
Все зависит от сложности структуры. Нельзя взять и просто так сказать, xml избыточен.
Pavel
Это наверное сложно понять.
Pavel
А у тебя строки каких классов. Ты куда str проебал?
Pavel
Ты классы то добавь, не читери. Представь что там Cat Dog а не строки.
S
какой-то бред имхо. наркоманы
Pavel
Pavel
классы str. str имя класса пусть будет, давай, пихай str куда-нибудь
Pavel
типа className="str"
Pavel
А у тебя maxItems к потолку прибито? Как понять что это относится к collection?
Dmitriy
Так это атрибуты, не?
Victor
Оба вы правы. Для описания дерева UI удобнее юзать XML, но читать его хреново
Stanislav
классы str. str имя класса пусть будет, давай, пихай str куда-нибудь
Чувак, зачем? Ты придумываешь какую-то искуственную лабуду. JSON для передачи сериализованных данных, там это нафиг не надо. Если есть строка - то это строка
Stanislav
Хотя я согласен с тем, что андроидская верстка неплохо лежит в xml. Но в JSON тоже можно было бы без проблем все сделать
Victor
Да, и проблема в маппинге этого xml в классы в дальнейшем есть.
Victor
Json лучше описывает обычные объекты с пропертями
Victor
UI же в итоге в какие-то классы преобразуется, и раскидать XML по дереву классов и пропертям равносильно задаче преобразования в json
Pavel
Если вопрос в принципиальной возможности то я согласен, что в JSON можно как-то отобразить. Но это будет не полный эквивалент. JSON из коробки строит деревья без имен узлов и для детей нужно выделять именованое поле. Т.е. если у нас есть дерево без имен узлов и без детей, то мы сможем описать его и в XML и в JSON. Но если у нас есть деревья с именами узлов и детьми, то получается, что это дерево мы можем отобразить в XML 1к1. А в JSON мы начинаем рисовать другое дерево. И потом это другое дерево трактовать в оригинальное. В этом и есть вся разница. Нельзя построить дерево с помощью XML и с помощью JSON 1к1. С JSON ты получишь другое дерево, которое сможешь по своим правилам трактовать, но это будет другое дерево, без имен узлов, и с именоваными полями в объявлениях детей.
Pavel
Я все.
Pavel
Ну и собственно, Виталий, челендж ты проиграл, потому что ты нарисовал другое дерево, и не мог в принципе нарисовать дерево, как в XML, потому что использовал JSON. Вот теперь точно все. Сори.
Anonymous
Ты и в json, можешь привести все к какому-то стандарту, где будешь точно знать что у тебя тем или иным образом обозначает
Simon
а pointer to pointer в свифт можно сделать? или свифт не поддерживает такие извращения?)
Valery
Да как так-то
Pavel
Да. Все зависит от дерева.
Anonymous
Да как так-то
Ну потерпи пару недель или бету качай xcode 9. Эти возмущения уже устарели
Stanislav
Да как так-то
Так и живем, 9ку ставь
Valery
Так и живем, 9ку ставь
Я с девятки откатился)
Alexander
Да как так-то
это потому что не на xml написано
Valery
Уж подожду релиза
Stanislav
Уж подожду релиза
Ну хз, последняя бетка очень гуд работает
Stanislav
Аж подозрительно
Valery
Ну хз, последняя бетка очень гуд работает
А, ну значит икскод в целом паршив))