В преддверии выхода Windows 10 сложно переоценить значение разработческой конференции DevCon, которую проводит компания Microsoft. Каждый разработчик, связанный с миром Microsoft, жаждет знать, чего же ждать от «Десятки», и что у неё будет «под капотом». Платформа Azure тоже обрела столько новых функций, что будь она коробочной программой, то тоже наверняка удостоилась бы нового красивого числа в названии. Немалый интерес представляет и браузер Edge (бывший Project Spartan), нововведения в DirectX 12, новая версия Cortana, а также старина Microsoft Office, который всё больше перебирается в «облако». Ну и, конечно, всех разработчиков интересует, какой к релизу станет новая Visual Studio 2015.

На DevCon 2015 новости ждали всех, и сыпались на разработчиков как из рога изобилия, причем параллельно в шесть потоков. Стенды компаний Intel, JetBrains и DevExpress ждали тех, кто мог выкроить хоть немного времени между докладами.

 

Лазурное будущее

Об огромном числе нововведений в облачной платформе Azure гости конференции начали узнавать ещё на церемонии открытия. Здесь и технология Service Fabric, которая позволяет быстро подключать новые сервисы к работающим в «облаке» приложениям, и новый движок машинного обучения, знакомый всем благодаря сайту how-old.net, и впечатляющий Event Hub, который может обрабатывать миллионы запросов в секунду, а по простоте использования близок к запросам SQL.

Стоит упомянуть и безразмерный Data Lake, в который можно кидать гигабайты информации как камни в озеро («озера» хватит хоть на эксабайты), и новый Azure Stream Analytics, который позволяет обрабатывать информацию без обращений к базе данных. Если говорить про базы данных, то стоит вспомнить, что помимо привычного SQL Server и новой DocumentDB, в Azure поддерживаются PostgreSQL, MySQL и Oracle, а также MongoDB и длинный список набирающих популярность БД вроде Apache CouchDB. Базы данных можно объединять в новый Elastic Pool, а сам SQLServer получил долгожданный полнотекстовый поиск и новые типы Append Blob, оптимизированные для потокового дописывания данных.

Связка Azure с Hadoop теперь напрямую встроена в новую Visual Studio 2015, как и отладка в «облаке», деплой приложения и весь стек Continios Integration. Новая «Студия» будет делать за разработчика все, что можно в Azure, причём не обязательно на Windows, не обязательно с SQL Server и, в принципе, не только на C#. Анонсированы API для работы с Azure на C/C++. Ставшие уже привычными запросы REST постепенно заменяются полноценной поддержкой аналога Node.js. В Visual Studio теперь можно будет создавать приложения с интерфейсом WebGL и three.js как на сервере, так и на клиенте: код JavaScript при этом изменять не потребуется.

devcon-4

 

Попасть в десятку

Посреди центральной площади на конференции стоял шатёр, где каждый мог попробовать новую Windows 10 на устройствах самых разных классов, включая смартфоны. Windows 10 Mobile внешне не так сильно отличается от 8.1, но это обманчивое впечатление. На самом деле это почти та же система, что и в ноутбуках, и приложения будут иметь в основе один и тот же код. Но это ещё не самое удивительное. Был анонсирован конвертер приложений с iOS и Android на новую Windows 10. Если у разработчика есть программа для одной из этих систем, он сможет получить едва ли не бесплатный порт на Windows 10, причём не только на мобильные телефоны и планшеты, но и, теоретически, на настольную версию. Приложения для интерфейса, известного как Metro, которые раньше занимали весь экран, теперь будут помещаться в маленькие компактные окна, которые никак не отличаются от привычных окон Windows. Не исключено, что на Windows 10 как грибы после дождя начнут появляться приложения и игры с iOS.

Есть и отличные новости для тех, кому не пришлось по нраву меню «Пуск» в Windows 8. В Windows 10 оно по умолчанию не открывается на весь экран. К «Пуску» вернулась классическая форма, и меню выглядит красиво и практично одновременно. Его стиль гармонично сочетается с новой политикой упаковки приложений c Modern UI в классические окна.

 

Интернет вещей

По всему миру будут продаваться миллионы и миллионы устройств под управлением Windows 10, и ими станут не только ноутбуки и телефоны. Работу Windows 10 продемонстрировали на Arduino и Raspberry Pi, умных браслетах и часах. И для всего спектра разнообразных устройств, в теории, можно будет писать один и тот же код. Никакого разделения на Windows, Windows RT и Windows Phone больше не будет.

