Я изменил свое приложение на использование MVC, и оно стало довольно медленным.
Описание:
- Приложение имеет 5 композитов, каждый композит представляет разные данные и не всегда показывает
- Приложение использует MVC, и я передаю модель каждому композиту при обновлении.
- Я перестраиваю Дерево (и все элементы дерева) каждый раз, когда получено уведомление, однако изменился бы только один из элементов дерева, так что это, возможно, пустая трата.
- Из-за стиля приложения я даже должен уведомлять () о незначительных вещах, таких как изменение текста в текстовом поле или выбор меню, потому что у меня есть сохраненный значок, который превращается в несохраненный всякий раз, когда что-то изменяется в дереве. Элемент .
- Все композиты реализуют один и тот же интерфейс наблюдателя, поэтому все обновляются при каждом уведомлении ().
Может кто-нибудь дать мне несколько советов о том, что я должен сделать, чтобы ускорить это приложение. Что из вышеперечисленного может быть более ресурсоемким, чем другие, т. Е. Перестраивает дерево с <20 элементами на каждый notify (), собираясь использовать столько процессорного времени, нужно ли мне его перепроектировать? Должен ли я создать отдельный интерфейс, такой как SaveStateChanged, который будет только уведомлять дерево, или это просто трата времени. </p>