Pull to refresh
23
0
Евгений Жуйков @Alvaro

Поэт и программист

Send message

DI в сложных приложениях. Как не утонуть в зависимостях

Reading time5 min
Views10K
Всем привет.

При конструировании приложений хорошим тоном является использование Dependency Injection(внедрение зависимостей). Данный подход позволяет делать код слабо связанным, а это в свою очередь обеспечивает легкость сопровождения. Также облегчается тестирование и код становится красивым, универсальным и заменяемым. При разработке наших продуктов с самого начала использовался этот принцип: и в высоконагруженной DSP и в корпоративном Hybrid. Мы писали модули, подключали интеграцию с различными системами, количество зависимостей росло и в какой-то момент стало сложно поддерживать само конфигурирование приложения. Плюс к этому добавлялись неявные регистрации(например, кастомный DependencyResolver для Web Api задавался в настройках Web Api) и начали возникать сложности с порядком вызова модулей конфигурации. В конце концов мы выработали подход для регистрации, конфигурации и инициализации модулей в сложном приложении. О нём и расскажу.

image
Читать дальше →
Total votes 11: ↑8 and ↓3+5
Comments11

Flash to Html5 или тайное api Swiffy

Reading time2 min
Views24K
Всем привет. Думаю, ни для кого не секрет, что 1 сентября(то есть завтра) гугл останавливает в хроме воспроизведение периферийного flash-контента. Иными словами, flash-баннеры перестают запускаться без прямого указания пользователя(каковое вряд ли последует). Поэтому имеет смысл начинать переходить на так называемые html5-баннеры. А чтобы смягчить переход, надо конвертировать flash в html5.

Многие знают, что у гугла есть сервис для такой конвертации — Swiffy. Однако он существует либо как веб-приложение, либо как расширение к Flash Professional. Никакого публичного api(а тем более его документации) вроде как нет. Однако это не так.
Читать дальше →
Total votes 14: ↑13 and ↓1+12
Comments7

DSP на .Net под Windows. Джедайской Силы Пост

Reading time5 min
Views12K
Всем привет!
В первой статье мы рассказали о нашей инфраструктуре в целом. Теперь пришло время сосредоточиться на конкретных продуктах. В этой статье речь пойдёт о DSP. Как многие знают, DSP (Demand Side Platform) — автоматизированная система покупки рекламы. Требования к системе жёсткие: она должна держать высокую нагрузку (тысячи запросов в секунду), быстро отвечать (до 50 мс, а то и меньше) и, самое главное, выбирать максимально подходящие объявления. Чаще всего такие проекты разрабатываются под Linux, мы же смогли создать по-настоящему высокопроизводительный сервис под Windows Server. Как этого добиться, и как это удалось нам? Об этом я и расскажу.

image
Читать дальше →
Total votes 12: ↑10 and ↓2+8
Comments15

Релиз MongoDB 2.4

Reading time1 min
Views9.1K
Сегодня состоялся релиз финальной версии MongoDB 2.4. Одна из новых возможностей — поддержка полнотекстового поиска с морфологией и стоп-словами. Правда, пока только в экспериментальном режиме. Среди 15 поддерживаемых языков есть и русский, что очень радует.

Ещё одно заметное изменение — смена движка javascript. Вместо SpiderMonkey теперь используется V8. Довольно логичный шаг, теперь было бы неплохо посмотреть сравнительные тесты map-reduce.

Также можно отметить улучшения в индексировании и выборке гео-данных.

И ещё одно крупное изменение: добавление ролей пользователей и привилегий(read, readWrite, dbAdmin, clusterAdmin и т.д.). Посмотрим, что из этого выйдет.

Полный список изменений

Меня порадовало, что вместе с основным релизом вышла новая версия драйвера для C# с поддержкой новых возможностей.

Драйвер C#
Total votes 55: ↑52 and ↓3+49
Comments9

MongoDB и C#. Новые возможности и неочевидные проблемы

Reading time4 min
Views16K

Введение


В начале июля вышла очередная версия(1.5) официального драйвера MongoDB для C#. Среди нововведений стоит отметить поддержку типизированных запросов. Теперь появилась возможность использовать лямбда-функции в связке с Expression.
В этой статье я покажу примеры нового синтаксиса, который мне очень нравится(а мне вообще Expression в C# очень нравится), а также продемонстрирую примеры запросов, где, увы, Expression нам ничем не поможет и придется вернуться к привычным строкам. Также я порассуждаю, почему оно так, и будет ли когда-нибудь всё прекрасно в С# при работе с MongoDB.
Если интересно, то читайте дальше
Total votes 21: ↑19 and ↓2+17
Comments19

Загрузчик изображений. Закрывая тему

Reading time8 min
Views3.4K

Предисловие


Всем привет. О создании загрузчика изображений я уже писал. Сначала — загрузчик на flash, затем — на html5. По большому счёту, этих двух вариантов достаточно. И если вы поклонник рациональности, а сама тема особенного интереса не вызывает, то можете дальше не читать.
Рабочий пример загрузчика на Silverlight 4 привожу здесь же: да вот он.
Мало текста и много кода
Total votes 23: ↑16 and ↓7+9
Comments16

Загрузчик изображений и миниатюр. Новые стандарты, старые проблемы

Reading time6 min
Views12K

Предисловие


Всем привет. Не так давно я написал статью о создании загрузчика изображений на флеше. Там я упомянул, что загрузчик можно реализовать и с помощью html5 File API. Несколько вечеров и — ура — я это сделал. Настало время рассказать, какие приемы я использовал, в каких браузерах это работает, и стоит ли этим вообще пользоваться.
Напомню вкратце требования: необходимо реализовать загрузчик изображений, поддерживающий пакетную загрузку, создание миниатюр(и загрузку их на сервер), и приемлемый интерфейс.
Читать дальше →
Total votes 33: ↑33 and ↓0+33
Comments39

Опыт создания загрузчика изображений

Reading time7 min
Views8.4K

Предисловие


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

Для начала опишу основную задачу: необходимо создать загрузчик изображений(bmp, png, jpg), с последующим их сохранением на сервере, а также с созданием копий изображений различного размера. Также желательно обеспечить соответствие дизайна загрузчика стилю сайта, и удобный интерфейс пользователя. И самое главное – загрузчик должен максимально поддерживаться браузерами.
Читать дальше →
Total votes 17: ↑13 and ↓4+9
Comments22

Information

Rating
Does not participate
Location
Тамбов, Тамбовская обл., Россия
Date of birth
Registered
Activity