Это была карта не именная, выдающаяся «по требованию» прямо тут же в офисе. Именную просто не смог сделать быстро, в этой стране ни один чёртов банк, если его отделение находится не в Москве, не делает срочный выпуск карт за пару дней, даже если ты готов заплатить сверху немаленькую сумму. Альфа-Банк не исключение, поэтому пришлось «на всякий пожарный» довольствоваться такой картой, но её возможности ограничены исключительно снятием кеша в банкоматах.
Ложку дёгтя Альфе от себя. Прихожу в офис в Спб на Невском, делаю новую карту. Выдают, говорят, надо активировать, но номер мобильника сейчас у вас не текущий, поэтому поменяю вам, чтобы вы зашли в Альфа-Клик и активировали прямо у нас в терминале. Ок, сделал. Далее прошу сменить номер на прежний, зарубежный. Девока "-- Извините, мы не поддерживаем зарубежные номера, только российские.". Здрасте, приехали. "-- Просто поменяйте на тот, что только поменяли, это зарубежный.". Стафф: "-- Зарубежный? И что, он у вас работает, приходят от банка туда СМС?!".
В общем, неотключающиеся услуги услушами, но и компетенция персонала по подключению новых тоже не сарах.
Мне кажется вы путаете, как и автор, теплое с мягким. Никто не говорит, что вызывать перегруженный метод предка нельзя или не нужно. Вопрос в том, как автор пытается это завуалировать через всякие числовые уровни ancestor, циклы, условия. Нужно вызвать метод предка — берем и вызываем по имени, как белые люди. А так пойди догадайся как оно работает и на что указывает.
Так а чего там затратного у Резига, в каком месте? Обычный цикл по свойствам прототипа родителя с парой условий, причем единожды при создании самого класса, не его экземпляра. Ваше начальная или промежуточная инициализация DOM дерева — вот это камень преткновения относительно скорости в современных браузерах, пробег цикла и обертка в замыкание — тысячные проценты времени от поиска по нескольким селекторам средней страницы. Но код: а) читабелен б) расширяем в) весьма и весьма производителен. Если вам вдруг потребовалось найти какой-то метод на 4-ом нижнем уровне какого-то класса-родителя, вдруг пропустив предыдущие перегруженные 3, то тут либо пользуйте именем этого метода через class.prototype.method.call(), либо как-то меняйте архитектуру.
Я не смог вовремя ответить, AndrewSumin вам там хорош написал, и я с ним согласен.
ancestor() — это неудобоваримый костыль. Я не знаю ни одной парадигмы, где бы подобное было стандартом.
Приведите, пожалуйста, пример реальной задачи, где требуется использовать ancestor() с указанием уровня родителя, чтобы выполнить его метод (это ж надо ещё помнить и считать, а если добавился промежуточный класс, то вообще пересчитывать во всех местах).
По-моему, если возникает такая необходимость, значит точно что-то не в порядке с архитектурой.
В общем, неотключающиеся услуги услушами, но и компетенция персонала по подключению новых тоже не сарах.
Понедельник…
ancestor() — это неудобоваримый костыль. Я не знаю ни одной парадигмы, где бы подобное было стандартом.
По-моему, если возникает такая необходимость, значит точно что-то не в порядке с архитектурой.
Здесь обсуждать не слишком здорово.
Есть вероятность, что кто-нибудь из желающих захочет написать своё приложение для J2ME, используя открытое API сервиса.
Какой у вас браузер?