Персональные инструменты
 

Платформа 2011: Отчет Гаврилова Дениса — различия между версиями

Материал из CustisWiki

Перейти к: навигация, поиск
м (+{{replicate-from-custiswiki-to-lib}})
 
м (1 версия)
(нет различий)

Версия 04:05, 26 ноября 2010


Конференция «Платформа 2011», посвященная продуктам и технологиям Microsoft.

Проходила 17-18 ноября в Москве, в Центре Международной Торговли на Красной Пресне.

Сайт мероприятия http://www.msplatforma.ru

Содержание

Общее впечатление

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

Залы были просторные, кресла удобные. Регистрация, проход на доклады, обеды — все организовано так, что очередей почти не было. Разве что с закрытие подпортило впечатление, но об этом позже.

Кстати об обедах — кормили вкусно и много. Не хватало, правда, полдников (видимо в ЗИСе выработалась привычка). Но тут на помощь пришел стенд SoftLine, где по утрам раздавали шоколадки, плотно затарившись ими с утра, можно было капитально решить проблему перекусов до самого вечера.

«Дроп»

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

  • Тонкая книга или толстая брошюра «Облачная платформа Microsoft» — все что вы хотели знать про Azure
  • Тестовый аккаунт Azure живой до 17-го декабря
  • Месяц подписки XBox Live.

Все это можно взять в комнате RMS (433).

Выставки, стенды партнеров

Стендов было достаточно много, чтобы не запомнить их все наизусть. Но маловато, чтобы с интересом проводить каждые междокладные 30 минут. Из интересного было 2 вебкамеры на колесиках, зазывавших на стенд HP/Intel.

Hp robo.png

А на стенде Windows Embedded, мое внимание привлекла приборная панель Приоры или Калины с GPS ГЛОНАСС навигатором.

Priora nav.png

Priora nav 2.png


Да-да, ведро с болтами снабдили навигатором, чтобы найти дорогу к ближайшему автосервису — язвительно говорили многие, проходившие мимо. Но меня каждая отечественная высокотехнологичная примочка радует. Чье там железо не знаю, а софт и карты от Навитела, обновлять их можно через USB разъем. Остается надеяться, что экран не покажет BSOD в неподходящий момент.

Еще в укромном уголке расположились 3 XBox c кинектами, на играющих смотреть было довольно забавно, выглядело это так:

Kinect 2.gif

Kinect 1.gif

Что не понравилось

Мне ни разу не удалось пообщаться с докладчиком, хотя у меня были вопросы. В конце доклада каждый из них говорил, что ближайший час будет доступен в зоне экспертов. Да, забыл упомянуть, на одном из этажей уголок был отведен так называемой «зоне экспертов». Так вот ни разу в этой зоне мне не удалось найти докладчика! Подумав, что есть другое место, специально для докладчиков, я обратился с вопросом к девушкам в майках «Заблудились? Покажу дорогу!», но они указали туда же.

В первый день я был без интернета, так как беспарольного вайфая не было, а ЦМТшый требовал пароля. Только на второй день было обнаружено объявлением с логином/паролем.

Mspl-wifi-pass.jpg

Думаю, проблема бы и в первый день легко решилась, подойди я к стойке информации, но особой нужды не было. Но о чем думали организаторы, обрекая девушек 1.5 тысячи раз отвечать на один и тот же вопрос про интернет?


Удивил и позабавил такой инцидент. В одном из залов, дважды за день (на первом и последнем докладах), экстра надежный ноутбук партнера Toshiba под управлением хваленой Win7 дважды падал в BSOD :)


Мелкие недостатки докладов, а так же закрытие я опишу отдельно.

Первый день

Начало

Подходя к ЦМТ, я терзался мыслью, удастся ли мне попасть на конференцию без документов. Так как взяв с собой сумку с ноутбуком, я не взял сумку с паспортом :) Но, к счастью, зона регистрации оказалась свободной от бюрократизма и формализма, свой пропуск в чудесный мир бейджик я получил назвав ФИО и название организации.

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

Открытие. Пленарный доклад

Конференция открылась маленьким представлением — в темноте под музыку странные ниндзи крутили светящиеся джедайские мечи цветов майкрософта.

Mspl11-jedi-mib.jpg

В статике выглядит странно. В живую было немного по другому :)

