Json.NET vs DataContractJsonSerializer
От: dosik Россия www.dosik.ru
Дата: 04.10.16 16:09
Оценка:
Пока не юзал, но хочется спросить на перед.
Грубо говоря надо класс — сложный многовложенный конфиг приложения с массивами, вложенными объектами хранить в файле (читать и писать) а так-же слать по namedpipe с C++ приложения — там Jsoncpp. В общем ни чего сверхестественного.
Что лучше для этого юзатьиз предложенных библиотек?
Кто-то сравнивал?
Re: Json.NET vs DataContractJsonSerializer
От: Sinix  
Дата: 04.10.16 16:18
Оценка: 6 (1)
Здравствуйте, dosik, Вы писали:


D>Что лучше для этого юзатьиз предложенных библиотек?

D>Кто-то сравнивал?

Я бы заизолировал этот кусок и покрыл бы тестами. Чтоб не страдать, если приоритеты поменяются.

Затем проверил нужные фичи, скажем, вот тут. Если выбор неочевиден, то волевым решением берём тот, с которым меньше придётся возиться.

Ну и https://github.com/kevin-montrose/Jil и https://github.com/ServiceStack/ServiceStack.Text можно в сравнение подкинуть.
Отредактировано 04.10.2016 16:25 Sinix . Предыдущая версия .
Re: Json.NET vs DataContractJsonSerializer
От: fddima  
Дата: 04.10.16 16:21
Оценка: 4 (1) +2
Здравствуйте, dosik, Вы писали:

D>Грубо говоря надо класс — сложный многовложенный конфиг приложения с массивами, вложенными объектами хранить в файле (читать и писать) а так-же слать по namedpipe с C++ приложения — там Jsoncpp. В общем ни чего сверхестественного.

Если объекты/сериализация стандартная — то любой сериализатор должен подойти. Соответственно — если не хочется лишнию зависимость — берем DataContractJsonSerializer, но...

D>Что лучше для этого юзатьиз предложенных библиотек?

D>Кто-то сравнивал?
Newtonsoft.Json — это как тяжелая артиллерия: вменяемый конфиг + API = можно уже сериализировать/десериализировать более интересные типы.
Скажем, хотите immutable структуру — пожалуста, просто повесив аттрибут JsonConstructor на конструктор. Поэтому — если хочется гибкости в сериализации/десериализации — Newtonsoft.Json будет отличным выбором. Кстати Newtonsoft.Json поддерживает комментарии внутри JSON файлов без приседаний.
Re[2]: Json.NET vs DataContractJsonSerializer
От: dosik Россия www.dosik.ru
Дата: 04.10.16 19:10
Оценка:
Здравствуйте, Sinix, Вы писали:

S>Затем проверил нужные фичи, скажем, вот тут.


Да мне так-то и JavaScriptSerializer вроде как хватить, пути и валидация по схеме с остальными вкусностями мне не нужна.
Спасибо, гляну в эту сторону.
Re[2]: Json.NET vs DataContractJsonSerializer
От: dosik Россия www.dosik.ru
Дата: 04.10.16 19:11
Оценка:
Здравствуйте, fddima, Вы писали:

F> Если объекты/сериализация стандартная — то любой сериализатор должен подойти. Соответственно — если не хочется лишнию зависимость — берем DataContractJsonSerializer, но...


Вот это очень подкупает, родное из без волокиты с собой доп либов и dll.
Re: Json.NET vs DataContractJsonSerializer
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 05.10.16 12:09
Оценка:
Здравствуйте, dosik, Вы писали:

D>Пока не юзал, но хочется спросить на перед.

D>Грубо говоря надо класс — сложный многовложенный конфиг приложения с массивами, вложенными объектами хранить в файле (читать и писать) а так-же слать по namedpipe с C++ приложения — там Jsoncpp. В общем ни чего сверхестественного.
D>Что лучше для этого юзатьиз предложенных библиотек?

У последнего очень ограниченный набор возможностей. Так что, если зависимость не пугает, то лучше Json.NET.
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
AVK Blog
Re[3]: Json.NET vs DataContractJsonSerializer
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 05.10.16 12:09
Оценка:
Здравствуйте, dosik, Вы писали:

D>Да мне так-то и JavaScriptSerializer вроде как хватить, пути и валидация по схеме с остальными вкусностями мне не нужна.


Вот только оно использует рефлекшен для обхода, со всеми вытекающими.
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
AVK Blog
Re[4]: Json.NET vs DataContractJsonSerializer
От: dosik Россия www.dosik.ru
Дата: 06.10.16 08:16
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>Вот только оно использует рефлекшен для обхода, со всеми вытекающими.

А разве DataContractJsonSerializer его не использует?
Re[5]: Json.NET vs DataContractJsonSerializer
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 06.10.16 08:24
Оценка:
Здравствуйте, dosik, Вы писали:

D>А разве DataContractJsonSerializer его не использует?


Нет.
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
AVK Blog
Re: Json.NET vs DataContractJsonSerializer
От: Vladek Россия Github
Дата: 07.10.16 18:05
Оценка:
Здравствуйте, dosik, Вы писали:

D>Пока не юзал, но хочется спросить на перед.


Ещё есть Jil.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.