Patterns and Practices Summit Russia - ежегодное мероприятие, собирающее разработчиков, которые хотят писать качественный код. Я посещаю это мероприятие уже в третий раз, и с каждым разом становится интереснее.

Сложно недооценить важность лучших практик разработки ПО и инфраструктурных компонентов, реазизующих паттерны проектирования, облегчающих рутинную работу и позволяющих вам в большей мере сконцентрироваться на задаче. Участие в конференции, затраченное время многократно окупается: вы работаете эффективнее. Возможно вам кажется, что эти слова выглядят как реклама, но уверяю вас: далеко не каждая конференция заслуживает такой моей похвалы. В этой статье я вспомню интересные идеи и факты, услышанные мной на PnPSummit, постараюсь не пересказывать доклады, полные видео докладов доступны на сайте pnpsummit.ru
Конференцию открывали члены команды Patterns and Practices, которые приехали из США. Команда PnP в Microsoft совсем небольшая и занимается созданием повторно используемых компонентов и написанием руководств по качественной разработке ПО.
Самый важный доклад, на котором я побывал - “Microsoft Enterprise Library: сегодня и завтра”. Докладчик - Григорий Мельник, наш соотечественник, который теперь живет в США и работает в Microsoft над Enterprise Library и сопутствующими технологиями. Стоит заметить, что Григорий прекрасно разговаривает по-русски, что значительно облегчает общение.
Первый слайд презентации Григория показателен: “Велосипед с квадратными колесами” - его позволяет избежать EntLib при правильном использовании. Так же набор библиотек EntLib может использоваться, как отправная точка для разработки вашего фреймворка - исходный код открыт. Вам выбирать, как его использовать - в продакшне как есть, или модифицировать - библиотеки готовы для обоих способов использования.

Enterprise Library состоит из блоков, написанных с помошью паттернов проектирования и пропагандирующих их использование, имеет расширяемую архитектуру, и довольно несложен в использовании (к библиотекам написаны тонны документации, есть gui-конфигураторы, лабораторные работы, вебкасты) - от вас нужно только желание учиться. Блоки могут работать как совместно, так и по отдельности, если вам нужна только часть функциональности - необязательно тащить за приложением все библиотеки.

EntLib - очень популярный набор библиотек, уже более 3 000 000 загрузок. Любопытный факт, полученный в результате исследования: в двадцати милях от вас полюбому есть разработчик, использующий EntLib. Интересно, как на счет Сибири и Крайнего Севера. Там ведь и людей вокруг вас в двадцати милях не сыщешь. Наверное результат исследования применим только в городах.

Сегодня EntLib используется в таких продуктах, как Exchange 2010, BizTalk 2009, Windows Azure Marketplace, Bing, а также Lync 2010, System Center и Surface 2.0. Конечно EntLib - не панацея, но как минимум заставляет задуматься о качестве вашего ПО. “Тем ли путем идете, товарищи?”, - как говорил В.И. Ленин.

EntLib позволяет конфигурирование библиотек не только с помошью кода, но и XML конфигурации. На сегодня для Enterprise Library доступен удобный визуальный редактор, который можно например поставить отдельно без Visual Studio вашему сетевому администратору. Однако согласитесь - для программиста это не самый лучший путь - хочется не получать огромные непонятные файлы конфигурации в результате. Но эта проблема будет решена. С версии 6 EntLib будет включать в себя удобный DSL (Domain-Specific Language) для конфигураций. Работа над EntLib 6 начнется в марте и developer preview ожидается уже в мае-июне, и уже будет адаптирована для Windows 8 и .NET 4.5.

До этого момента команда PnP обещает сделать Windows Azure Scaling Application Block (codename “WASABi”), который поможет вам автоматически масштабировать приложения в облаке Windows Azure (механизм Autoscaling). На channel 9 уже доступно видео технологии (более подробно можно почитать и посмотреть по ссылке http://entlib.codeplex.com/wikipage?title=EntLib5Azure).
Интересные нововведения будут реализованы и в Unity 3.0, в частности авторегистрация (automapper и многое другое).

Вы прямо сейчас можете повлиять на будущее EntLib 6 и Unity 3.0, проголосов или добавив для голосования необходимые вам возможности на сайте uservoice.com в разделе по entlib.
Команда PnP не остается в стороне от новейших технологий в области проектирования масштабируемых облачных приложений и в скором времени будет доступно руководство по созданию качественных приложений, используя паттерн CQRS. Для понимания технологии стоит прочитать книгу Грега Янга по CQRS, которая выйдет осенью, а потом уже браться за руководство от команды PnP. Грег Янг и Ринат Абдуллин (автор Lokad.CQRS фреймворка) будут приглашены для рецензирования работы команды PnP в области CQRS. Я желаю команде удачи, они занимаются полезным делом для всех нас.

Самый простой доклад, на котором я побывал - доклад Дмитрия Андреева “Погружение в шаблоны проектирования приложений”. Цель этого доклада – пробудить желание писать качественный код даже у новичков в сфере разработки программного обеспечения и показать, что такое паттерны и как они могут сделать нашу жизнь лучше. Честно говоря, доклад был не таким, какой я бы хотел видеть по этой теме. Скорее его нужно было бы назвать: "Для чего нужны паттерны". Уровень доклада - 100. Надеюсь, новичкам было полезно.
Конференцию завершила сессия вопросов и ответов. К сожалению я не смог побывать на многих интересных сессиях (они шли параллельно, а человечество еще не придумало, как разделять сознание людей), так что остальные буду смотреть онлайн. Судя по отзывам, многих заинтересовал доклад Владимира Мельника.

В кулуарах между докладами и после, на фуршете, постоянно проходили большие технические обсуждения и даже споры, очень приятно было пообщаться с коллегами на технические темы.
Увидимся в следующем году!

0 коммент.:
Отправить комментарий