НовостиОбзорыСобытияIT@WorkРеклама
Мобильные решения:

Блог

Как будем программировать для Windows Phone 8?

Microsoft приготовила девелоперам мобильных приложений для Windows традиционный набор сюрпризов. Позитивный стратегически, но весьма неприятный тактически. Готовимся...

[spoiler]Сейчас разработка для платформы Windows Phone 7.* ведется с использованием двух основных технологий: Silverlight и XNA. ОС Windows Phone 7, базирующаяся на Windows CE, еще продолжит обновление до Phone 7.8, однако WP8 уже принципиально другая ОС -- дисплеи высокой четкости, многоядерные процессоры и иные относительно новые железные фичи. Однако основывается Windows Phone 8 не на Windows 8 Metro, как можно было подумать, а на той части Windows 8, которая фактически Windows 7. Решение это правильное, потому что до контроля над мобильным рынком Микрософту крайне далеко, а если еще и не получится запускать нынешние мобильные программки на WP8, эта платформа может совсем заглохнуть.

В этом контексте странно смотрится комментарий Gartner: "Windows 8 is the start of Microsoft's effort to respond to market demands and competitors, as it provides a common interface and programming API set from phones to servers. It is also the beginning of the end of Win32 applications on the desktop...
By 2020, analysts believe enterprise end-users will spend less than 10 percent of their time in Win32 applications. Most applications (including OS-neutral ones) and the browser will be run from Metro…".
"from phones to servers" получается преувеличением?
Да, хотя UI WP8 будет Metro, за поддержку его ответственна некая крайне урезанная часть ядра WinRT из полноценной Windows 8, доступ разработчиков к которой будет сильно ограничен. А так -- классический Win32. Ну и конечно WP8-приложение не пойдет на WP7-трубке, а саму WP7-трубку невозможно будет проапгрейдить под WP8.

"Microsoft совершенно сознательно решила оставить владельцев Windows Phone 7 на обочине дороги" (линк).

Вот кстати официальная позиция Microsoft: Silverlight на WP8 не будет, но будет XAML и C#/VB.NET с сохранением определенных навыков разработки (расширенные асинхронным режимом), а также HTML5/JavaScript.
Технология XNA (быстрая графика, игры, мультимедиа) все же будет поддерживаться в Windows Phone 8 на уровне библиотеки разработчика, но рекомендация в отношении программ подобного профиля (мультимедиа, 2D/3D-графика) -- писать код на Си/C++ с использованием DirectX.

Определенная целостность в этих тенденциях все же прослеживается: XAML как унифицированное описание UI, C#/.NET, неувядаемый VB, C++, родной код и DirectX. Если исключить XAML, впечатление, что возвращаемся в середину предыдущего десятилетия во времена Visual Studio 2005.
Михаил Романов
 
Ну это в принципе известный факт, что WP8 будет базироваться не на CE, а на ядре NT
Это я знаю. Однако почему был сделан вывод, что в WP8 будет доступно Win32API я не понял.
Я скорее предположу, что WP8 - это поднмножество (если не один в один) Windows RT, в которой будет доступно только Metro API, но не будет Win API.

В общем, я все еще сомневаюсь
Сергей Бобровский
Windows RT это не WinRT, это Windows 8 для ARM...

Вот например:
new 'WinPRT' (Windows Phone RunTime), a subset of Windows Phone 8 (WinRT) with a few COM and Win32 APIs available for good measure
http://www.wpcentral.com/looking-windows-phone-80-developers-perspective

The WinRT in Windows 8 is only vaguely similar to the "WinRT" in Windows Phone 8. I don't know how Microsoft dares to call the Windows Phone 8 API "WinRT." It's a bit like calling the operating system in a server "Windows 8" and the operating system in a telephone "Windows 8" as well -- and implying that the two are somehow scalable or even comparable. You'd have to enter a reality distortion field to believe a whopper like that.
http://www.infoworld.com/t/microsoft-windows/the-sorry-state-of-windows-rt-apps-windows-phone-8-196479

Михаил Романов
Увы, это не официальные документы (первый источник первый кто, говорит не просто про native development, а именно COM и Win32API - боюсь отсюда и идет непонимание, т.к. в основе Metro технология очень похожая на COM).

В общем, будем ждать официального SDK.