![]() |
|
||||||||||
|
|||||
|
Цитата:
Но так уж и быть приведу пару аргументов. Вернее короткий екскурс в основы. Сериализация: In computer science, serialization means to force one-at-a-time access for the purposes of concurrency control, or to encode a data structure as a sequence of bytes. The opposite operation, to extract a data structure from a series of bytes, is deserialization. XML-документ сам по себе нихрена полезного из себя не представляет и точно не обладает красотой снежынки. Ето всего навсего представление какогото обекта в форме, которая относительно удобна для сохранения (сериализация). Десериализовав обект из хмл мы получаем наш исходный обект и работаем с ним дальше. Ето же так просто явно и понятно. Интуитивно блин. О чем здесь спорить? |
|
|||||
|
Цитата:
Нахрена тогда вообще обекты других типов? Нахрена создаються классы, отношения между ними и иерархии? нахрена понапридумовано сотня паттернов? Мой тебе совет - работай только с XML обектами и будет тебе щастье. Мир |
|
|||||
|
1.Только ТИП обекта определяет данные, которые про етот обект надо знать. Обект НЕ ИМЕЕТ ПРАВА знать кто его ближайший сосед. Но в случае если он спроектирован чтоб ето знать - он ЕТО БУДЕТ ЗНАТЬ.
2. Тоже самое (кстати структуру любого обекта очень легко вывести е меня для етого класс есть с функцией Trace.traceObject(). 3. Ну то перегони. А вопрос как заставить вести себя обект так как он должен, если он блин в хмл? Например у обекта был метод calculateSomething(). а другой обект служыл хранилищем для даных для етого с функциями хеширования, а третий слушал обращение к етому методу. Как ты ето в хмл воссоздаш? А я просто поднимаю из хмл обекты и работаю дальше. |
|
|||||
|
Такое впечатление, что ты говориш про хмл как просто про масив стрингов с древовидной структурой. Такое впечатление что ты считаеш, что обекты ето только даные.
|
|
|||||
|
[+1 23.05.11]
Регистрация: Dec 2001
Сообщений: 4,159
|
Цитата:
Цитата:
Цитата:
2) Даже если нужно записать данные на сервер, то вариант "передать заново всю кучу данных, включая неизменившиеся части" является наихудшим.
__________________
GIT d++ s++:++ a C++$ UB++ P++ L+ E+ W+++ N++ w++ O+ M V- t-- 5-- X+ R+++ tv- b+++ D++ |
|
|||||
|
Регистрация: Apr 2001
Адрес: Moscow
Сообщений: 1,475
|
узел XML как и любой другой объект можно загнать в подкласс.
это никак не влияет на всё остальное. он может и вещать и слушать и иметь метод calculateSomething или не иметь его, может хранить данные, иметь свойства и т.п. всё это - как тебе захочется. соответственно, вопрос перегонять ли XML в объекты сводится лишь к тому, следует ли удалять... ну собственно я об этом уже писал выше. |
|
|||||
|
[+1 23.05.11]
Регистрация: Dec 2001
Сообщений: 4,159
|
Цитата:
![]()
__________________
GIT d++ s++:++ a C++$ UB++ P++ L+ E+ W+++ N++ w++ O+ M V- t-- 5-- X+ R+++ tv- b+++ D++ |
|
|||||
|
Регистрация: Apr 2001
Адрес: Moscow
Сообщений: 1,475
|
Цитата:
Чаще всего, а именно в 99% случаев моей практики работать приходится со СТРУКТУРИРОВАННЫМИ данными, где родительско-дочерние, братские взаимосвязи играют не меньшую роль, чем сами данные. И уж в этом случае вопрос ну никак не лишен смысла. С оставшимся 1% согласен: можно перегонять в объекты. Но нужно ли? Цитата:
удаляем встроенные методы навигации по данным и создаем собственные. Цитата:
XML создан для разработчиков, для удобства и скорости их работы. Впрочем как и языки программирования высокого уровня. И сотня лишних килобайт портаченных на траффик и 100 миллисекунд потраченных на парсинг XML уже не играют никакой роли. Разумеется XML не предназначен для непосредственного скармливания юзерам. Не надо задавать такие вопросы как будто тут идиоты собрались. п.п. 1 и 2 не играют ни малейшей роли. Стандартизация и унификация подходов играют огромную роль в программировании. Я совершенно без проблем разберусь в проекте, в котором использованы стандарты типа XML. Разбираться в зависимостях вручную созданных объектов - увольте. |
![]() |
![]() |
Часовой пояс GMT +4, время: 09:10. |
|
|
« Предыдущая тема | Следующая тема » |
|
|