Структуры данных, используемые в Redis

Я попробую ответить на вопрос, но начну с того, что на первый взгляд может показаться странным: если вы не интересуетесь внутренностями Redis, вы не должны заботиться о том, как реализованы структуры данных изнутри. Причина этому проста — сложность каждой команды Redis вы можете найти в документации, и если у вас есть набор […]

Разбор Аннотаций Symfony 2

Одним из крутых инструменов фрэймворка Symfony 2 является возможность конфигурировать свое приложение посредством аннотаций. Изначально аннотации использовались в Doctrine 2, в частности для создания моделей и валидации. В Symfony 2 так же добавлена поддаржка аннотаций с помощью двух бандлов: SensioFrameworkExtraBundle и JMSSecurityExtraBunlde. Два этих бандла позволяют конфигурировать такие аспекты работы […]

Warcraft III: The Frozen Throne: учимся тонкостям игры

Хочу предоставить вашему вниманию статью по игре Warcraft 3, полезную для начинающих игроков. В ней я опишу некоторые тонкости, которые существенно улучшат вашу результативность. Конечно, всё это будет даваться не сразу, а с опытом…но как говорится — терпение и труд — все перетрут! И если у вас что то не […]

Как создать Roguelike

Я всегда хотел написать подробное руководство для начинающих о том, как создать roguelike, содержащее как общие, так и более специфические советы. Проведённый в этом году очередной праздник Roguelike Celebration показался мне отличной возможностью наконец-то заставить себя это сделать, поэтому я подготовил получасовой доклад по этой теме.

Киберспорт. Warcraft III: The Frozen Throne

Уже не первый раз мы публикуем различные тактики для Warcraft III: Reign of Chaos. Однако с выходом аддона Warcraft III: The Frozen Throne тактика игры за разные расы очень изменилась. В предыдущем номере вы могли прочесть подробную статью об изменениях по тактике игры в целом, а начиная с этого номера, мы предлагаем вашему […]

Использование Service Worker

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

Как сделать push-уведомления на сайте для Chrome

С 2015 года начала стремительно набирать популярность технология Push API от Chrome. Все чаще, заходя на различные новостные (и не только новостные) сайты, посетителям вылетает вот такой системный фрейм с запросом: Системное окно Google Chrome, запрашивающее разрешение на доставку уведомлений от сайта.

Контейнеры, итераторы, функторы, алгоритмы

Контейнеры и итераторы Контейнерcontainer— класс, объекты которого способны хранить набор однотипных значений (обобщение понятия “массив”). Контейнер предоставляет средства доступа к своему содержимому. В Стандартной библиотеке C++ эти средства доступа строятся на обобщении понятия “указатель на элемент массива”, которое носит названиеитераторiterator.

Подводные камни Service Workers

В этом коротеньком очерке я опишу те вещи о service workers, о которых я бы хотел прочесть год или хотя бы полгода назад и тем самым избежать очень долгого и мучительного периода отладки приложения. Для тех, кто вообще не в курсе о чем речь, то очень вкратце — service worker […]

Под капотом Redis: Хеш таблица и Список

Судите сами — LISTсостоит из ziplist/linkedlist, SET состоит из dict/intset, а SORTED SET это ziplist/skiplist. Мы уже рассмотрели словарь (dict), а во второй части статьи будем рассматривать структуру ziplist — вторую наиболее часто применимую структуру под капотом Redis. Посмотрим на LIST — вторая часть его «кухни» это простая реализация связного списка. Это пригодится нам, чтобы внимательно рассмотреть […]