Зависит от как работают замыкания и изображения.Например, система, имеющая около 5 различных изображений, но 20 различных видов ввода, будет работать более эффективно, если замыкания будут знать об изображении, но примут пользовательский ввод в качестве аргумента, а не наоборот - потому что вы можете обойтись максимум с5 из этих замыканий в любой момент времени, а не около 20.
Также вы можете преобразовать это в систему, которая работает следующим образом:
- Экран изображения объекта в одном экземпляреиз которых могут быть повторно использованы для нескольких изображений (оно должно содержать только самое ограниченное количество состояний).
- Функции / объекты пользовательского ввода, которые вызывают события.
- Обработчик событий для пользовательского ввода, которыйпереконфигурирует (1) в зависимости от того, что выбрасывает (2).