22 Ноя 2010

Регулярное выражение для русских букв в UTF-8

Category: PHP,СтатьиFractalizeR @ 13:23

(\xD0[\x80-\xBF])|(\xD1[\x80-\xBF]) — одна любая русская буква


13 Ноя 2010

Примеси VS делегирование: преимущества и недостатки при реализации «плагинов»

В данной статье я предлагаю вам свой взгляд на выбор использования примесей или делегирования в проектах для внесения в класс нового функционала.

Начальные условия такие: мы рассматриваем примеси, имеющие свое состояние и имеющие доступ ко всем членам класса-агрегатора. Все публичные члены класса примеси становятся частью агрегатора. Мы оставляем за кадром вопрос быстродействия.

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

Читать дальше «Примеси VS делегирование: преимущества и недостатки при реализации «плагинов»»


12 Ноя 2010

ООП практикум в PHP5: Анализ ошибок, преимуществ и недостатков двух реализаций примесей в PHP

Category: PHP,СтатьиFractalizeR @ 11:40

После выхода моей статьи о примесях мы продолжали дискуссии и в комментариях к статье и в личных сообщениях. Сегодня увидел в моем блоге комментарий от читателя, который попросил объяснить, в чем я вижу преимущество своей реализации перед реализацией Леонида Шлейхера.

Я собирался было ответить в комментарии к посту своем же сайте, но неожиданно оказалось, что вопрос довольно интересен. Вернее, не сам вопрос, а анализ, который я провел, подготавливая ответ.

Читать дальше «ООП практикум в PHP5: Анализ ошибок, преимуществ и недостатков двух реализаций примесей в PHP»


11 Ноя 2010

Моя статья в журнале ВебАналитикИнфо

Category: Без рубрики,НовостиFractalizeR @ 17:28

С удовольствием сообщаю, что в ноябрьском номере ВебАналитикИнфо вышла моя статья Архитектура XenForo.


11 Ноя 2010

Краткий очерк истории объектно-ориентированного программирования

Эта статья была написана под влиянием впечатлений, полученных автором в ходе одного хабрасрача дискуссии, и представляет небольшую серию переводов материалов из свободных источников об истории объектно-ориентированного программирования, основным из которых является Википедия, плюс абсолютно предвзятые выводы автора из прочитанного материала.

Если вам интересно узнать, какой язык в действительности был первым ООП-языком на свете, могут ли Java и C# называться чистыми ООП-языками, а также проникнуться некоторыми другими деталями, приглашаю вас под кат..

Читать дальше «Краткий очерк истории объектно-ориентированного программирования»


10 Ноя 2010

Автоинкрементные первичные ключи (суррогатные ключи) = зло?

Category: SQL и базы данных,СтатьиFractalizeR @ 00:19

В этой статье я приведу взгляд (отрицательный по большей части) Джоша Беркуса, CEO компании PostgreSQL Experts Inc. на использование суррогатных ключей для таблиц базы данных, тех самых INT NOT NULL AUTO_INCREMENT PRIMARY KEY, к которым мы привыкли. Фактически, это будет вольный, сильно сокращенный перевод его статьи на ittoolbox.

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

Честно говоря, прочитав эту статью и не заметив, кто автор, я подумал, что он все же преувеличивает и вообще, я без него как-нибудь разберусь, где и какие ключи мне использовать. Потом я еще немного подумал и полез за дампом структуры базы моего старого проекта. Было интересно.

Если вы опытный DBA, наверное, вам стоит пройти мимо, чтобы не расстраиваться.

Но обо всем по порядку. Сначала ОЧЕНЬ сокращенный перевод:

Читать дальше «Автоинкрементные первичные ключи (суррогатные ключи) = зло?»


07 Ноя 2010

ООП Практикум PHP5: эмуляция примесей (mixin) в языке

Category: PHP,СтатьиFractalizeR @ 22:49

Как-то вечером для реализации моделей поведения в ORM в моем велосипеде фреймворке мне понадобилось что-то, ведущее себя как примесь (mixin) в Ruby или как метод расширения (extension method) в C# (или как трейт / графт в будущих версиях PHP) Я решил для интереса посмотреть, как у меня получится реализовать примеси на PHP. Если вы не знаете, что такое примесь, не беда, сейчас все расскажу.

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

Читать дальше «ООП Практикум PHP5: эмуляция примесей (mixin) в языке»

Метки: , ,


01 Ноя 2010

Поиск в XenForo: MySQL FullText VS Sphinx, преимущества и недостатки

Category: XenForo,СтатьиFractalizeR @ 12:23

Поскольку некоторые владельцы больших форумов собираются переходить на поисковый движок Sphinx, изложу некоторые моменты, которые были осознаны на собственном опыте.

Читать дальше «Поиск в XenForo: MySQL FullText VS Sphinx, преимущества и недостатки»


26 Окт 2010

Защита Win32 и .NET приложений: обзор протектора Themida (X-Protector)

Category: СтатьиFractalizeR @ 13:20

Этот обзор посвящен Themida (в прошлом X-Protector), одному из самых мощных и надежных протекторов Win32 приложений. Поскольку Themida совсем недавно понадобилась мне для одного из моих приложений, я решил написать по ней небольшой обзор. Заодно попросил автора ответить на некоторые интересующие меня вопросы. Думаю, ответы будут вам тоже интересны. Результаты этого небольшого интервью ищите в конце статьи.
Читать дальше «Защита Win32 и .NET приложений: обзор протектора Themida (X-Protector)»


19 Окт 2010

Краткий обзор membase — нового NoSQL решения от авторов memcached

Category: Без рубрикиFractalizeR @ 11:29
MemBase — открытое, распределенное персистентное хранилище ключ-значение оптимизированное для хранения данных веб-приложений.

  • персистентен
  • имеет квази-постоянное (quasi-deterministic) малое время отклика
  • высокая скорость работы
  • линейно масштабируется с одного сервера до тысяч
  • не имеет схемы данных (только ключ-значение)
  • совместим по протоколу с memcached

Читать дальше «Краткий обзор membase — нового NoSQL решения от авторов memcached»


← Предыдущая страницаСледующая страница →