Pull to refresh

Silverlight 2 For Mobile (обзор семинара с PDC 2008)

Reading time4 min
Views504
На PDC 2008 помимо огромного количества разнообразных материалов, был также представлен Silverlight 2 в разрезе разработки для Windows Mobile. Докладчики были полны оптимизма и радостно рассказывали, как же здорово и просто разрабатывать для мобильных дивайсов — вообще нет разницы, подо что вести разработку, мол, одинаково работает.

Вступление


Используя стандартные контролы, сделать качественный современный пользовательский интерфейс очень непросто. Зная о том, что Silverlight — это конкурент Flash-а, но от MS, мне было очень интересно узнать, как продвигаются дела на фронтах :) Adobe Flash Lite я совсем недавно смотрел — жутко не понравилось.

Я посмотрел вот этот 70-ти минутный видео-ролик. Врать не буду, совсем тупую болтовню проматывал, но тем не менее, внимательно смотрел и слушал, там где было что смотреть и слушать :)

Итак, что же нам показали… Для начала — небольшой прикол для затравки:

Visual Studio
Это что, Visual Studio for Devices?!

App
Ого, скомпилировали и запустили Hello, World

Короче говоря, соль шутки была в том, что господа наскриншотили студию в разрешении 400х240 и наанимировали это в Silverlight, после чего весело запустили на дивайсе (кстати, тот самый Samsung i900 Omnia, известный у нас как WiTu).

Перспективы разработки для мобильных устройств


После небольшого вступления о важности разработки для мобильных устройств, докладчик (Giorgio Sardo) начал опрашивать зал:

— поднимите руку те, у кого есть мобильник (все)
— поднимите руку те, у кого мобильник на Windows Mobile (почти все)
— у кого два мобильника (опять почти все)
— у кого четыре? ( Только он сам поднял :) )
— Отлично! Ах да, ещё вопрос — а у кого есть iPhone? Ага, спасибо! Вон там дверь, спасибо, что пришли! (гогот в зале)

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

Прогноз 2010
Машина времени от Майкрософта — прогнозы на 2010 год :)

Короче говоря, всех ждёт светлое будущее разработки на C# под огромное количество дивайсов на Windows Mobile… и Symbian S60! Ну ваще, прям, красота, не может быть! Ведь Nokia со своим симбианом держит порядка 75% рынка смартфонов, было бы очень неплохо попасть на эту платформу со своим софтом!

Демки


Потом начались занимательные демки. Для начала Giorgio за минуту или около того наколбасил плавающую справа налево по градиенту векторную утку. Красота!

Векторная утка

Слот-машина с Гейтсом (ну, блин, не могут не стебаться):
Гейтсослот-машина

Performance (Тормоза)


А потом в презентации началось то, что я с самого начала подозревал и заранее был уверен, что увижу это, хотя и очень не хотел. Это были тормоза. Да-да, они самые, то, что больше всего ненавидишь на супер-мощных много-мегагерцовых дивайсах.

Была показана демка игрушки, в которой тормоза были ощутимы. Но почему-то про них никто ничего не говорил, как-будто так и должно всё работать! Отвратительно :( Нет, тормозило не везде, но полноэкранная анимация в менюшках никуда не годилась, лучше бы её вообще не было, чем так.

В следующей демке было показано, что gestures (экранные росчерки) работают на халяву, знай только обрабатывай. Демка, на удивление, не очень тормозила (т.к. анимация в ней была не полноэкранная, анимировались небольшие эллипсы).

Прыгающие эллипсы

Следующее демо умело показывать фото-альбомы, список изображений для которого брался из веба. Помимо самой демки показали немного XAML-а и C# кода с использованием Linq.

Способы запуска приложений


Один общий момент у всех демок — они запускались внутри IE. Блин, надеюсь, что когда до релиза дойдёт, всё-таки можно будет делать standalone приложения. ну что за фигня — запускать на дивайсе софт внутри браузера. ИМХО совсем уж ни в какие ворота :)

Вопросы из зала


Было ещё немного демок, а потом наступило время вопросов и ответов. Первым делом из зала прозвучал вопрос о том, почему векторная графика не была сглаженной (на видео-то и не поймёшь, что сглаживания нет!). Ответ был предсказуемым — ну, э, ваще это всё сырая бета, работать и работать ещё. Мы аппаратную акселерацию ещё в полный рост поюзаем и т.д. Но мы работаем, уже через 2 недели будут существенные улучшения! (Фигасе, у мужика заявленьица!) А про сглаживание — не в курсе, буду уточнять, подойдите позже.

Совсем недавно я писал про сложности с прозрачностями на WM. И из зала прозвучал как раз этот больной вопрос — в Compact Framework нет поддержки альфа-канала в PNG, а как с этим в Silverlight2 for mobile? Ответ был такой — у кнопок прозрачность точно работает, а как там с PNG — приходите к нам на выставку, поболтаем. Обидно, но ответ на вопрос остался за кадром.

Также прозвучал ещё один интересный вопрос — можно ли будет достучаться из Sliverlight приложения до Compact Framework библиотек? Ответ — нет, всё в рамках Silverlight set of APIs. «We don't want malicious things to start happening like PInvoke on a web-site» :)

Ну и напоследок отличный вопросец — Silverlight использует compact framework. Отлично, если он уже установлен. А если нет, что, сначала ставить CF, потом Silverlight и только потом софт?! (реально, как представлю — аж страшно становится :))
Ответили, что Sliverlight будет паковаться CF 3.5 и сразу его и накатит, если не найдёт.

Заключение


В итоге осталось двойственное ощущение — с одной стороны всё достаточно круто, но тормоза и работа через браузер как-то расстроили… это как Adobe Flash Lite — анимация ощутимо тормозит, «программы» открываются в флеш-плеере — ну никуда не годится такое «программирование» ИМХО :)
Tags:
Hubs:
Total votes 7: ↑6 and ↓1+5
Comments4

Articles