среда, 17 декабря 2014 г.

Создание инсталлятора с помощью WiX. Часть 3. Обновление

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

понедельник, 14 июля 2014 г.

Создание инсталлятора с помощью WiX. Часть 2. Пользовательские диалоги

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

понедельник, 30 июня 2014 г.

Создание инсталлятора с помощью WiX. Часть 1. Простой инсталлятор

При написании коммерческого софта часто встает вопрос о способе его поставки конечному пользователю. Тут можно рассмотреть несколько вариантов: мы можем поставлять программное обеспечение в виде набора файлов, копируя его на рабочие места пользователей и затем, настраивая вручную, можем разворачивать программное обеспечение с помощью облачных сервисов, например Windows Azure. Также мы можем предоставлять пользователю пакет программ в виде инсталлятора, который включает в себя этап настройки приложений.

воскресенье, 18 мая 2014 г.

Композиция объектов в WCF приложении

Привет! В этот раз я бы хотел обсудить вопрос компоновки объектов в WCF службе. Пускай у нас будет класс службы, которому для работы необходимо иметь два объекта. Для определенности это будет служба построения отчетов, которой для работы нужен доступ к репозиторию данных и очереди подготовки отчетов. Как правильно передать эти зависимости в класс службы?

воскресенье, 12 января 2014 г.

Применение Object Builder для улучшения модульных тестов

Привет! Давайте сегодня поговорим о качестве модульных тестов у вас на проекте.

При написании unit-тестов часто приходится прибегать к инициализации тестового окружения с помощью тестовых дублеров (моков и/или стабов). Допустим, у нас мы тестируем проект, которые имеет следующую схематическую структуру.

среда, 6 ноября 2013 г.

Трюки TFS

Привет! Хочу поделиться парой трюков, которые помогли мне при работе с Team Foundation Server. Думаю, что они могут быть полезны и вам в повседневной жизни разработчика.

пятница, 18 октября 2013 г.

Использование перехватчиков Unity для формирования сбоев WCF

Привет! Давайте поговорим об использовании IoC-контейнера Unity для формирования типизированных сбоев (Fault) в WCF-службе.

Часто можно встретить код, который сочетает в себе как бизнес-логику, так и дополнительные инфраструктурные действия (логирование, обработку ошибок, создание коммуникационных сбоев). Написание такого кода является плохой практикой, так как затрудняет понимание и сопровождение кода. Для небольших проектов это не является большой проблемой, но в больших проектах, которые ведут больше одного человека, такой смешанный код будет категорически сложно сопровождать. Хорошим тоном считается вынесение инфраструктурного кода в отдельные методы и классы, создание из них декораторов для классов с бизнес-логикой.

Мне интересно рассмотреть этот обширный вопрос со стороны программирования служб WCF. Часто при создании служб программисты объединяют в одних методах логику и генерирование исключений и сбоев WCF. Давайте разберемся что есть что?