Сообщение от x-yuri
|
Я в первую очередь стараюсь убрать детали реализации, чтобы было видно что происходит, а не как это работает. А потом решаю проблемы с производительностью, если такие имеются.
|
Не, я тут с производительностью не борюсь. Я тут борюсь с внешними зависимостями. Минимальные внешние зависимости упрощают мне жизнь.
Вообще, я ж с тобой не спорю. Я раньше точно так же рассуждал, поэтому понимаю твои доводы. Я не говорю, что ты потом будешь рассуждать как-то по другому, просто для меня вариант максимальной абстракции оказался неподходящим. Я ввожу готовые функции, если это
1. Добавляет кроссбраузерности, как например, addEventListener/attachEvent.
2. Сильно упрощает жизнь, как например XMLHttpRequest.
Про Timer: основная его функция -- менеджить много таймеров. Т.е. если у тебя на странице будет несколько десятков независимых анимированных объектов, у каждого из которых свой setTimeout, всё будет слегка поттормаживать. А если сделать один setTimeout, который будет вызывать колбэки из каждого объекта, будет полегче.
Сообщение от x-yuri
|
так твой класс - это по сути periodical в виде класса
|
Так что нет
Ещё про тот файлик -- там deferForEach. Мне не нравится список аргументов, чтобы описывать его. Он перебирает элементы массива через заданные промежутки времени. Анимация им в две строчки делается.
Сообщение от with-love-from-siberia
|
.defer можно было бы чуть-чуть переписать, чтобы можно было передавать аргументы не в массиве.
|
Это сузит область применения. Если у нас есть массив произвольного количества элементов, которые нужно передать в функцию, это придётся делать через ..., неудобно вобщем.