cJSON: Вопросы связанные с Callback: FindCB()

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Основной тред
Ответить
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 8016
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 28 раз
Поблагодарили: 94 раза

cJSON: Вопросы связанные с Callback: FindCB()

Сообщение Игорь Столяров »

ДД !

Здесь я буду записывать вопросы связанные с реализацией и работой Callback: FindCB().
Как я понимаю, что его использование - это не частый случай и потому опыт будет полезен.

--- МИНУСЫ ---

1. На больших структурах данных (сотни тегов) включение FindCB() сильно замедляет выгрузку JSON пакета.
Причём это ощущается даже на маленьких объёмах данных (2-3 записи).
Здесь ключевой параметр - это именно размер самой структуры.

2. Появляется зависимость от последовательности следования групп тегов, что тебует очень аккуратной работы
со структурой данных и её комментирования (что уже идёт в разрез с идеями Дуглас Крокфорда).

3. Наличие "прямого" доступа к структуре данных. Т.е. нельзя обрабатывать структуры переданные
как *GROUP / *QUEUE, что уже ограничивает функционал заложенный в самом классе cJSON.

4. Про огромный объём кода, который сложен в сопровождении даже можно и не упоминать ... ;)

--- ПЛЮСЫ ---

1. Можно ввести зависимость состава выгружаемых тегов от данных.
Т.е. например управлять набором тегов в зависимости от типа выгружаемой записи.
В механизме OPTION этот вопрос вообще не рассматривается.

--- ИТОГ ---

При использовании FindCB() всё работает правильно !
Но укаазнные вопросы говорят о том, что FindCB() - это скорее некий отладочный фокус, а не боевой режим работы ...
Make Clarion Great Again ! 😎
Ответить