devcon-3

Объединять различные устройства и обеспечивать их взаимодействие можно будет через Azure. Нет разницы, имеем ли мы дело с заводом, где используется телеметрия и тысячи датчиков, или с игрой для мобильных устройств: от разработчика требуется только описать алгоритм взаимодействия, а .NET Framework и Azure сделают за него всю тяжелую работу.

То, как это работает, показывали именно на примере телеметрии — съемки показаний температуры на различных участках цепи труб. Устройства всем фронтом рапортуют о своём состоянии, и если пытаться взаимодействовать с ними по REST/JSON и складывать показания в базу данных, да ещё и пытаться генерировать какую-то выборку на основе миллионов показаний в секунду, то система просто остановится.

Вместо этого предлагается другой подход: пересылать команды между устройствами и центральным кластером и получать от контроллеров готовые отчеты в оптимизированном виде. На стороне Azure в ход вступают новые механизмы Event Hubs: они позволяют собирать данные, вводя запросы на удобном языке, который напоминает SQL. Можно написать что-то вроде «SELECT телеметрия FROM входящий канал GROUP BY последние пять секунд», и все заработает. Что до производительности, то были объявлены цифры в один миллион процедур и один Гбайт/с агрегаций на каждый Event Hub.

Но, опять же, нет смысла собирать всё и складывать в базу данных: для компоновки и выборки можно использовать Stream Analytics. К примеру, если какой-то участок десять секунд подряд выдаёт аварийные показатели, самое время бить тревогу, а если показатели просто вышли из нормы, то лучше послать управляющие сигналы на повышение или понижение температуры на нужном участке. Алгоритм глубокого машинного обучения, заложенный в Azure, поможет отличить одно от другого.

 

Windows 10 на Arduino

Как бы странно это ни звучало, но на микрокомпьютеры Arduino и Raspberry Pi теперь можно установить Windows 10. Конечно, не полновесный, а лишь ядро, .NET Framework и веб-интерфейс. Поверх ставятся скомпилированные приложения, написанные на одном из языков Visual Studio. Докладчик из Microsoft показал публике, как деплоить приложения на Arduino: несложная программа посылала сигналы Low/High на порт GPIO, что заставляло устройство мигать фонариком с заданным интервалом. Все, что потребовалось, — это открыть Visual Studio и собрать приложение для ARM. Кстати, код на C# занял всего пару строк и был куда более читабельным, чем аналог на C++.

devcon-6

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

 

Это больше не Спарта

Два десятилетия истории Internet Explorer подходят к концу: браузер обещают «законсервировать» и оставить с теми функциями, которые у него есть сейчас. Его место займет молодой проект, который носил имя Spartan, а теперь переименован в Edge. Его логотип похож на значок IE, зато движок будет поддерживать все самые новые стандарты.

Зал, где показывали Edge, еле вместил всех желающих. Зрелищнее всего, пожалуй, была демонстрация взаимодействия Edge с приложениями в Windows и Azure. Старые (но не добрые) расширения браузера канули в лету — в новом Edge их не будет. Зато веб-приложения смогут взаимодействовать с программами в самой Windows 10, если о такой возможности позаботился разработчик. Не сказать, что это новая идея, но решение, которое выбрали в Microsoft, похоже, обладает достаточным уровнем безопасности.

Было показано два примера. В одном через браузер можно было управлять шариком, который двигался в окне программы для Windows, в другом в браузер передавались сигналы устройства, которое считывало мозговую активность (на веб-странице при этом показывался кружок, менявший свой цвет). Оба приложения могли работать как локально, так и в Azure.

devcon-5

В целом, связка из Edge, Windows 10 и Azure оставляет сильные впечатления. Такими темпами веб-разработчики скоро смогут переключать светофоры на улицах, управлять роботами-пылесосами и запускать ракеты в космос. И, можно не сомневаться, создавать всем этим массу работы для специалистов по безопасности.

 

365 друзей офиса

Ах, старина Microsoft Office! Сколько рефератов, курсовых, дипломов, и описаний проектов было написано вместе с тобой! Ныне ты воспарил в облака и из пакета офисных программ превратился в целую платформу со своим магазином приложений.

На DevCon демонстрация новых возможностей Office 365 началась как раз с примера работы одного из таких приложений. Программа Poll Everywhere встраивается PowerPoint и позволяет проводить опросы прямо во время выступлений. Слушатели в любой момент могут достать телефоны, перейти по ссылке на сайт pollev.com и выбрать один из вариантов ответа на заданный докладчиком вопрос. Результаты голосования отобразятся на большом экране. Это если и не быстрее, чем тянуть руки, но куда надежнее и уж точно технологичнее. К тому же в опросе смогут участвовать люди, смотрящие трансляцию удаленно, а результаты можно будет сохранить на будущее.

