Windows 8 — после того, как осела пыль


На Build было опубликовано много информации. Теперь, когда мероприятие закончилось и у нас было время поэкспериментировать с Windows 8 и ее новой средой разработки, мы можем лучше судить о будущем.

На Build было опубликовано много информации; многое из этого было трудно собрать воедино, и еще труднее было оценить влияние. В результате некоторые вещи, о которых сообщалось, хотя и не были ошибочными на 100%, но вводили в заблуждение. Ситуация намного сложнее и тоньше.

Теперь, когда сборка завершена и было время поэкспериментировать с Windows 8 и ее новой средой разработки, мы можем лучше судить о будущем. Тем не менее, это говорит о том, что также необходимо четко указать, что Windows 8 и среда разработки находятся на ранних стадиях, и Microsoft может изменить свое коллективное мнение — при условии, что это действительно сделано.

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

В версии Windows 8 Metro для x86 ведет себя так, как если бы это была модификация кнопки «Пуск». Вы нажимаете кнопку «Пуск», и вместо списка программ вы переноситесь в Metro, где есть плитки для запуска приложений.

Приложение Metro остается в Metro и использует WinRT в качестве среды выполнения.

Настольное приложение возвращает вас на рабочий стол, где Win32 является средой выполнения.

Win32 поддерживает все, с чем вы знакомы, включая перекрывающиеся окна. Metro, с другой стороны, не поддерживает перекрывающиеся окна и оптимизирован для режима работы мобильного телефона / телефона. Если вы знакомы с многооконным дизайном приложений, то среда Metro с ее подходом «один экран за раз» будет казаться странной, и вы всегда будете пытаться заново изобрести диалоговое окно. С другой стороны, если вы привыкли создавать приложения для телефона, тогда идея перекрывающегося окна будет тем, что вы только что запомните.

Лучший способ описать Metro — это мобильная операционная система, соседствующая с полноценной операционной системой для настольных компьютеров.

В принципе, приложения Metro — это технология, позволяющая начать заново, и в принципе вы не можете использовать Win32; и таким же образом вы можете получить доступ к WinRT из настольных приложений. Но на практике кажется, что можно. На оборудовании x86, похоже, нет никаких барьеров между ними, но, возможно, они появятся в будущем. Приложения Metro должны быть изолированы, чтобы их можно было безопасно загружать из магазина приложений. На данный момент эта песочница не выглядит особенно тесной, и, например, приложения Metro могут получить доступ к основной файловой системе. Вы можете ограничить, к каким ресурсам приложение Metro может получить доступ, используя манифест, но на данный момент это кажется более ориентированным на мобильную среду, а не на рабочий стол, но это может измениться.

Затем есть выбор языка разработки. Вы можете использовать .NET для Metro и любой из обычных языков .NET с XAML в качестве языка макета. Это очень похоже на использование Silverlight или WPF, но без перекрывающихся окон и диалоговых окон. Именно в этом смысле Microsoft может преуменьшать значение WPF и Silverlight, но не .NET.

Возникает вопрос, почему вы также можете разрабатывать с использованием JavaScript и HTML?

На первый взгляд, это кажется уступкой всем программистам HTML5, которые теперь могут перейти на платформу Windows 8 наравне с разработчиками .NET и C ++. Здесь упускаются два действительно важных момента. Во-первых, для разработки HTML в Windows 8 требуется множество нестандартных методов JavaScript. Как только вы используете одну из привязок WinRT JavaScript, у вас появляется нестандартное HTML-приложение, которое будет работать только в Windows 8. Вот и все о стандартах. Это также означает, что плохому разработчику HTML5 еще предстоит изучить много нового.

Во-вторых, похоже, что только подход HTML5 / JavaScript к приложениям будет работать на мобильных устройствах на базе ARM. Также кажется, что языки .NET не будут перенесены на ARM, Win32 или что-то подобное не будет. Все это означает, что на мобильных устройствах на базе ARM Windows 8 — это Metro и ничего, кроме Metro. Это согласуется с утверждением, что старые приложения Win32 не будут доступны на процессорах ARM, равно как и на рабочем столе.

Итак, Metro — это среда, охватывающая как оборудование x86, так и оборудование Arm. Internet Explorer 10 в форме Metro не поддерживает плагины, поэтому, как уже отметили большинство обозревателей новостей, нет Flash. Однако в дополнение к отсутствию Flash у нас также нет Silverlight, который можно было бы добавить к .NET. Если это не маргинализация Silverlight и всех технологий .NET, я не знаю, что это такое.

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

У нас есть две операционные системы, склеенные вместе. Очевидно, что если вы хотите настроить таргетинг на все платформы Windows 8, вам необходимо придерживаться Metro, отказаться от рабочего стола и всего, что с ним связано — перекрывающихся окон, .NET и Silverlight.

Чтобы быть в курсе новых статей на I Programmer, подпишитесь на RSS-канал, подпишитесь на нас в Twitter или Facebook или подпишитесь на нашу еженедельную новостную рассылку.


Добавить комментарий