Готово ли ваше приложение к Windows 7 RTM?

Автор: Topol Четверг, Май 3rd, 2012 Нет комментариев

Рубрика: Операционные системы

Несколько недель назад состоялся важный этап в разработке Windows 7 - Windows 7 была отправлена в печать! И через три месяца — 22 октября — Windows 7 станет доступна всем желающим. Восторженное ожидание предстоящего публичного релиза Windows 7  росло месяцами, и мы ожидаем куда более высокий уровень принятия, чем это было с предыдущими версиями Windows.

Поскольку мы приближаемся к 22 октября, вы должны спросить себя: готово ли ваше приложение к Windows 7? Что будет, когда конечные пользователи установят ваше приложение на Windows? Запустится ли ваше приложение? Увидят ли пользователи какую-либо разницу, когда запустят приложение на Windows 7 по сравнению с Windows Vista  или XP? 22 октября уже не за горами и мы здесь, чтобы помочь вам ответить «ДА!» на эти вопросы и убедиться, что «Однозначно, мое приложение блистает всеми красками на Windows 7«. Мы хотим помочь вам создать у пользователей приятное впечатление от вашего приложения и, конечно же, Windows 7.

Все это звучит замечательно, но какие шаги вам нужно предпринять, чтобы сказать: «Да, мое приложение работает на Windows»? Есть ли контрольный список? Да, конечно, есть.

Вам нужно сделать три вещи, чтобы обеспечить плавный переход:

1. Убедиться, что ваше приложение совместимо с Windows 7
2. Оптимизировать работу и быстродействие вашего приложения в Windows 7
3. Реализовать новые возможности в Windows 7

Убедиться, что ваше приложение совместимо с Windows 7
Перед тем, как использовать новые возможности Windows 7, убедитесь, что ваше приложение совместимо с Windows 7. Другого пути нет: очень важно, чтобы вы убедились, что ваше приложение правильно работает в Windows 7. Нет ничего хуже для пользователя, чем находиться в предвкушении новой операционной системы Windows 7 и обнаружить, что его приложение просто не работает. Некорректная работа вредит всем — вот почему вы должны убедиться, что ваше приложение устанавливается и работает на всех версиях Windows 7 и поддерживает как 32-разрядную, так и 64-разрядную версии.

Если ваше приложение совместимо с Windows Vista, значит, у вас не будет проблем! Мы ожидаем, что большинство приложений, работающих на Windows Vista, будет работать на Windows 7. Понятно, что вы не можете быть уверенными в этом и должны проверить (и перепроверить), что ваше приложение и вправду совместимо с Windows 7. Есть ряд различий между Windows Vista и Windows 7, которые могут повлиять на определенную функциональность приложений, так что если вы до сих пор не ознакомились с Windows 7 Quality Cookbook, мы настоятельно рекомендуем вам сделать это.

Если ваше приложение было разработано для Windows XP (или более ранней версии Windows), и вы не проверяли, совместимо ли оно с Windows Vista, есть ряд областей (например, UAC), которым вы должны уделить особое внимание. Важно помнить, что нет единой палочки-выручалочки для всех проблем совместимости. Каждое приложение идет со своим собственным набором проблем, которые зависят от отдельных нюансов реализации. Windows Vista Application Compatibility Cookbook остается очень актуальной для Windows 7, поскольку 99% разделов этой документации применимы к Windows 7. Стоит отметить, что несколько разделов важнее других. Следующие семь аспектов отвечают большему числу отчетов о проблемах совместимости.

  • Проверка версий - безусловно, главная проблема совместимости приложений. Вы когда-нибудь получали сообщение от приложения «Требуется Windows XP или выше», пытаясь запустить его на Windows 7? Если так, то вы наткнулись на проблему проверки версии. Вы можете узнать больше на эту тему в статье Проблемы совместимости: версии операционных систем
  • Перенаправление данных - начиная с Windows Vista, обычные пользователи имеют ограниченных доступ к некоторым файлам, папкам и ключам реестра. Когда приложение пытается произвести запись в эти расположения, оно получает перенаправление куда-нибудь еще. В основном, это прозрачно и для пользователя, и для разработчиков приложения, но иногда случается иначе, что приводит к очень интересным результатам. Вы можете узнать больше на эту тему из статьи Общие проблемы виртуализации файлов и реестра в Windows Vista
  • Защищенный режим IE - начиная с Windows Vista, по умолчанию IE работает с низкими правами. Обычно это означает, что некоторые элементы управления ActiveX, которые работали в Windows XP, не работают в Windows Vista и Windows 7. Если вам требуется дополнительная информация, прочтите о Защищенном режиме в Vista IE7 (и да, это по-прежнему применимо к IE8).
  • Изоляция Сессии 0 - в Windows Vista службы работают в их собственной сессии (сессия 0), а не в пользовательской сессии(ях) (сессия 1 и далее). Эта граница безопасности защищает систему от многих направлений атак и абсолютно необходима. Однако она также вызывает проблемы коммуникации между службами и приложением, как, например, блокирование ваших сообщений! Вы можете узнать больше на эту тему - Изменение обязательного уровня целостности для защищенных объектов в Windows Vista
  • Обнаружение инсталлятора - начиная с Windows Vista, ОС автоматически пытается определить, является ли данное приложение программой установки, запуск которых обычно требует прав администратора. Однако иногда эта эвристика может вызвать проблемы. Если вам требуется дополнительная информация, прочтите Правила разработчика Windows Vista и Windows Server 2008
  • Ограничение привилегий пользовательского интерфейса - не позволяет приложению (процессу) посылать сообщения другому процессу с более высокими правами, даже если они запущены в одной учетной записи. В то время как это защищает от shatter-атак, ограничение также может привести в неработоспособность некоторые приложения
  • High DPI - во время установки Windows 7 автоматически определяет, поддерживает ли ваш экран High DPI. Если поддерживает, то Windows 7 автоматически устанавливает разрешение экрана на High DPI. Если ваше приложение несовместимо с High DPI, это может вызвать некоторые проблемы отображения (например, обрезание текста). Узнайте больше о том, как убедиться, что ваше приложение отображается корректно на High-DPI дисплеях

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

