470 likes | 634 Views
Вымирают ли клиентские приложения? Браузер против клиента!. Роман Здебский Руководитель группы экспертов Microsoft Россия http://blogs.msdn.com/roman. Не холивор !. Задачи доклада. Разобрать ситуацию с технической точки зрения Упростить принятие архитектурных решений
E N D
Вымирают ли клиентские приложения? Браузер против клиента! Роман Здебский Руководитель группы экспертов Microsoft Россия http://blogs.msdn.com/roman
Задачи доклада • Разобрать ситуацию с технической точки зрения • Упростить принятие архитектурных решений • Упростить общение с заказчиками • Разрушить основу для холивора • Дать возможность эффективно заниматься делом
О чем этот доклад • Анализ проблемы и её источников • Развитие технологий – ретроспектива • Обзор современных технологий • HTML/Браузер • RIA • Толстые клиента • Устройства • Архитектурный разбор спектра • Что меняет HTML 5
Технологический выбор 10 лет назад Богатствоклиентской библиотеки Windows приложение Win32/WinForms Web приложение DHTML
Технологии Windows клиента • DirectX => Managed DirectX • Произвольная визуализация • Win 32 Native => WinForms • Ориентация на элементы управления OS
Черно-белый спектр % приложений Windows приложения Win32/WinForms Web приложения DHTML Время
Архитектура • Web приложение = правильная многоуровневая архитектура Windows приложение Web приложение UI – WinForms UI с перемешанной бизнес логикой и доступом к данным UI – ASP.NET UI с перемешанной бизнес логикой и доступом к данным Бизнес-логика Бизнес-логика Доступ к данным Доступ к данным СУБД СУБД
Эффективность работы UserExperience = Дизайн Источник: http://www-mit.w3.org/2007/Talks/webinar-de/mobilecrazy.png
Новый мир • Растет мощность компьютеров • Растет мобильность пользователей • Возникают новые типы устройств • «Пользоваться компьютером должно быть не сложнее, чем холодильником» • Все больше веб-сервисов
Новые технологии • Интерактивные интерфейсы • Планшеты • Surface • Touch • Развитие графического аппаратного обеспечения PC Gaming market worldwide in billions of $US dollars.(Source: Jon Peddie Research PC Game Market report)November 18, 2008
Черно-белый спектр % приложений Windows приложения Win32/WinForms Web приложения DHTML Время
Полный спектр Богатствоклиентской библиотеки % приложений Расширения Office Windows приложения Win32/WinForms Устройства RIA HTML 5 AJAX Web приложения DHTML Время
Важный факт • Интернет != браузер • Современныеприложения вне зависимости от типа используют веб-сервисы Телефон Планшет Браузер Толстый клиент Веб-сервер
Что происходит на самом деле Разворачивание и обновление Устройство (клиент) Сервер (сервис) HTML AJAX HTTP Веб-сервер Браузер RIA Устройства PC SMB, copy, reinstall Windows Native (*.exe) Файл-сервер
стройная архитектура + современная платформа = доступность всего спектра
Архитектурный подход Browser Любая визуализация из спектрачерез WEB! ASP.NETDynamic Data ADO.NET Data Service Entities– Бизнес логика Entity Framework - Доступ к данным СУБД
Технологии разработки на основе HTML / AJAX • Асинхронная работа на стороне браузера • Поддерживают все основные браузеры • Серверная платформа - ASP.NETWebForms или ASP.NET MVC • Удобная модель разработки • Возможности визуализации ограниченны стандартами W3C. • Кроссплатформенность и кроссбраузерность
Интерактивные интернет приложения – RIA • Использование веб-модели распространения и обновления • Но мощи и визуализации клиента • Может работать в offline и запускаться вне браузера
Что происходит на самом деле Разворачивание и обновление Устройство (клиент) Сервер (сервис) HTML AJAX HTTP Веб-сервер Браузер Контейнер (*.xap) Браузер + HTTP Веб-сервер RIA Устройства PC SMB, copy, reinstall Windows Native (*.exe) Файл-сервер
Архитектура демонстрации Silverlightв Browser ASP.NETDynamic Data ADO.NET Data Service Entities– Бизнес логика Entity Framework - Доступ к данным СУБД
Медиа-сценарии Векторы Растр Видео 3D Текст Максимальные возможности визуализации • Windows Presentation Foundation • Полное абстрагирование визуализации от поведенческой модели • Декларативная визуализация с инструментированием (вовлечение дизайнера) • Векторная отрисовка с аппаратным ускорением через DirectX • Бесшовная интеграция с DirectX • WinFormsinerop • Интеграция с XNA (будущее) • Работа через Browser IE и FireFox Гибкая визуализация Аппаратное ускорение Различные форм-факторы
Архитектура демонстрации WPF-приложение ASP.NETDynamic Data ADO.NET Data Service Entities– Бизнес логика Entity Framework - Доступ к данным СУБД
Установка и обновление • В корпоративной среде • Active Directory Software Distribution Policies • System Center Configuration Manager • В web и корпоративной среде • ClickOnce • На машинах без .NET Framework 3.0 – Windows XP • Client Profile
Демонстрация ClickOnce
Что происходит на самом деле Разворачивание и обновление Устройство (клиент) Сервер (сервис) HTML AJAX HTTP Веб-сервер Браузер Контейнер (*.xap) Браузер + HTTP Веб-сервер RIA Устройства Вебили файл сервер .NET executable Click Once, HTTP PC SMB, copy, reinstall Windows Native (*.exe) Файл-сервер
Microsoft Office как готовый компонент для ваших приложений • Расширение функционала приложений Microsoft Office • Использование очень богатого готового функционала • Знакомая среда - снижение затрат на обучение пользователей • Широкое распространение офисных приложений как готовой платформы для ваших приложений • Существенное упрощение разработки с каждой версией Visual Studio
Архитектура демонстрации -приложение ASP.NETDynamic Data ADO.NET Data Service Entities– Бизнес логика Entity Framework - Доступ к данным СУБД
Устройства – максимальное использование возможностей железа • Интерфейс адаптированные под размер экрана • Запуск локально • Скорость и интерактивность • Взаимодействие с облачными сервисами • Silverlight for Windows Phone
Что происходит на самом деле Разворачивание и обновление Устройство (клиент) Сервер (сервис) HTML AJAX HTTP Веб-сервер Браузер Контейнер (*.xap) Браузер + HTTP Веб-сервер RIA Контейнер (*.xap) Marketplace, HTTP Веб-сервер Устройства Вебили файл сервер .NET executable Click Once, HTTP PC SMB, copy, reinstall Windows Native (*.exe) Файл-сервер
Полный спектр Богатствоклиентской библиотеки % приложений Расширения Office Windows приложения Win32/WinForms Устройства RIA XAML HTML 5 AJAX Web приложения DHTML Время
Роль HTML 5 • Увеличение пространства стандартизованной визуализации • Полная поддержка со стороны технологий Microsoft • Должен быть стабильным и соблюдаемым стандартом
Платформы и технологии Богатство клиентского runtime Windows Browser HTML 5 OBA WPF XNA WPFBrowser apps Silver-light offline Silver-light AJAX + DHTML HTML Windows PC Browser Windows Phone/Communicator MAC OS, LINUX XBOX/ Zune Mobile Phone
Выводы • Вопрос «Клиент или браузер»больше так не ставится, это слишком ограниченно • Технология реализации пользовательского интерфейса – оптимальный выбор для каждого сценария • Правильная архитектура и инструменты = залог доступности всех платформ
Что будет с традиционными клиентскими приложения и операционными системами, которые мы сейчас знаем? • Развитие программного обеспечения, максимально использующего возможности современных устройств
Холиворам – нет! • Нам нужен браузер для легких приложений • Нам нужны RIA для более мощных приложений с моделью распространения через web • Нам нужны мобильные клиенты для устройств (смартфоны/планшеты) • Нам нужны Windows/Office клиенты для максимальной продуктивности при создании контента • HTML5 – растет зона стандартизации, но и растет зона инноваций