Затем выступил глава MS Russia. Минут 15 он тараторил, что крайне рад видеть перед собой 1.5 тысячи мега-специалистов, но в целом Россия в IT плане страна отсталая, и ей есть куда расти. А в этом, конечно же, ей готов помочь Microsoft. Помогать он будет поддержкой стартапов и повышением уровня IT грамотности населения. Тут же вспомнили про Сколково, где Microsoft недавно стал партнером.

Вообще много говорили про развитие и инновации. MS уверяет, что они очень много вкладывают в RnD, и поэтому верят, что будут править миром определять будущее.

Далее был рассказ и демонстрация основных достижений MS на данный момент.

Windows 7

Категорически успешная ОС. Огромное количество лицензий продано и все довольны.

Когда залу был задан вопрос «Поднимите руку, кто не пользуется Win7», поднялась только одна рука. Руке была обещана бесплатная лицензия. :)

IE 9

Бету скачали более 10 млн раз. Браузер быстр, поддерживает HTML 5 и рендерит страницы в соответствии со всеми стандартами. Все сказанное подтвердили показом демо с сайта IE Test Drive.

Еще рассказали о новой возможности IE9 и Win7 — сайт можно вытащить ярлыком на панель задач. Далее если на HTML странице прописать определенные теги <meta>, то при правом клике на этот ярлык появится подменю с быстрой навигацией.

Windows Phone 7

Он есть. Он лучше Windows Mobile 6. Интерфейс несколько непривычный, но MS утверждает, что телефон нужно подержать в руках, иначе фишки не понять. При этом в России он пока не продается, и времени начала продаж озвучено не было.

Изначально в телефоне установлено много софта покрывающего, по мнению MS, большинство повседневных задач. Но они ожидают, что в скором времени будет написано множество других приложений. Софт писать можно либо используя Silverlight, либо XNA (это такой новый DirectX).

Не могу не рассказать о маленьком фиаско. При попытке залить приложение на реальный девайс компьютер не нашел телефон :) Помню эти проблемы еще для WM5 и ActiveSync. Спустя много лет и версий воз и ныне там.

Облака

Дальше рассказывали про облачные вычисления, зачем они нужны и чем хороши. Если кратко, то облако снимает проблемы с поддержкой инфраструктуры. Облако не падает, облако всегда вовремя патчится и обновляется, облако безгранично — в моменты пиковых нагрузок не возникает проблем с ресурсами. Подробнее про облака в описании доклада: Программная модель Windows Azure

Показали пример создания «облачного» приложения. Процесс абсолютнейше ничем не отличался от создания приложения работающего на локальном компе с локальной БД. Тот же самый EntityFramework, для которого есть провайдер к облачному SQL. Деплоймент похож на развертывание из VS на IIS, только сейчас нужно указать несколько дополнительных параметров.

Между делом, пока делали демо-приложение, разыграли 3 кинекта.

Еще выходил представитель Quest Software, много говорил про облака. Но единственный реальный профит, который я уловил, это легкая масштабируемость. То есть перед началом продаж, например, тех же кинектов можно просто попросить больше ресурсов под свой интернет-магазин (а еще, подумал я, перед публикацией линка на хабре можно сделать так же и хабраэффект останется только в памяти хабракорифеев). Закончил свое выступление он словами «Теперь у нас все в Ажуре»(Azure).

Lync

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

Платформа Windows Embedded. Презентация новейших и будущих релизов

На этот доклад я попал, отчасти, случайно. Вообще я собирался на «Роль и значимость заказной разработки программного обеспечения», докладчиком там был Дэвид Чеппелл и докладывал он на английском языке. Но, как я уже говорил, я забыл документы. А без документов не давали наушники синхронного перевода. А мое знание (вернее незнание) английского языка меня пугало и я решил пойти послушать родную речь.


Несмотря на то, что доклад для меня и компании практической ценности не имеет, я не пожалел что на него сходил. Рассказали, какие версии Windows Embedded бывают. Основных 3:

  • W. Embedded 2009
  • W. Embedded 7
  • W Compact 7

Первые 2 довольно тяжелые — 2009 на ядре XP, Embedded 7 основана на Windows 7, а вот Compact 7 это развитие старого доброго CE 6.0

