В этом коротком обзоре я предполагаю рассмотреть ключевые нововведения и улучшения в Windows 8.1 для XAML/C# разработчика. В завершение я приведу подборку докладов с конференции Build 2013, полезных для XAML/C# разработчиков.
Невозможно говорить о нововведениях для разработчика не рассмотрев нововведения в интерфейсе. Поэтому начнём с обзора интерфейса.
Обзор интерфейса
Прежде всего, если вы еще не поставили себе preview-версию Windows 8.1, то вы можете это сделать отсюда: preview.windows.com. Накануне конференции Build команда Windows подготовила ролик с Jensen Harris с обзором основных изменений:
Если вы также занимаетесь проектированием и дизайном ваших приложений, а также хотите узнать, к каким новым требованиям привели изменения в интерфейсе, рекомендую статью на habr: Build 2013 для дизайнеров. Обновления в интерфейсе Windows 8.1 и обзор полезных докладов для дизайнеров и проектировщиков.
Новые возможности Live Tile
В Windows 8.1 Preview Live Tiles добавились два новых размера плитки: 70 на 70 и 310 на 310 пикселей. Live Tiles можно объявить в манифесте приложения, и она начнет обновляться сразу после того, как пользователь установит его. Таким образом, теперь для получения обновлений на Live Tiles не нужно запускать приложение.
Подробнее: msdn.microsoft.com/en-us/library/windows/apps/bg182890.aspx#two
Примеры кода:
Live Tiles & Badges code.msdn.microsoft.com/App-tiles-and-badges-sample-5fc49148
Secondary Tiles code.msdn.microsoft.com/Secondary-Tiles-Sample-edf2a178
Программный доступ к контактам и календарю
В Windows 8.1 Preview доступны API для взаимодействия с контактами и календарем пользователя. API контактов позволяет исходному приложению запрашивать хранилище данных по адресу электронной почты или номеру телефона и возвращать пользовательский интерфейс карточки обнаруженного контакта. В нем также определены типы действий с контактами, которые можно использовать в приложениях, обрабатывающих конечное действие. API календаря позволяет из программного кода добавлять, заменять и удалять встречи и показывать пользователю приложение по умолчанию для организации встреч параллельно с другим таким приложением.
В частности, это означает, что вы можете сделать своё приложение, которое будет по умолчанию работать с встречами (Appointments).
Примеры кода:
Contact Picker code.msdn.microsoft.com/Contact-Picker-App-sample-fc6677a1
Contact Manager code.msdn.microsoft.com/Contact-manager-API-sample-319bdcef
Активация по работе с контактами code.msdn.microsoft.com/Handling-Contact-Actions-359380e2
Appointments code.msdn.microsoft.com/Appointments-API-sample-2b55c76e
Новые и обновлённые элементы управления
XAML разработчика в Windows 8.1 Preview доступны следующие новые элементы управления и улучшения:
- Новые элемент управления Hub
- Новые элементы управления Flyout, MenuFlayout и SettingsFlayout
- Новые элементы управления AppBar и CommandBar
- Новые элементы управления выбора даты (DatePicker) и времени (TimePicker)
- Элемент управления Hyperlink позволяет удобно добавлять ссылки в текст
- Улучшено взаимодействие DirectX и SwapChainPanel
- Улучшена производительность элементов управления GridView и ListView
- Новый элемент управления для поиска внутри приложения
- Существенно переработанный элемент управления WebView
Новый элемент управления Hub позволяет разработчику быстро и просто создавать приложения вида Bing News, Bing Sport и т.д., где в один хаб собирается информация разного типа. В средства разработки Visual Studio 2013 Preview добавлен новый тип проекта — Hub App.
Подробнее: msdn.microsoft.com/en-us/library/windows/apps/bg182878.aspx#Hub
Пример кода: code.msdn.microsoft.com/XAML-Hub-control-sample-5d116fa9
Всплывающие элементы управления — одни из самых востребованных элементов управления, после элементов управления выбора даты и времени. Теперь реализовывать всплывающие окна, меню и настройки стало существенно проще.
Примеры кода:
Flyout & MenuFlyout code.msdn.microsoft.com/XAML-Flyout-and-MenuFlyout-78629692
SettingsFlyout code.msdn.microsoft.com/App-settings-sample-1f762f49
Элементы управления AppBar и CommandBar позволяют разработку удобно работать создавать и управлять Application Bar своего приложения.
Пример кода: code.msdn.microsoft.com/XAML-AppBar-control-sample-2aa1cbb4
Самые «запрашиваемые» элементы управления DatePicker и TimePicker.
Пример кода: code.msdn.microsoft.com/XAML-DatePicker-and-94ef5709
Существенно доработанный элемент управления WebView не только стал доступен HTML/JS разработчикам(!), но и позволяет теперь реализовывать новые сценарии, включаю удобную локальную загрузку HTML и более тесную визуальную и программную интеграцию с остальным XAML приложением.
Пример кода: code.msdn.microsoft.com/XAML-WebView-control-sample-58ad63f7
Поиск в Windows 8.1 Preview стал с одной стороны более глобальным, с другой стороны более локальным — в него вернулся привычный функционал поиска, позволяющий быстро запустить необходимую программу, привычным для предыдущих версий Windows образом. Поиск внутри приложения по прежнему доступен через глобальный поиск, но для большей доступности его внутри приложения был предложен новый элемент управления для поиска внутри приложения. При этом, для подключения к нему уже существующего кода необходимо выполнить минимальные действия.
Подробнее: msdn.microsoft.com/en-us/library/windows/apps/bg182890.aspx#three
Пример кода: code.msdn.microsoft.com/SearchBox-control-sample-0f64f94d
12 сентября, в Москве, в Digital October мы проводим конференцию Windows Camp, где можно узнать самые последние новости разработки для Windows 8.1 с использованием Visual Studio 2013. Участие бесплатное, регистрация уже открыта.
Доклады по XAML/C# разработке с конференции Build 2013
What's New in XAML
Доклад о том, что нового для XAML разработчика в Windows 8.1. Нововведений в XAML гораздо больше, чем в обзоре выше. Рекомендую посмотреть всем разрабатывающим на XAML для Windows Store.
What's New in Visual Studio & Blend for XAML Developers
В Visual Studio 2013 Preview и Blend появилось множество новых возможностей для XAML разработчика. Эта сессия позволяет с ними познакомиться, чтобы потом максимально их использовать при разработке.
Creating Your First App Using XAML
Если вы ещё не разрабатывали Windows Store приложений на XAML, то на этой сессии вы сможете познакомиться с основами разработки таких приложений.
XAML Performance Fundamentals
Хорошее приложение — быстрое приложение. Эта сессия знакомит с основными знаниями и техниками, которые необходимы для планирования и оптимизации производительности XAML приложений.
Visual Studio 2013 Diagnostics Tools for XAML-Based Windows Store Apps
На этой сессии вы сможете продолжить изучать инструментарий Visual Studio 2013 для диагностики и оптимизации XAML приложений.