Оптимизировать работу и быстродействие вашего приложения в Windows 7
После проверки того, что ваше приложение устанавливается и работает на Windows 7 без проблем, наступает время идти дальше и оптимизировать работу и быстродействие вашего приложения в Windows 7. Сделайте это при помощи использования новых возможностей, представленных в Windows 7. Сюда входят и инновации в пользовательском интерфейсе, такие как панель задач (Taskbar) и библиотеки (Libraries), и более фундаментальные функции, вроде сервисов Trigger Start Services или новой платформы Troubleshooting (Устранение неполадок). Оптимизируя ваше приложение для Windows 7, вы можете убедиться, что работа пользователей с вашим приложением в Windows 7 превзойдет их ожидания. Пользователи могут ожидать, что ваше приложение работает правильно с панелью задач (всего лишь пример), но если ваше приложение не оптимизировано для работы с новой панелью задач Windows 7, конечный пользователь может заметить это.

Когда вы будете готовы к оптимизации вашего приложения для Windows 7, вам предстоит обдумать одну или несколько из следующих возможностей:

  • Панель задач (Taskbar) - новая панель задач в Windows 7 интуитивно предоставляет больше информации пользователю при помощи таких функций, как списки переходов (jump lists), которые помогают пользователю быстро переходить к необходимому объекту/задаче. Также рекомендую ознакомиться со статьей Разработка для панели задач Windows 7 — Application ID.
  • Библиотеки (Libraries) - это точка входа пользовательских данных в Windows 7. Библиотека в Windows 7 — это заданная пользователем коллекция контента, выводящая данные пользователя независимо от иерархии папок. Пользователь может объединить иерархию папок, собрав любое количество физических папок (на своей локальной машине или удаленных устройствах) в одно место — библиотеку. Узнать о библиотеках больше вы сможете, прочитав публикациюГид по программированию Windows 7: библиотеки.
  • Trigger Start Services - Windows 7 Service Control Manager был расширен, чтобы служба могла быть автоматически запущена и остановлена при определенном системном событии, или триггере, произошедшем в системе. Возможность триггер-включения ликвидирует необходимость службе запускаться автоматически при включении компьютера и простаивать в ожидании, когда событие случится, например, когда будет подключено устройство. Больше по этой теме можно узнать из статьи Service Trigger Events.
  • Оптимизация энергопотребления - Windows 7 предлагает инфраструктуру и инструменты, которые помогают разработчикам определить влияние электропитания на их приложения. Набор обратных вызовов событий позволяет приложениям уменьшать их активность, когда система работает от аккумулятора и увеличивать ее при работе от сети.
  • Troubleshooting Platform - Windows 7 предлагает обширную и расширяемую платформу Troubleshooting (Устранение неполадок), которая использует основанный на PowerShell механизм выявления и устранения проблем. Troubleshooting Platform плавно интегрируется с Windows 7 PC Solution Center и дает возможность другим приложениям выполнять диагностику тем же образом. Узнайте больше о Windows Troubleshooting Platforum.
  • Windows Error Reporting - это набор технологий Windows, которые записывают данные о сбое приложения и поддерживают отправку отчета с информацией о сбое. Благодаря службам Winqual, поставщики программного и аппаратного обеспечения могут получать доступ к отчетам для анализа и решения этих проблем. Этот набор инструментов предоставляет информацию в реальном времени о качестве вашего программного обеспечения и упрощают обновление и создание патчей. Приступая к работе с Windows Error Reporting.
  • Оптимизация I/O - назначение приоритетов I/O улучшает отзывчивость операционной системы без значительного снижения быстродействия. Если у вас имеются какие-либо службы, продолжительно работающие и активно использующие I/O, которые могли бы работать в фоновом режиме, пользователь будет вам благодарен. Неоптимизированные к I/O приложения дают дополнительную нагрузку на систему. Если приложение оптимизирует I/O для некритичных для приложения служб, это может значительно улучшить поведение системы целиком.
  • Restart Manager - эта технология дает возможность автоматического перезапуска после сбоя, а также применение обновлений к приложениям и операционной системе без перезагрузки самой машины. Когда вы встраиваете данную функциональность, то получаете второй шанс сохранить важную для вашего приложения информацию. Windows автоматически перезапустит ваше приложение и попытается загрузить информацию, которую пользователь только что использовал. Эта же технология упрощает обновление большинства приложений и операционной системы без необходимости перезагрузки. Если же перезагрузка необходима, то Windows перезапустит приложение и вернет его в последнее состояние.