Собирать образ Embedded 2009 довольно интересное занятие. По сути, это XP SP3, разодранная на много-много маленьких частей. И вот, мы начинаем собирать нашу ОС как конструктор:

  • мне нужно работать с диском
  • мне нужен USB
  • а еще работа с сетью
  • профит!

Когда основные нужные куски собраны, запускается процесс поиска зависимостей, подгружаются зависимые части и можно узнать итоговый размер образа. Судя по всему, всякие установочные оболочки собираются точно так же.


Процесс сборки Embedded 7 выглядит так же, но куски там более крупные. MS просто не успела как следует поработать пилой, но обещают исправиться. Минимальный размер образа Embedded 7 — 500mb, но у него лучше дела с поддержкой media и аппаратного ускорения. Так что позиционируется она в первую очередь для меда-центров.


Из интересного еще был Silverlight на Native C++! Основным средством разработки UI для CE7 сейчас считается Silverlight, но managed-код в силу многих причин не подходит, поэтому MS сделал что то похожее на SL но без .net =) Выглядит очень забавно, правда почему это называется Сильверлайтом я так и не понял. От SL я там только XAML увидел.

Visual Studio 2010 как платформа управления жизненным циклом приложений (ALM — Application Lifecycle Management)

Несмотря на боязнь английского, я все таки пошел на второй доклад Чеппела. И не прогадал! Отличная дикция и адаптированный технический английский сделали свое дело — доклад был мною понят! Пожалуй синхронный перевод только бы испортил ощущения.

Доклад начался с объяснения, что про IDE тут не будет ни слова. И все кто ожидал услышать новые фишки работы с VS 2010, могут покинуть зал. Впрочем никто не ушел.

Вкратце было рассказано про эволюцию средств разработки.

  • вначале был блокнот отдельно редактор кода, отдельно компилятор
  • потом их объединили и получился IDE
  • потом к IDE добавили контроль версий и багтрекер и получился TFS.

Рассказ вобщем то был про TFS 2010. Что в нем (и VS) нового, хорошего и как его правильно кушать. Причем рассказ из-за дефицита времени очень обзорный. Большая часть его посвящалась TFS и тестам.


Когда залу был задан вопрос — «используете ли вы юнит-тесты», поднялось не более 20% рук. Результат поразил и меня и докладчика (остается надеяться, что остальным было просто лень). Кроме того, в зале было всего 2 тестировщика. Это также огорчило докладчика, по его мнению, устоявшееся мнение «тестировщик единица в команде второстепенная» в корне не верно и без тестировщиков хорошему софту не бывать. А в TFS для тестирования есть следующее:

  • IntelliTrace — какая-то вещь, которая логгирует работу программы (чуть подробнее тут)
  • Появились инструменты для ручного тестирования
  • Можно тестировать приложения на виртуалках разных конфигураций
  • Инструменты для нагрузочного тестирования

Кроме того у TFS есть много красивых отчетов и dashboard.

Windows Phone 7: технологии, развлечения, бизнес. Обзор новой платформы и возможности монетизации

Итак, Phone 7.

Чем он отличается от старой линейки?

  • Совершенно новое ядро. Только управляемый код, Silverlight и XNA.
  • Новый интерфейс (интерфейс они называют Metro, вроде он такой же удобный как указатели в метро :)).
  • Единые стандарты оборудования.


Подробности начну с оборудования.

Огромной проблемой раньше было писать под WM. Устройств было море — размер экрана от 320x200 до 640x800, процессор от 150MHz до 1GHz и проч. и проч. Обо всем этом нужно было думать.

Сейчас MS утвердил единый стандарт. У всех телефонов один экран, процессор не слабее гигагерца, аппаратное ускорение графики и определенный набор сенсоров. И это здорово! Нет, правда, это просто супер!


Писать софт для Phone 7 можно в специальной версии VS Express и для него же есть бесплатный Blend. В составе VS и Blend есть неплохой эмулятор (старый эмуль был жутко тормозной, на нем приложение работало медленнее, чем на девайсе). Что удобно — дизайнер работающий только с Blend тоже может запустить приложение на эмуляторе и посмотреть на результаты работы.

Как я уже говорил, огромный плюс — возможность отладки прямо на телефоне или эмуляторе (раньше не было).

Для разработки софта используются 2 технологии

  • Silverlight для формочек
  • XNA для игр

