Closed ugnich closed 12 years ago
Я рассматривал разные парсеры и всё-таки решил остановиться на гибридном SAX+DOM парсере. Основной плюс такого парсера, по сравнению с pull-моделью - модульность:
На данный момент выгоды от перелопачивания кода в пользу другого парсера для меня слишком сомнительны.
Спасибо за подробный ответ.
Из списка плюсов соглашусь только с отказоустойчивостью. Да, у pull парсера действительно есть такая проблема, но она решается простейшим тестированием.
Если посмотрите мою библиотеку, увидите, что парсеры каждого типа станз выделены в отдельные классы (пакет extensions) и совершенно независимы. В динамическом подключении/отключении обработчиков я особого смысла не вижу, потому как их немного и они маленькие, а с памятью у современных смартфонов проблемы особой нет. Но, при желании, можно сделать.
Главный акцент при разработке я делал на отделении парсинга от логики приложения и максимальном упрощении библиотеки. У вас же, насколько я могу судить, бегло взглянув на код, всё немного более запутанно.
Выгода в том, чтобы объединить усилия и освободить ресурсы, сосредоточиться на главном: логике приложения и интерфейсе.
Пожалуйста, рассмотрите возможность использования другого парсера XMPP. В Android присутствует встроенный pull parser, который вполне можно использовать.
Предлагаю свой проект https://github.com/juick/com.juick.xmpp - эта библиотека для работы с XMPP используется на серверной стороне juick.com, работает стабильно и быстро.