Как стать автором
Обновить
58
0
Зайцев Андрей @zandroid

Пользователь

Отправить сообщение

Пишите чистый код с Реактивными Расширениями (Reactive Extensions)

Время на прочтение6 мин
Количество просмотров70K
Если у вас есть некий процесс, который может выполняться долго и возвращать несколько промежуточных результатов с течением времени, то Реактивные Расширения (.NET Framework Reactive Extensions) позволят вам упростить код и лучше управлять им.

чистый код с реактивными расширениями

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

Но есть решение этой проблемы по-лучше, чем использования событий, — Реактивные Расширения. Если у вас есть процесс, работающий долго и время от времени возвращающий промежуточные результаты, то Реактивные Расширения помогут вам обрабатывать такие результаты всякий раз, когда они приходят. Код от использования Реактивных Расширений вместо событий не только становится проще, но вы ещё получаете более богатую функциональность (например, вы можете использовать LINQ для отсеивания любых ненужных данных).
Читать дальше →
Всего голосов 22: ↑20 и ↓2+18
Комментарии11

Дэйв Мэтвин: jQuery создают личности

Время на прочтение6 мин
Количество просмотров8.9K
В современном мире вряд ли найдется Frontend-разработчик, который никогда не пользовался библиотекой jQuery. Именно jQuery значительно упростила работу с JavaScript и позволила разработчикам не беспокоиться о кросс-браузерных вопросах.

Команда jQuery работает над проектом уже почти семь лет. Дэйв Мэтвин (Dave Methvin) – президент jQuery Foundation – прошёл долгий путь от участника сообщества до главного разработчика ядра. Сейчас Дэйв готовится к приезду на первую российскую конференцию, посвящённую библиотеке jQuery, #jQueryRussia.



Организатор конференции, компания ITmozg, задал Дэйву несколько вопросов о развитии библиотеки, сообщества и основных трендах Frontend-разработки.
Читать дальше →
Всего голосов 26: ↑22 и ↓4+18
Комментарии7

jQuery 1.8 box-sizing: width(), css(«width») и outerWidth()

Время на прочтение3 мин
Количество просмотров11K
Одна из отличных новых возможностей jQuery 1.8 — это встроенное понимание свойства box-sizing: border-box, которое поддерживается всеми современными браузерами. (IE6 и IE7, покурите в сторонке, я же сказал, современными браузерами.)

Прим.: CSS-свойство box-sizing введено в стандарте CSS3, и может иметь два значения: content-box — соответствует стандарту CSS2 и является значением по умолчанию, при этом свойства width и height задают ширину и высоту контента и не включают в себя значения отступов, полей и границ, новое значение border-box говорит браузеру о том, что свойства width и height должны включать в себя значения полей и границ, но не отступов (margin).
Читать дальше →
Всего голосов 16: ↑16 и ↓0+16
Комментарии11

Что такое этот новый jQuery.Callbacks Object

Время на прочтение10 мин
Количество просмотров16K
В не столь давно вышедшей версии jQuery 1.7 появился новый объект Callbacks, о котором сегодня и пойдёт речь.
В официальной документации jQuery.Callbacks описан, как многоцелевой объект, представляющий собой список функций обратного вызова (callbacks — далее просто колбэков) и мощные инструменты по управлению этим списком.

Я просматривал возможности этого объекта, когда он был ещё только в разработке, и надо сказать, что возможностей у него изначально было немного больше, чем осталось в релизной версии. Например, сейчас отсутствует возможность создания очереди (queue) колбэков, которые вызываются по одному на каждый вызов fire(). Видимо, команда jQuery, решила немного подсократить код, убрав «ненужные/редкоиспользуемые» возможности, чтобы сэкономить в весе библиотеки. Это маленький экскурс в историю Callbacks, но далее я буду описывать только доступные сейчас функции и в конце напишу небольшое возможное улучшение этого объекта.
Кому интересно, прошу под кат
Всего голосов 73: ↑73 и ↓0+73
Комментарии24