Обе технологии в мобильном варианте очень похожи на своих старших собратьев. Причем, если XNA все же немного урезан, Silverlight там самый обычный, только с расширениями для мобильного телефона (мультитач, геолокация и проч.).


Далее был разговор о том, как приложения продать.

Уже запущен магазин приложений для Phone 7, причем доступ к магазину имеют некоторые страны, в которых он еще не продается.

По памяти — продается он в США+Канада, Европе и вроде в Индии …

А писать софт/иметь доступ в маркет могут жители — России, Японии, Бразилии …


Чтобы иметь возможность загружать приложения в маркет нужно купить Московскую регистрацию. Годовая подписка стоит $99. При этом весь год можно заливать неограниченное количество платных приложений, но бесплатных всего 5. Чтобы продолжать бесплатно делиться своими бесплатными приложениями, нужно доплатить еще $19 (точно не выяснил, но вроде по $19 за каждые еще 5 приложений). Вот такая вот бука этот MS =)

Процесс публикации приложения выглядит так:

  1. Приложение пишется.
  2. Приложение тестируется (в России можно бесплатно на неделю получить разработческий телефон)
  3. Загружается на маркет
  4. Проверяется Майкрософтом, сертифицируется
  5. Публикуется
  6. Продается и с квантом в $200 пополняет счет своего создателя. MS себе забирает 30 %.


Оставшиеся 15 минут мы смотрели на телефон в действии. Докладчик пытался показать, что телефон быстр и ему это удалось.

Программная модель Windows Azure

Mspl11-chappell.jpg

Облачные приложения могут быть 3х типов, правильно это называется «роли»

  • Web role — это типа ASP.NET приложения, обращаться можно по HTTP, хостится на IIS.
  • Worker role — это сервисы, доступны другие порты, обычно используются чтобы сделать работу по запросу из web-роли.
  • VM role — это облачная виртуалка.


Роли хостятся на виртуалках по одной машине на роль. Виртуалками управляет некий AppFabric который периодически их выключает чтобы обновить, или еще что-то поделать.

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

  • одномоментно запущено 2 или более инстанса одной роли (виртуалку могут выключить в любой момент, если инстанс был один, то фейл).
  • инстансы не знают друг про друга, общение между инстансами только через очередь сообщений (завязались на некий инстанс, а тут его вырубило — фейл)
  • в межсервисном общении нет и не может быть транзакций


Докладчик показывал схемку где для каждого типа приложения описывалось насколько его легко перенести в облако. Я уже точно не помню, что там было, но крайние случаи такие:

  • ASP.NET приложения, взаимодействующие с WCF сервисами переносятся легко, так как принцип построения очень похож.
  • Настольное приложение, с транзакциями, жесткими перевязками между модулями заточенное под однопоточную работу, переносится плохо и его придется переписать.

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

Mspl11-sleeping-operator.jpg

Второй день

Управление инновациями в Microsoft: от идеи до продукта

У меня был выбор пойти на «Создание приложений с использованием возможностей Windows 7» или на инновации. Я решил, что Windows 7 это слишком просто и вообще можно потом запись посмотреть. Однако, лучше бы я испугался слова «инновация»…

Я наивно ожидал услышать детали о том как в MS отбирают перспективные идеи, как их проверяют и превращают в продукт. Но доклад был общим рассказом о структуре MS и последних их разработках.

Если показать на схеме как идея движется по разным подразделениям MS, то выглядит это так:

MS Futures → MS Research → MS Labs → Product groups
  • MS Futures занимаются фантастикой, придумывают то, что может быть актуально через 20-25 лет. Вобщем сообщество фантазеров :)
  • MS Research — 900 ученых с именем и перспективной молодежи, работающих по 55 направлениям. Это пока еще исследования в той или иной области.
  • MS Labs развивают удачные идеи и отсеивают неудачные. Тут уже задумываются о применении на практике.
  • Product groups — разработка конечного продукта.

Microsoft гордится тем, что подразделение MS Research было создано еще в 91 году, когда оборот компании составлял 1 миллиард долларов и работало в ней всего 5 тыс. человек. Подчеркивали, что компаний такого размера много, но далеко не все задумываются о развитии, о разработке идей. Гордятся они и тем, что создают идеи внутри, а не покупают готовые стартапы.

Дальше был список направлений по которым работают MS Labs. Много, много всего…

