понедельник, 20 апреля 2009 г.

Инициализация, сервер, Flex и все-все-все

Пишем программу на Flex'е для записи звука. Алгоритм запуска, загрузки и проверки данных примерно такой:

  1. Инициализация
    1. Повесить евенты на обработку ответа сервера на методы
    2. Выключить все кнопки
  2. Получить ответ
    1. Проверить ответ сервера
    2. Включить кнопки, если всё Ок


Пока работали с удалённым сервером всё было нормально, но недавно перенесли разработку на офисный сервер, и началось. Баг неумолимо вырубал кнопку записи звука и не хотел её включать. Ошибка была в порядке инициализации объектов. Сначала мы назначали метод обработки и делали запрос на сервер. Поскольку сервер рядом, то ответ приходит мгновенно, гораздо раньше, чем выключается кнопка при инициализации. Т.е. получаем вот что: получили ответ сервера, всё Ок - кнопку включить; далее идёт инициализация приложения - кнопку выключить.


Мораль на будущее - сначала инициализаця данных, а потом назначение обработчиков событий.

Комментариев нет:

Отправить комментарий