jQuery 1.7 Released

Время на прочтение5 мин
Количество просмотров6.7K
jQuery 1.7 готов к загрузке! Можно скачать с jQuery CDN:
code.jquery.com/jquery-1.7.js
code.jquery.com/jquery-1.7.min.js

Так же этот релиз будет готов к загрузке с Google и Microsoft CDNs в течении дня или двух.

Команда jQuery благодарит всех, кто принимал участие в тестировании и и поиске багов в бета-версиях и верит в прочность и стабильность релиза. И просит всех, кто найдёт какие-либо баги, рапортовать о них на баг-трекер и по-возможности подкреплять тестами для воспроизведения на jsFiddle для более быстрого анализа проблем.
Что нового читаем под катом
Всего голосов 103: ↑101 и ↓2+99
Комментарии63

Нововведения в jQuery 1.6

Время на прочтение4 мин
Количество просмотров7.2K
jquery
Совсем недавно (3 мая) был зарелизен jQuery 1.6 и вот что нового появилось в этой js-библиотеке давайте и посмотрим.

Самое «веселое» то, что в новом релизе есть важные изменения, которые несовместимы с предыдущими версиями jQuery. И в результате при переходе на новую версию, вполне возможно, что придётся просматривать и изменять уже существующий код.
Читать дальше →
Всего голосов 157: ↑156 и ↓1+155
Комментарии46

Razor: вывод секций в мастер-страницах мастер-страниц

Время на прочтение4 мин
Количество просмотров21K
Всем доброго времени суток. С недавних пор занимаюсь активной разработкой на ASP.NET MVC 3 & Razor «непростого» веб-приложения и вот сегодня наткнулся на проблему, которая опытными разработчиками, может быть, уже исследована и решена, но вот новичкам информация ниже, думаю и надеюсь, окажется полезной.

Описание проблемы


Пусть в приложении есть пара представлений: View.cshtml и ViewWithSide.cshtml, а ещё есть две мастер-страницы: Layout.cshtml и LayoutWithSide.cshtml, причём первая является мастер-страницей для второй. Как можно догадаться по именам файлов, XxxWithSide.cshtml добавляет в странице боковую панель, формат вывода которой определён в мастер странице, а внутренности — в представлении. В главной мастер-странице Layout помимо основной разметки определён вывод секции «navigation», которая задаётся в представлениях.

И вот когда в коде ViewWithSide определена секция «navigation», а в LayoutWithSide нет, потому что эта секция должна обрабатываться «следующей» мастер-страницей (Layout), то при попытке открыть ViewWithSide в приложении будет выдана ошибка: The following sections have been defined but have not been rendered for the layout page "~/Views/Shared/LayoutWithSide.cshtml": «navigation» (Секция «navigation» определена, но нигде не выведена в мастер-странице).

Идея решения этой проблемы довольно проста: нужно передать вывод этой секции «следующей» мастер-странице, а там пусть сами разбираются.
Как это решается и примеры кода есть подкатом
Всего голосов 11: ↑6 и ↓5+1
Комментарии5

jQuery Deferred Object (подробное описание)

Время на прочтение7 мин
Количество просмотров121K
31 января вышел релиз jQuery 1.5, одним из ключевых нововведений которого стал инструмент Deferred Object. Именно о нём я и хочу рассказать подробнее в этой статье.

Эта новая функциональность библиотеки направлена на упрощение работы с отложенными (deferred) вызовами обработчиков (callbacks). Deferred Object, аналогично объекту jQuery, «цепочный» (chainable), но имеет свой набор методов. Deferred Object способен регистрировать множество обработчиков в очередь, вызывать зарегистрированные в очереди обработчики и переключать состояние на «завершено» или «ошибка» для синхронных или асинхронных функций.
Подробности и примеры далее
Всего голосов 98: ↑95 и ↓3+92
Комментарии16

Информация

В рейтинге
Не участвует
Откуда
Нижний Новгород, Нижегородская обл., Россия
Дата рождения
Зарегистрирован
Активность