Отдельно остановились, на так называемом Natural Interface под этим словом скрывается много связанного с интерфейсом и вводом данных

  • Технологии лежащие в основе Kinect (уже заинтересовались военные).
  • Распознавание речи (MS обещает прорыв к 2012 году).
  • Виртуальная стена — это вариант видео конференции, когда изображение из удаленного офиса занимает собой всю стену и создается ощущение, что коллеги сидят с тобой за одним столом.
  • Telepixels — микропроектор и очень чуткий сенсорный коврик

Silverlight 4. Комплексный обзор: возможности, статус, перспективы

Сильверлайтов сейчас 3

  • браузерный
  • десктопный
  • мобильный

Но при этом это один сильверлайт, есть только небольшие расширения для каждого из направлений.

Сильверлайту уже 3 года, он дорос до 4й версии. Это уже зрелая платформа на которой можно разрабатывать сложный софт. Но при этом его мало где видно. Это все мои мысли.

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

  • загрузок 700 млн
  • 600 тысяч разработчиков (и откуда они это знают?)
  • 400+ продуктов MS

Кроме того, привел список крупных компаний, которые используют SL для внутренних проектов. Из знакомых мне, это SAP и «Тройка-Диалог».

И не мог не упомянуть, что трансляции с последней олимпиады были сделаны на Silverlight (причем, как я понял, не только плеер, но и внутренние приложения).

Сценарии использования:

  • Медиа
  • Бизнес
  • Развлечения

При разработке SL4 внимание уделялось следующим темам:

  • вебкамера + микрофон
  • встроенный мультикаст
  • защита от вывода
  • защита контента онлайн и оффлайн
  • защита контента H.264

Последние 3 темы — это все про мерзкий копирайт.


Далее доклад разделился на темы.

Насыщенный контент
  • работа с буфером
  • Drag-and-Drop с десктопа (только представьте себе, чтобы приложить картинку к посту, можно просто еще перетащить в окно с текстом)
  • работа в Google Chrome
  • очередное ускорение производительности
  • функционала все больше, а размер дистриба не растет, а даже чуть уменьшается (сейчас это 5мб)

Еще очень хвалили PivotViewer, это такой контрол, выглядит он как матрица изображений. То есть нужно вам показать 100 картинок, вы их скармливаете этому контролу, он показывает сеточку из них. Дальше можно увеличивать (при этом картинки детализируются) и скролить во все стороны. Короче, DeepZoom только не для одной большой картинки, а для множества поменьше.

Бизнес приложения
  • печать на принтер
  • новые контролы
  • Ria Services
  • интернационализация
  • MEF (это легкоподключаемые плагины)
Внебраузерная работа
  • доверенные приложения (приложению можно смотреть на файловую систему, но вроде только в профиль пользователя)
  • отрисовка HTML внутри SL (контрол WebBrowser)
  • уведомления в трее
  • COM+


Закончился доклад упоминанием недавнего казуса когда MS, якобы, похоронил SL под HTML5. Докладчик постарался убедить что для MS равно важны обе технологии, что они не мешают друг другу, а дополняют и т. п.

Стандарты HTML5 и CSS3 и рождение нового веба вместе с Internet Explorer 9

По сцене запрыгал чуви в кроссовках назвавший себя веб-евангелистом.

Сначала рассказал, зачем нужны стандарты (чтобы не было хаоса, когда одна страница по разному выглядит в разных браузерах, спасибо кэп).

Признал, что IE был жуток с версии 6 по 8.

а потом разогнали команду индусов и сделали браузер заново

Но в IE 9 все будет круто, он поддерживает все стандарты и невероятно быстр.


HTML 5

Готовился очень долго и еще не до конца утвержден. MS входит в состав разработчиков стандарта и активно влияет на процесс принятия решений.

Многие наверное уже знают что в нем нового, а кто еще не знают тем наверное не очень интересно :) Кстати, я оказался среди немногих кому интересно и кто не знал.

