Session_2.pptx
- Количество слайдов: 38
Windows 8 для C# разработчиков SERGIY. BAYDACHNYY@MICROSOFT. COM
Модуль 1: Введение
Зачем? • 400 миллионов Windows 7 PCs за 18 месяцев 3
Windows разработчик сегодня • С++ разработчик • • . NET разработчик • • • 4 Драйвера Direct. X MFC Управляемые языки программирования (С#) XAML: Windows Presentation Foundation, Silverlight Стандартные библиотеки и общие подходы при создании всех типов приложений
Другие технологии • • 5 Java. Script – язык объектно-ориентированного программирования HTML 5 – анимация, работа в отключенном режиме, трансформация, CSS 3, хранилища данных и др.
Типы устройств • По способу взаимодействия: • • • По функциональным возможностям: • • 6 Стационарные компьютеры и лэптопы Устройства, реагирующие на прикосновения и жесты – устройства, поддерживающие натуральный интерфейс Высокопроизводительные устройства для любых целей Устройства, ориентированные на определенную нишу
Как заработать деньги уже сегодня? • 7 Думаем вместе
Что же такое Windows 8? • • • 8 Быстрый, отзывчивый интерфейс с ориентацией на контент Преимущества работы с помощью прикосновений и жестов Поддержка широкого набора устройств, включая устройства на базе ARM процессоров Доступ к громадному количеству приложений Знакомые технологии
Поддерживаемые типы приложений • Старые Desktop приложения • Новые приложения в Metro стиле • Основной тип приложений для Windows 8 9
Что такое метро стиль 1. 2. 3. 4. 5. 6. 7. 8. Дизайн Быстрый и подвижный Масштабируемый Поддержка контрактов с системой Живые Tiles Connected & alive Roam to the cloud Следуйте метро принципам
Content before Chrome
Purposeful animations • • • Well-designed animations give life to the Metro style and create a crafted experience that feels polished Animations used purposefully make it clear to users where to focus (on the content) Create a sense of continuity and help build users’ confidence in the UI Use the Animation Library to get pre-designed, scenariobased animation Use built-in controls to get the animations for free! Animations it not about visual adornment, they need to be purposeful. Do not add animations for the sake of adding animations
Design for Touch First • Design with hands and fingers in mind • • • Hit targets should be sized and spaced for touch, your finger is not a pointer Design with comfort, ergonomics and occlusion in mind Actions should be reversible so users can safely explore. Provide instant visual feedback on touch down Use the platform’s controls to get the default styling, sizing and behaviors • Ex: Default button: Feedback on Tap down, Drag off to cancel, Tap up to commit See BUILD talk APP-391 T: Designing Metro Style apps that are touch-optimized
Design for Touch First • Use direct manipulation • • Let things always directly follow your fingers Avoid interpretive gestures (Ex: N-finger does X) Follow the Touch language: Tap, Pinch, Rotate, Slide to drag, Swipe to select, Press & Hold (learning) Rely on Windows’ standard controls that are optimized for both touch & mouse/keyboard. Do not create separate touch and mouse interface Follow the touch language consistently to give users confidence • • • Pan in 1 axis only • This allows for selection and provide a more stable rail for your content See BUILD talk APP-391 T: Designing Metro Style apps that are touch-optimized
Windows 8 Touch Language Tap for primary action 16 Slide to drag Pinch to zoom Rotate to rotate Swipe from Press and hold Swipe to select edge for to learn app and system
Design for Multiple Views • • People do more than 1 thing at a time An application can be displayed in one of 4 layouts • • • Fullscreen – Only one app visible, spanning edge to edge Snapped – 320 px wide x full height of the screen. Filled – Filling the portion of the screen not occupied by the snapped app Portrait – Optional Use media query/events to style and layout view state
Scaling • • • PCs will have a wide range of screen sizes and resolution Use fluid layout (e. g. -ms-grid control, List. View control) Use the VS simulator to see how your app will look on different machines Watch BUILD talk APP-207 T/847 T Reach your customers’ devices with one beautiful HTML 5/XAML user interface
Windows 8 contracts • • • 1+1=3. Leverage other apps to complete scenarios Start with the VS Item Template (available for Search, Share, File Picker extension) Rely on the Charms for a consistent invocation model that users can always confidently rely on. http: //msdn. microsoft. com/en-us/library/windows/apps/hh 464906(v=VS. 85). aspx
Tile • • Tiles are the “front door” to your app. Treat it as an extension of your app. Use Live tiles to draw users to your app with dynamic, relevant, personalized content • • You can opt in to cycle through last 5 updates: • • Provide fresh content to help users feel connected to your content, and give them reasons to place your tile in a prominent position on Start, and to launch your app time and again Use badges to show simple numeric or glyph information Live updates should be accessible from the home screen of your app Good example – A news app wants to send five stories per day or one story and supplementary images per day Good example with tags – A stock app sends three notifications per hour, each tagged with a specific stock (msft, amzn, nflx) Bad example – A shopping app sends a new notification per day for daily deals (last 4 days’ will still cycle but be outdated) 2 sizes: Small is required, large is optional. Both can be live. Watch BUILD talk APP-396 T
Secondary Tile • Use Secondary tiles to let users promote interesting content from within your app on their Start screen • • • Let users pin to interesting, frequently updated sub-sections of content in your app • • They can also be live They provide a way for users to “deep link” into sub sections of your app Albums in a photo app People in a social app News source from a feed app, etc Provide Pin/Unpin command in the app bar when content in focus is pinnable. Use runtime call to invoke system UI for pinning flyout.
Notifications • Not needed by most apps • • Toast notifications deliver transient messages outside the context of the app • • Live tile is the place where users will want to see fresh content at their leisure Show toast only when your app is in the background Use it for real-time, personal content such as IM, Call, or Mail Allows quick navigation to a contextually relevant location in your app Use this only for information that must be interruptive • • • Users have control over app’s notification capability, so only raise notifications if they are truly time sensitive and relevant Coalesce notifications if there are multiple updates occuring within a short period of time Do not use notification to raise error or warnings. Errors should be shown inline, or with flyouts or message dialogs instead.
Notifications
Roam • • Leverage roaming to maintain state and preferences across machines Roam preferences that users are likely to set on each device anyway: • • • Let users continue a task across devices by roaming any app data that enables users to pick up a task right where they left off on a different device: • • • Favorite sports team (sports app) Favorite movie genre (media app) Composing a to-do list Composing email Roaming is best for user preferences, links, and small data files http: //msdn. microsoft. com/en-us/library/windows/apps/hh 465094(v=VS. 85). aspx
Metro style design principles FRAMEWORK FOR DECISION MAKING § § Pride in craftsmanship § Sweat the details § Make it safe and reliable § Balance, symmetry, hierarchy § Align to the grid Do more with less § Be great at something § Focused and direct § Content before chrome § Inspire confidence § § Be fast and fluid § Life is mobile § Delight with motion § Design for touch § Intuitive interaction § Be responsive and ready § Immersive and compelling Authentically digital § Cloud connected § Dynamic and alive § Beautiful use of typography § Bold and vibrant colors § Motion § Win as one § Fit into the UI model § Reduce redundancy § Work together to complete scenarios § Tools and templates are designed to scale
Поддерживаемые типы приложений • Старые Desktop приложения • Новые приложения в Metro стиле • Основной тип приложений для Windows 8 • Работают на основе нового нативного API – Windows Runtime (Win. RT) • Могу быть созданы с помощью одной из технологий: • С#/XAML • C++/XAML/Direct. X • Java. Script/HTML 5 27
Вот оно какое… Metro style Apps View Model Controller System Services Kernel 28 HTML / CSS XAML C# VB C++ Java. Script Win. RT APIs Communication & Data Desktop Apps Graphics & Media Application Model HTML Java. Scri pt C C++ C# VB Internet Explorer Win 32 . NE T & SL Devices & Printing Windows Kernel Services
Что же такое Windows Runtime • • • 29 Новая ступень эволюции, соединяющая опыт, накопленный в. NET Framework и новую версию нативного программного интерфейса для создания приложений на платформе Windows Объектно-ориентированный программный интерфейс Поддерживает механизмы создания интерфейсов, взаимодействие с возможностями устройства, работу с медиа и др.
Инструменты разработчика • • 30 Visual Studio Express for Windows 8 Visual Studio 11
Вернемся к деньгам • 31 Единственный способ установки Metro приложений для пользователя – загрузить приложение из Marketplace (Windows Store)
Вопросы? SERGIY. BAYDACHNYY@MICROSOFT. COM HTTP: //BAYDACHNYY. COM @SBAIDACHNI
Модуль 2: Первое приложение
Первое приложение…. • 34 нужно писать код
Вопросы? SERGIY. BAYDACHNYY@MICROSOFT. COM HTTP: //BAYDACHNYY. COM @SBAIDACHNI
Модуль 3: XAML
37
Вопросы? SERGIY. BAYDACHNYY@MICROSOFT. COM HTTP: //BAYDACHNYY. COM @SBAIDACHNI
Session_2.pptx