Архив

Архив Апрель 2008

CTAPbIu_MABP

30 Апрель 2008 1 комментарий
Старый мавр робко прячет
Тело жирное в утесах,
Завалить камнями хочет
Он останки Дездемоны,
Им же лично убиенной
В диком ревности припадке.
То киркой ломая камни,
То лопатой снег кидая,
Он молчит, но тучи слышат
Грохот бьющихся каменьев.
А вокруг гагары стонут,
Им, гагарам, недоступно
Наслажденье этим шоу,
Гром ударов их пугает.
Вот Ромео и Джульетта-
То была получше сказка
Тут как тут флакончик с ядом,
В общем, оба умирают,
Наглотавшись из бутылки.
Тут Монтекки с Капулетти
Набежали косяками,
Ну рыдать над бренным телом,
Над своим, конечно, каждый.
Ах, зачем мы им мешали,
Лучше б детки поженились,
А теперь погиб наследник,
И Джульетта молодая
Нарожала бы детишек,
Мал-мала да рядом меньше.
Вот бы было бы веселье!-
Причитали идиоты.
В общем, тут любовь и драма-
Все, что нужно сериалу,
Чтобы он гагарам глупым
Был по уровню доступным.
А не то, что глупый негр,
Тот, что ночью в лунном свете
Долбит киркою каменья
В эротическом экстазе,
Колупая по кусочку
Скоро будет виден Яго,
Тот, чей умысел преступный
Послужил причиной смерти
Несравненной Дездемоны,
И что, скрывшись за скалою,
За Отелло наблюдает.
Только вдруг из-за тороса
Показался дикий Гамлет
С Розенкранцем, Гильденстерном,
И давай крошить в капусту
Все что было там живого.
Первым пал, конечно, Яго,
Так как столь поганой рожи
Датский принц еще не видел
И хватил по ней прикладом.
Розенкранц же с Гильденстерном
Мавру голову срубили
И, чтоб зря не пропадала,
Объявили Анкл Бенсом.
Все чудесно веселились,
Когда вдруг ворвался Макбет
Со своею леди Макбет
И полком своих солдатов.
Затоптали Гильденстерна,
Розенкранца удавили,
Гамлет пал, мечом пронзенный,
Леди Макбет просто сдохла,
А потом и Макбет умер,
Потому, что стало скучно.
Тут конец печальной басни,
Вы в ней смысла не ищите,
Но зато мораль простую
Осознать она поможет.
ВЫ, В НОЧИ ЛЮДЕЙ ПУГАЯ,
НЕ ШУМИТЕ, НЕ КРИЧИТЕ,
ЧТОБЫ ВАМ НЕ ВЫШЛО БОКОМ,
И НЕ КОНЧИЛОСЬ ПЛАЧЕВНО.

Травиан

27 Апрель 2008 17 comments

Предисловие

Я очень давно замыслил описать то как я играл в травиан, поскольку я считаю что я хорошо играл, и я думаю не только я так считаю. Думаю, эта статья станет хорошим пособием для начинающего игрока.

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

Наконец-то заработал поиск

26 Апрель 2008 2 comments
Статья более не актуальна, так как относилась к старому, самописному движку.

Вот я и сделал наконец поиск по сайту, вообще еще много чего надо сделать, а то я даже страницы добавляю через MySQL. Сейчас поиск ищет по заголовку, описанию и собственно телу страницы, самое приятное в нем то, что в нем есть ранжирование результатов. Если кому-то интересно как такое сделать то читайте дальше.

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

Простой comet

26 Апрель 2008 14 comments

Всю неделю готовил эту статью, и вот наконец публикую.

Что же первое приходит в голову, когда видишь слово "comet", правильно - чистящее средство, потом комета, а оно почему-то означает технологию (хотя это, наверное, громко сказано, скорее паттерн) постоянного соединения с сервером. Все же в толстых книжках читали, что после того как сервер получил запрос и отдал ответ браузеру, он забывает, что к нему вообще кто-то обращался. А тут поседели умные люди и стали седыми. Нет, посидели и придумали идею, как заставить передавать браузеру информацию, изменившуюся на сервере.

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

Локальная глобальная область видимости

25 Апрель 2008 Comments off

Всю неделю готовлю сразу две статьи, первая о comet (постоянное соединение с сервером) и вторая о ранжированном поиске который наконец таки заработал на сайте но на этот раз будет махонькая заметка о корректной работе браузеров.

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

Request

20 Апрель 2008 Comments off

Переносить классы c phpclasses я начал с Cache Manager, а это второй класс под названием Request. Его я люблю не меньше, в основном за его гибкость, он позволяет проверить любую переменную переданную ему на соответствие шаблону. Фактически класс есть оберткой для функции preg_match(), но позволяет не задумываться о параметрах.

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

Pattern: Registry

17 Апрель 2008 7 comments
Подробное описание работы класса смотрите в предыдущей статье CORE.
Возможно вам будет интересна статья ServiceLocator, она имеет непосредственное отношение к этой статье.

Решил обновить класс, но очень не хотел переписывать прошлую статью, она мне дорога как память :). Поэтому решил еще раз опубликовать свежий класс. Напомню или расскажу для тех, кто не заметил сверху ссылки на предыдущую версию, что класс реализует паттерн Registry. То есть это Singleton класс, имеющий в себе ссылки на все основные ресурсы сайта. Например, удобно получать ссылку на объект для работы с базой данных с помощью выражения Registry::extract('db') не заботясь о том где, как и когда он был создан.

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

Cache Manager

16 Апрель 2008 Comments off

Я почему-то думал, что давно уже выложил в блоге свои классы опубликованные на phpclasses.org, а когда недавно хотел посмотреть один из них, оказалось, что их нет. А вот сейчас я собираюсь исправить этот недосмотр и начну с класса для кэширования страниц.

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

Autocomplete

8 Апрель 2008 100 comments

Prehistory


First of all, I want to say, that this plugin was developed for KyivStar, therefore all fine details were studied and stipulated very carefully. For example, what should occur, when the user would reach last element of the list: whether it should rest against the end or begin a cycle all over again. Or whether the list should disappear when the cursor is out of it. All this passed through business analysts’ and designer and only then came to me.

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

Classy Query

3 Апрель 2008 Comments off

Сегодня John Resig презентовал надстройку над jQuery под название Classy Query.

Эта надстройка призвана сделать из прототипного языка JavaScript классический классовый язык типа Java с созданием объектов и их наследованием. Надстройка разбивает jQuery на отдельные объекты (DOM, Traverse, Events, Effects, Ajax) которые бы упростили для пользователя понимание работы с jQuery. Теперь вместо привычного $(elt).click(fn); можно будет писать jQuery.Events.addEventListener(elt,"click",fn); или вместо $("#id").parent(); писать jQuery.Traverse.getParentElements("#id");

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