суббота, 28 января 2012 г.

PHP: Паттерн наблюдатель (observer)

При разработке сложных систем возникает проблема реализации "сквозного функционала". Применение методологии АОП позволяет решать эту проблему в пару строк кода, но и при обычном объектно-ориентированном дизайне архитектуры можно сделать очень качественную реализацию.
Паттерн "наблюдатель" полезен в том случае, когда одна часть системы должна уведомлять другую об изменениях состояния. Но в то же время обе части системы должны сохранять независимость.

Читать далее -> ...

MySQL: генерация исключений

В этот раз речь пойдет о новом механизме генерации ошибок, который появился в mysql начиная с версии 5.5.
Сколько раз при создании хранимых процедур и функций нам не хватало возможности генерировать исключения?
Исправляем этот недостаток.

Читать далее -> ...

суббота, 21 января 2012 г.

PHP: ленивые вычисления - это просто

Ленивые (или отложенные) вычисления часто остаются уделом функциональных языков. Хотя на деле это очень мощный механизм, который можно применять и в рамках объектно-ориентированного подхода.
Представим на минутку, что во время основных вычислений у нас появляется потребность узнать результат некоторой побочной функции. Но результат этот там нужен не "здесь и сейчас", а после основного цикла вычислений. Так почему бы не воспользоваться столь удачным механизмом ленивых вычислений?

Читать дальше...

среда, 18 января 2012 г.

jQuery: анатомия событий

Сегодня мы разберемся, как же работают события jquery. И почему не стоит смешивать несколько библиотек в одном проекте.
Предполагалось, что пост будет написан о том, как на базе jquery создать плагин, аналогичный по внешнему виду и функционалу плагину "выделить все" из gmail.
Но как всегда пришли неожиданные глюки.
При попытке вручную вызвать событие на чекбоксе оно происходило раньше, чем изменялось состояние чекбокса. А это многое меняло...

Читать дальше

воскресенье, 11 сентября 2011 г.

Очистка журнала событий Windows Vista/7/2008 в один клик

Часто возникает потребность очистки журналов событий в OS семейства Windows.
Есть некоторая вероятность того, что захламленный журнал событий может затормозить работу системы. И если в *nix есть logrotate, то windows требует явной очистки.
[Как это сделать?]