Вчера на конференции для разработчиков BUILD компания Microsoft сделала несколько довольно неожиданных анонсов. Во-первых, представила новый контейнер так называемых «универсальных Windows-приложений» (Universal Windows Apps), которые одинаково хорошо работают на устройствах любого форм-фактора. У разработчика будет возможность оптимизировать приложения для каждой платформы непосредственно из Visual Studio.
Универсальные Windows-программы работают в новом окружении Windows Runtime и поддерживают дополнительный слой на C#, JavaScript и HTML5. Каждое приложение состоит из двух «частей»: в первой — общий код для всех платформ, а во второй — специфичный код для каждой платформы. Microsoft говорит, что разработчик сможет легко протестировать программу и под Windows 8.1, и в эмуляторе Windows Phone 8.1.
Единый формат приложений означает, что на всех платформах будет единая система идентификации пользователей. Купив программу для смартфона, человек сможет запускать ее на персональном компьютере, и наоборот. То же самое относится к внутрипрограммным покупкам.
Когда-нибудь в будущем формат универсальных Windows-приложений обещают распространить и на Xbox One.
Как бы некоторые программисты не относились к Microsoft, но писать на одном языке программирования приложения для нескольких платформ — очень заманчивая перспектива. Тем более, что Microsoft передала в общественное достояние библиотеку WinJS (Windows Library for JavaScript): набор инструментов для написания приложений HTML/JS/CSS с привычным интерфейсом Windows, поддержкой тачскрина, мыши и клавиатуры.