Весь список нововведений приводить не буду, ограничусь тем, что мне особенно понравилось.

  • Новые «смысловые» теги. Это действительно здорово!!! Если вы сталкивались с задачей анализа HTML страницы, то понимаете меня. Наконец то можно отделить мух от котлет — навигацию от контента, основной текст от примечаний, кроме того можно выделять ключевые слова.
  • Валидация. В теги <input> можно прописать тип значения и, вроде, маску. То есть браузер сам не допустит ввода абракадабры в поле с email, или текста в числовое поле.
  • Элементы audio и video. Тут все понятно, но удивило, что рассказывая про видео докладчик сделал реверанс в сторону Silverlight — мол в HTML5 это есть и работает и это круто, но на SL плеер можно сделать гораздо лучше. В SL, если я правильно понял, есть подстройка битрейта под канал, частичная загрузка и еще какие-то рюшечки.
  • Canvas — возможность на JS рисовать произвольные рисунки. Очень похоже на то, как я когда-то на бейсике рисовал линии и кружочки.
  • SVG
CSS3
  • скругленные рамки
  • несколько фоновых изображений (накладываются друг на друга с разной прозначностью и смещением)
  • внедрение своих шрифтов (указывается url, откуда нужно закачать)
  • выбор разных CSS под разные разрешения (то есть не нужно переверстывать страницу для КПК, достаточно завести отдельный CSS)
  • селекторы (это такая вещь, когда можно выражением похожим на XPath выбрать какое то количество элементов, например все четные строки какой то таблицы)

Немного удивило, что во время доклада часто упоминался Silverlight в контексте — теперь это можно сделать на HTML5, но на сильверлайте это делается проще и быстрее.

Последние несколько минут шел пиар IE9 на примере IE Test Drive.

Из всех докладов этот был самым ярким. Докладчик (Гайдар Магдануров) в меру сил жёг, говорил про MS и ее продукты со здоровой иронией и вообще вел доклад в очень живой манере, но не в ущерб информационной составляющей.

Как создать мобильное приложение для Windows Phone 7

Докладчик писал с нуля (используя домашние заготовки по 20-50 строк кода) приложение для eBay. Было довольно занудно и тривиально.

Из нового:

  • показал как работать с определением координат и акселерометром — для этого уже есть готовые сервисы с удобным API;
  • рассказал про модель уведомлений в Phone 7;
  • есть локальное хранилище на случай если приложение засыпает.
Модель уведомлений

Модель уведомлений — это новая фишка Phone 7. Приложения избавлены от необходимости постоянно стучаться на сервер за новостями. Например приложение эл. почты само получает уведомление о новом письме, это экономит трафик и время программиста.

Работает это так:

  • есть универсальный сервис подобных сообщений;
  • приложение там регистрируется и получает свой уникальный url;
  • приложение сообщает этот url серверной части вашего приложения;
  • серверная часть при необходимости дергает этот урл и что то сообщает;
  • сообщение переправляется приложению.
Сохранение состояния при деактивации приложения

Если приложение «засыпает», какие-то данные можно сохранить в локальном хранилище. Интерфейс прост и похож на кеш в EnterpriseLibrary. Некий объект сначала сохраняется с уникальным строковым ключом, затем извлекается.

Мудреный обфускатор

Обфускатором нынче никого не удивить. Но некая PreEmptive Solutions сделала для Phone7 обфускатор, который добавляет в приложение некий код, который я кроме как шпионским назвать не могу. Превращая код приложения в вермишель, он еще добавляет функционал, сообщающий кто и где пользуется вашим приложением. Как это вяжется с любимой в цивилизованном мире privacy я не очень понял. Буду искать на эту тему дополнительную информацию.

Быстрая разработка прикладных приложений с использованием LightSwitch

Довольно интересная для меня тема. Всегда злит, когда скорость создания софта сильно отличается от скорости мысли =)

LightSwitch нужен для того, чтобы минимизировать рутинные действия при создании несложных типовых приложений для редактирования табличных данных.

Доклад, как и создание приложения для Phone7, проходил в форме унылого кодинга докладчика перед аудиторией.

И вот как это было.

Внезапно! RP Server

Представившись, докладчик тут же отошел на второй план, выпустив на сцену представителя спонсоров, задача которого была за 10 минут продать какую-то очень странную систему. Впрочем странная она только с точки зрения, что благо — забыть про БД и работать с формами и классами. Представленный продукт был построен по противоположной схеме, в нем не обнаружено классов, но есть формочки и много SQL, который легко и непринужденно эти формочки оживляет. Подход сей мне непонятен и неприятен, так что я устранился от процесса впитывания информации, пока не прошли 13 минут безудержного пиара.

