@Deerenaros ммкей, но при переборе в двух концов даже худший случай будет быстрее (скажем, примерно в два раза), чем худший при переборе с одного конца.
@sim3x
* Синглтон является глобальным объектом. Глобальные объекты заставляют код пахнуть.
* Синглтон является неявной зависимостью. Явное (через DI) лучше неявного.
* Нарушает принцип единственной ответственности, т.к. отвечает, помимо основной цели, еще и за свой жизненный цикл.
* Вносит stateful поведение, что вообще не очень хорошо и затрудняет тестирование (может возникнуть ситуация, когда тесты должны будут прогоняться в определенном порядке, что плохо).
@iiil И что, теперь даже в ие9- перестали работать условные комментарии и все внезапно заработало?
Да, вы учите плохому. Reset, даже хороший, далеко не панацея и иногда приносит проблемы вместо решения.