В онлайновой версии Office 365 подобные приложения ничем не уступают работающим локально. Мало того, разработчикам онлайновых приложений для Office дозволены невиданные ранее вольности: программы можно писать не только для сервера с Windows или Azure, но и использовать Xamarin, и хостится на Linux. Можно даже обойтись без знания C# и .NET Framework, и пользоваться JavaScript и RESTful API. В теории, код можно писать хоть на Ruby или Python, но C#, .NET и Windows Server в Azure, всё же лучше подходят для этой задачи.

Сейчас Office 365 работает на 1,2 миллиарда устройств, и, можно ожидать, что эта цифра будет только расти. Кажется, в Microsoft сделали всё, чтобы Office 365 стал удобной средой для создания приспособленных под конкретную задачу офисных инструментов. Зачем изобретать велосипед, если можно воспользоваться готовой, развитой и распространенной платформой?

 

Заглянем в «Студию»

Visual Studio 2105 получила инструментарий для взаимодействия со всем новым арсеналом Azure. Сюда входят и Event Hub, и Stream Analytics, и взаимодействие с Hadoop. Новая «Студия» объединяет под одной крышей разработку для самых разных платформ: здесь и Arduino с Raspbery Pi, и браузеры, и Office 365, и, конечно, десктопы с Windows 10. Visual Studio будет верно служить разработчику на протяжении всего цикла: от написания кода до отладки и деплоя.

Выглядит новая версия здорово — как с точки зрения функций, так и чисто внешне. Показывали и её онлайновую версию — она работает на сервере в Azure и позволяет пользоваться всеми (или почти всеми) функциями удаленно и из окна браузера. Кроме этих двух версий зрителям был показана ещё одна — новая Microsoft Studio Code. Она облегчена почти до уровня простого текстового редактора, но с поддержкой автодополнения кода и раскраской синтаксиса. Studio Code не только бесплатна, но и кроссплатформенна — есть даже версия для Linux.

Внимания заслуживает и новая система тестирования в «большой» Visual Studio. Ее создатели приняли решение отойти от привычного всем набора методов класса TestCase и остановились на событийной модели. Это весьма удачный выбор, учитывая то, что современные приложения — это набор компонентов, разбросанных как по сети, так и по логическим юнитам самой системы. Azure, кстати, замечательно подходит для нагрузочного тестирования: организовать его можно прямо через Visual Studio.

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

 

Завершая круг

Не могу не поделиться и впечатлениями от самого мероприятия. Оно было проведено просто шикарно, и речь не только о замечательных докладчиках, интересных докладах и куче новых знаний о Windows 10, Azure, Edge, Office 365 и Visual Studio. Гости DevCon будут вспоминать и афтепати с девушками из RedBull, целым шкафом пива и стэндап комиком, а также песни, танцы, швыряние клавиатуры, борьбу сумо и родео на телефоне вместо быка.

devcon-12

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

1 комментарий

  1. 11.06.2015 at 08:58

    Крутяк молодцы!

    Есть одно но Microsoft studio Code — пока еще очень сырой, нет маппинга файлов для удаленной работы по sftp с кодом на сервере (в sublime text есть), так же хотелось бы менеджер пакетов (и сайтик где эти пакеты хранятся) и побольше вкусняшек, функций (пробросить терминал в редактор, чтобы из редактора херачить на bash и т.д.) насчет скорости работы открытия больших файлов не замерял.

    Visual Studio прекрасна как всегда (мечта чтобы её и .net сделали кросплатформенными)!
    Xamarin — все сложно штука дико дорогая (и mono — не торт), хочется писать интерфейс на html + css + js, а логику на C# (актуальный не mono), и чтобы это был один проект а не разный под каждую платформу.

    Azure — очень крутая штука и очень юзабельный интерфейс с кучей плюшек, но виртуалки создаются нереально долго, и цены на них дорогие (Digital Ocean — делает это почти моментально, и минимальная цена на инстанс 5$).

Оставить мнение

Check Also

Безопасность превыше всего. 9 простых трюков, которые сделают жизнь линуксоида секьюрнее

Жизнь обычных людей складывается из мелочей. Жизнь линуксоида складывается из множества ма…