Кстати во время доклада я чувствовал себя как в кинотеатре, когда платишь за билет, приходишь в зал вовремя и потом 10 минут смотришь рекламу совершенно неинтересных тебе фильмов. БЯ!

И все таки LightSwitch

Далее разговор вернулся в ожидаемое русло. Попыток сделать простой конструктор приложений предпринималось множество, но успехи на этом поприще довольно скромные. LightSwitch — очередной шаг в сторону роботизированных программистов. Но даже в MS подчеркивают, что система применима только для ограниченного круга простых задач.

Как это выглядит.

В визуальном редакторе рисуется модель данных (похоже на редактор в EF). Потом из шаблона создается форма. Шаблон формы это например «детальная форма» — контрольчики для всех полей объекта, или «мастер-деталь» список родителей, список детей и проч. Сейчас есть 6 шаблонов, остальное, как надеется MS, допишут пользователи. Из шаблона автогенерится форма с набором контролов, потом их можно уже на форме настраивать.

Редактор форм выглядит как дерево контролов. Их можно добавлять, удалять, менять порядок. Можно добавлять кнопки для тулбаров.

Пример. На форме есть грид. В «базе» он умеет только показывать список в ридонли режиме. Ему можно добавить стандартную кнопку Add и появится inplace редактирование. Кроме того есть кнопка Add… (найдите 3 отличия), клик по которой вызывает стандартную формочку редактирования сущности. С удалением та же история.

У стандартного грида есть небольшой набор рюшечек типа сортировки, экспорта в Эксель и проч..

Вернемся к модели данных.

Типом свойства может быть не только примитив но и, так называемые, бизнес-типы. Например email, phone, zip. Докладчик не упоминал, но подозреваю что для бизнес типа определяется форматирование и валидация. То есть нас избавляют от необходимости, например, проверять email регулярным выражением.

Кроме того, модель — это не обязательно копия таблицы БД, в модели могут быть как хранимые, так и вычислимые свойства.

К LightSwitch можно самому добавлять плагины, расширяющие список предопределенных шаблонов форм и бизнес-типов.

Архитектурно это трехзвенка Silverlight — WCF — DB. С базой напрямую (о счастье!) работать не нужно, все таблицы и привязки к ним фреймворк сделает сам.

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

Ниша. Аналоги.

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

Мне недавно показывали подобную штуку от DevExpress под названием eXpressApp Framework (XAF), но стоит она $2000 в первый год и по $800 каждый следующий. Говорят, что уже год на ней клепают приложения в большом количестве и всем нравится.

Архитектура построения корпоративных приложений на платформе Microsoft Dynamics

Доклад имел сложность 300, это значит для подкованных спецов, которые в теме. Не смотря на то, что Dynamics я ни разу не видел, я набрался храбрости и пошел. И зря.

Но зря не потому, что все было сложно сложно и непонятно. А потому, что было просто просто и очевидно.

Доклад начался с вопроса «Друзья, а кто из вас работал с Dynamics?». В на 4/5х пустом зале (было 15 человек всего) робко поднялась одна рука. Докладчик крякнул и начал излагать прописные истины разбавленные пиаром самого Dynamics. Особо интересного ничего с доклада не почерпнул.

Начался доклад с мысли «прежде чем внедрять, решите из коробки брать готовое или самому пилить», а закончился — «я вас прошу, думайте и взвешивайте все риски прежде чем что то делать». В середине перечислялось о чем нужно подумать — безопасность, каналы связи, масштабируемость с кем нужно будет интегрироваться и т. п. Спасибо, кэп2.

Возможно докладчик не уходил в глубь, запомнив, что в зале знаком с Dynamics только один человек.

Закрытие

Закрытие откровенно разочаровало. Из полезной информации был только пиар грядущего DevCon. И час издевательской лотереи, где в произвольном порядке разыгрывали кинекты, вебкамеры и бубны.

Кроме того начало закрытия задержалось минут на 10, а тысячную толпу впускали открыв только одну дверь, создав при этом давку на входе.


Любые правки этой статьи будут перезаписаны при следующем сеансе репликации. Если у вас есть серьезное замечание по тексту статьи, запишите его в раздел «discussion».

Репликация: База Знаний «Заказных Информ Систем» → «Платформа 2011: Отчет Гаврилова Дениса»