Реализовать новые возможности Windows 7
Как только вы сделали первые два шага, вы можете разнообразить свое приложение новыми уникальными возможностями Windows 7. Windows 7 позволяет разработчикам создавать разнообразные и интуитивные приложения, которые значительно увеличивают доступность, простоту в использовании и улучшают общее впечатление. Новые методы настольной интеграции помещают функциональность приложения прямо под кончики пальцев пользователя. Новые Touch API делают возможным естественное взаимодействие при помощи технологии одновременного нажатия и движений пальцев. Стремительное развитие аппаратных и программных технологий также ведет к более точному пользовательскому интерфейсу. Windows 7 отдает эти достижения под контроль разработчика с новыми гибкими API, использующими все преимущества технологии и одновременно упрощающими разработку приложений.

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

  • Ribbon - Windows 7 предлагает Ribbon-интерфейс из Office 2007 средствами операционной системы и улучшенную разработку пользовательского интерфейса при использовании платформы. Это означает, что разработчики могут забыть о нудной разработке Win32 UI и предложить визуально богатый и знакомый пользовательский интерфейс, используя UI на базе разметки и быстродействующую исполняемую среду управляемого кода.
  • Multitouch & Ink - Windows 7 включает улучшенную поддержку прикосновений и жестов, позволяя разработчикам быстро и просто создавать уникальные интерфейсы приложений, которые выходят за грань простого наведения мышки, щелчков и перетаскивания. Новые Multi-touch API поддерживают разнообразные жесты, такие как перелистывание, масштабирование и поворот. Все жесты получают немедленный визуальный отклик и взаимодействуют с контентом естественно и интуитивно.
  • Sensor and Location Platform - Windows 7 изменяет то, как разработчики используют сенсоры. Сюда входит и поддержка сенсоров, расширенная новой платформой разработки на уже существующие сенсоры, включая сенсоры местоположения (такие как устройства GPS) и сенсоры (такие как светочувствительные сенсоры или датчики температуры), позволяющая создавать контекстно-зависимые приложения. Сенсоры местоположения открывают новые возможности для служб, ориентированных на определенное местоположение.
  • Новый графический стек - Windows 7 предоставляет новые графические возможности в руки разработчикам при помощи нового набора DirectX API. Разработчики Win32 могут получить преимущества от последних инноваций в GPU, чтобы добавить быстрые, масштабируемые, высококачественные 2D и 3D графику, текст и изображения в свои приложения.
  • Платформа мультимедиа - Media Foundation и DirectShow® составляют основу поддержки мультимедиа в Windows Media Foundation, появившейся в Windows Vista как замена DirectShow. В Windows 7 Media Foundation была расширена для лучшей поддержки форматов, включая:
    • MPEG-4
    • Поддержку записи видео с устройств и аппаратных декодеров, включая H.264, MJPEG и MP3
    • Новые источники для MP4, 3GP, MPEG2-TS и AVI
    • Новые приемники для MP4, 3GP и MP3

    И для разработчиков Windows 7 добавляет новые API высокого уровня, которые сильно упрощают написание мультимедиа-приложений.

  • Федеративный поиск (Federated Search) - Windows 7 поддерживает поиск документов за пределами ПК пользователя. Разработчики и ИТ-специалисты могут добавить в свои движки, хранилища документов, веб-приложения и частные хранилища данных поддержку поиск из Windows 7 без написания и развертывания клиентского кода. Это позволит пользователям искать внутри сети своей корпорации или в Интернете легко, как если бы они искали свои локальные файлы — из знакомого интерфейса Windows.
  • Интеграция Device Stage - Windows 7 совмещает программное обеспечение и службы для создания новых способов работы с мобильными телефонами, портативными медиа-плеерами, камерами и принтерами. Windows 7 упрощает использование этих устройств прямо с рабочего стола Windows. Он также дает производителям устройств возможность создать заметное место на рабочем столе Windows с расположением брендовой информации и простого интерфейса для представления функциональности и служб, поддерживаемых устройствами.

Я надеюсь, эта статья поможет вам начать работу, чтобы сделать ваше приложение для Windows 7 ярким и поистине запоминающимся!

Источник: thevista.ru

Оставить комментарий

Чтобы оставлять комментарии Вы должны быть авторизованы.

Похожие посты