Archive for the ‘Silverlight’ Category

Вышел Silverlight 3 Beta

Thursday, March 19th, 2009

Потихоньку, между делом, вышел Silverlight 3 Beta. Список появившихся фич просто впечатляет. Краткий перечень.

  • Support for Higher Quality Video & Audio. New and enhanced media features in Silverlight 3 include:
    • Live and on-demand true HD (720p+) Smooth Streaming.
    • More format choice.
    • True HD playback in full-screen.
    • Extensible media format support.
    • Industry leading content protection.
  • Empowering Richer Experiences.  Additional features include:
    • Perspective 3D Graphics.
    • Pixel Shader effects.
    • Bitmap Caching.
    • New Bitmap API.
    • Themed application support.
    • Animation Effects. .
    • Enhanced control skinning.
    • Improved text rendering & font support.
  • Improving Rich Internet Application Productivity. New features include:
    • 60+ controls with source code
    • Deep Linking.
    • Search Engine Optimization (SEO).
    • Enhanced Data Support Silverlight 3 delivers:
      • Element to Element binding
      • Data Forms.
      • New features for data validation
      • Support for business objects.
    • Improved performance, through:
      • Application library caching.
      • Enhanced Deep Zoom.
      • Binary XML .
      • Local Connection .
  • Advanced Accessibility Features. .
    • Life outside the browser.
    • Desktop shortcuts and start menu support.
    • Safe and secure..
    • Smooth installation. .
    • Auto-update. .
    • Internet connectivity detection. .
  • Out of Browser Capabilities.

Также обновился Expression Blend 3:

New Features in Expression Blend 3: The designer-developer workflow took another major step forward today with major innovations in Expression Blend 3 including: SketchFlow, a rapid prototyping capability that makes it easy to communicate design intent to stakeholders; design time sample data that enables the design and testing of applications without access to live data; direct import of Adobe Photoshop and Illustrator files; behaviors, extensible and reusable components that add interactivity to applications without writing code; a full code editor supporting C#, VB and XAML; and many more features that support an improved design and development experience. Features include:

  • SketchFlow. SketchFlow introduces a new set of features designed to make it easier for you to experiment with dynamic user experiences and create compelling prototypes. SketchFlow also helps communicate design ideas to other stakeholders, and makes it easier to collect in-context annotated feedback. SketchFlow enables the navigation and composition of an application to be modeled in a very visual manner from a simple prototype that uses a series of sketches, to something much more evolved. A prototype can be made as real and interactive as it needs to be to communicate design intent and SketchFlow can leverage all the existing features of Expression Blend.
  • Adobe Photoshop and Illustrator import. The powerful importers for both Adobe Photoshop and Adobe Illustrator enable smooth integration with workflows the designer already has in place. The designer has freedom to view and import Photoshop files layer by layer. Layers can be easily regrouped and elements retain their original formats; layers, layer positions, editable text and vectors remain available for editing within Expression Blend.
  • Behaviors. Add interactivity to your application, without having to write code. Behaviors can encapsulate complex design interactions into reusable components which can be directly applied to a user interface element in the application. Developers have access to a rich API that they can use to write their own triggers, actions, and behaviors for use in their Silverlight and WPF projects.
  • Sample data. Design time sample data makes it easy to build data-connected applications without access to live data. You can generate sample data or import sample data from an XML file and is available to controls on the artboard at design-time. You can extensively customize your sample data details, and you can easily switch between using sample data and using live data at run-time.
  • Improved design and development experience. Expression Blend 3 includes many features that improve the overall design experience including a brand new design surface making Blend more accessible to visual designers. Team Foundation Server support allows easier integration of the Blend user into Team System. Improved animation and easing functions, 3D transforms, visual effects and an improved visual state manager enable a great tooling experience.

Я это все к чему, ребята из макрософт очень постарались и если они будут двигаться такими темпами то Flex потеряет свою популярность и мы останемся без штанов :). Придет армия дотнетчиков и захватит мир. И придется переквалифицироваться обратно во флешеров или учить Silverlight. Лично я не сильно хочу иметь дело с продуктами MS, но кто знает.



Наш ответ Чемберлену или проблемы сравнения конкурирующих платформ

Tuesday, December 9th, 2008

Сегодня в сети появилась статья “Еще одно сравнение Adobe Flash и Silverlight 2” , прочитав ее я понял главную ошибку авторов этих статей — каждый автор является специалистом только в одной области, или Flash|Flex или Silverlight. Поэтому страдают “конкурирующие платформы”. Как выход я вижу написание совместной статьи (но это дело долгих споров). Автор данной статья не избежал ошибок и показал всое поверхностное знание Flex/Flash технологии.

Я попытаюсь исправить его недочеты, для полноты картины )

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

Среда разработки и прочий инструментарий.

Для начала разберемся с инструментраем и возможностями:

FlashPlayer — это плагин который позволяет проигрывать swf файлы (байт код, который можно создавать где и как угодно, например умельцы рантайм генерят его и сразу же запускают в флешплеере).
Flash IDE/Flex Builder — это среда позволяющая создавать swf файлы.
Flex framework — это фреймворк позволяющий быстро и эффективно создавать RIA приложения. Flex Builder “заточен” для работы с Flex framework.

Использование Flash IDE как средство разработки крупных приложений, довольно опрометчивый шаг. Ее, в контекте разработы RIA лучше использовать как дополнительное средство.

Вообще не стоит говорить что вся разработка сводится к связку Flash IDE(графика)-Flex(код) — это просто частный случай варианта разработки.

а использовать только Flex сложно, поскольку ничего похожего на дизайн-вью в нем просто нет.

Ляп! пожалуйста, жмем на кнопку Design в MXML редакторе и видим дизайн вью. (единственно что он не работает в билдере под линукс). Может канечно этот дизайн вью и не такой навороченый как бленд, но он есть )

Язык программирования

ActionScript 3 являеться вариантом реализации ECMAScript-262, 4 версии http://en.wikipedia.org/wiki/ECMAScript , Я не буду искать подробности отличая от этого стандарта, они есть и это можно найти воспользовавшись гуглом ).

Язык не имеет …

Да язык часто ругают за его непродвинутость.

Язык не имеет встроенной событийной модели

но это вот ляп, событийная модель является главной фичей флешплеера 9 и выше.
— кстате автор нигде не учитывал возможности флешплеера 10 ) который уже вышел в релиз.

Отдельной строкой хочется сказать об отладчике.
Если во Flex Builder он еще куда ни шло, то во Flash им просто невозможно пользоваться – основным методом отладки до сих пор является trace.

При разработке крупных проектов боже вас упаси использовать и дебажить во Flash IDE! вы же не будете дебажить в Blend’e 😉

Поддержка ОС и браузеров:
А что есть нормальная(официальная) поддержка Linux? Как мне поница Moonlight дорос пока только до версии 1. вобщем то до релиза далеко.
К том же плеер более стабилен в различных системах. (мне порой приходится перегружать барузер или запускать ИЕ чтобы посмотреть приложение на Silverlight, Маководы жалуются что не всегда получается поставить плагин)

Возможность упаковки в исполняемый файл:

Стоит учитывать что есть продукты сторонних производителей которые позволяют делать испольняемые файлвы из флеш/флекс приложений, причем под разные платформы (например Zinс)

Изображения:
JPEG, GIF, PNG — флеш с этим работает на лету. Вектор, у флеша это в крови. Кроме того, что можно импортировать ai,пдф файлы автор забыли о поддержке SVG графики. Причем уже есть библиотреки позволяющие использовать ее рантайм. (Например degrafa http://www.degrafa.com/2007/07/27/how-complex-can-you-get-with-degrafa-very/).
Также можно реализовать поддержку практичеки любого формата графики (ByteArray+Bitmap+Drawing API).
Про скорость отрисовки я бы вообще ничего не говорил, как не крути у флешплеера она больше.
А проблемы подготовки графики это уже проблемы кривых рук.

Видео:
flv это хорошее сжатие, но и возможность лайфстриминга, перемотки и других фич
из коментариев:
+ есть поддержка HD video
Флешплеер это тоже поддерживает.
+ теоретически, поддержку flv можно реализовать самому, используя MediaStreamSource (тут есть примеры http://code.msdn.microsoft.com/ManagedMediaHelpers)
нужна практика а не теория, хотя такой возможностью флеш не может покак порадовать.
Как не крути пока приоритет на стороне флеша

Шрифты:

Имеет три встроенных шрифта, поддерживается импорт символов из шрифтов ТТF, ограниченно поддерживаются шрифты, установленные в системе.

просто глупость.
Мы можем влючить любой шрифт в наше приложение, и он будет работать везде.
3 шрифта, тоже глупость, Просто по умолчанию флекс компоненты используют заданые шрифты, и нечего более.

Формально, не импортированные шрифты поддерживаются. Однако, с текстом, напечатанным таким шрифтом, почти ничего нельзя делать: ни поворачивать, ни масштабировать, ни использовать в качестве маски.

Раньше (9 и ниже версии плеера) и вправду не позволяли таких операций как вращение, масштабирование (вытягивание по какой-то оси), в 10 плеере вы можете делать с любым шрифтом, что угодно и как угодно.

Сокеты:
незнаю что твориться в Silverlight, но в FlashPlayer к сожелению имеет некоторые ограничения 🙁

Работа с файлами:
Принципиальное преисущество было у Silverlight до выхода 10 версии флешплеера, теперь его нет ).

Хранение данных на клиенте:
хе хе пункту просто не зачет. никак не может влиять на оценку платформы.

Разметка:
Спорный вопрос. Я бы не ставил плюса ни одной из технологий.
Если говорить о скором будующем то будет революция 😉 Ключевое слово Flash Catalyst

«Программное» рисование:
Незнаю как обстоят дела в Silverlight, но во флеш им можно творить чудеса.

«Программная» анимация:

Flash/Flex: Основана на фрэймах.

Никто не мешает использовать верменные интервалы. т.е. больше возможностей ).
Я не спец в этой области и пусть те кто работают с FlashCS3|CS4 добавят свои коменты. ).

Собственные контролы:
Автор описал только один, довольно причудливый способ :).
Да. Визуально не всегда сразу можно посмотреть на внешний вид компонента.
Опять же для спора и нахождения истены в данном вопросе нужно сначало определиться с понятием “Собственный контрол”.

Кастомизация контролов
Я незнаю как работают стили в WPF, но

ни все равно почти начисто обходит css-образные стили Flex, которые по сути не многим более чем обычные словари, которые можно хранить в отдельных файлах. Стили во Flex не поддерживают байндинга, не позволяют задавать темплейты, не имеют строгой типизации, и уж тем более не позволяют хранить внутри себя анимацию, не умеют изменятся в зависимости от каких-либо условий.

Полный бред. Для начала ознакомтесь с возможностями стилировния, затем полистайте примеры на той же Деграфе. Стили во флексе ограничиваются только фантазией, как только она закончилась, так и закончились стили )

Связывание данных

Да, во Flex не создается как таковой объект биндинга

Он то создаеться, но вот доступа мы к нему не имеем. Также есть возможность создать биндинг в коде BindingUtils

А двусторонний биндинг, единственный пока что козырь Silverlight, во Flex добавят в Gumbo.

В Flex 2|3 это также легко реализуется, как в коде так и с использованием MXML 🙂

Реализация MVC
Flex Framework и есть реалиация MVC просто она скрыта от глаз программистов. Поэтому они не разобравшись пугаються и пытаюстся насочинять своих фреймворков ).
А насочиняли их уже много Cairngorm/PureMVC/Mate/Guasax/Model-Glue… и так далее.

Вроде пока все, что пришло на ум.

Поэтому я бы не спешил делать такие опрометчивые выводы, незная не платформы, и незная текущего состояния вещей.
В скором вермени (2009 год) Adobe ух как пошатнет преимущества разработки под сильверлайт, И я бы не стал говорить, что “с точки зрения удобства для разработчика “серебренный свет” уже вне досегаемости”.

Единственными весомым преимуществами Silverlight является:
– большее количество “тяжолых” разработчиков, которые прошли огонь и воду в програмирование под C# и т.д. В отличаии от разработчиков Flex которые в большей части работали во Флеш
– политика отношения Microsoft к разработчикам, ее тактика “Мы везде и никто кроме нас)”. Обучение, бонусы и т.д.

ЗЫ
Неосвещенным остался вопрос производительности, но это тема для отдельного большого исследования.
Как показывает практика FlashPlayer быстрее в графике, как не крути, нельзя сказать что намного, но все же приятно 🙂



Москва и FlexCamp

Tuesday, November 4th, 2008

Вчера вернулся из Москвы, куда ездил поработать, погулять и посетить FlexCamp (и даже сделать на нем небольшой доклад).

В Москве был первый раз и Москва мне не понравилась. Я привык к более размеренной жизни и меньшему количеству людей и машин. Мои ожидания она поравдала на все 100%, в отличаи от Львова, UAFPUG#6. Красная площадь оказалась не такая большая, по сравнению с площадью свободы в Харькове 😛

Зато FlexCamp удался!

Я наконец-то познакомился в живую с Костей Ковалёвым! Рад до безобразия.

В плане организации было все на высоте (проблемы с интернетом отнесем к проблема отчественного бизнеса, где никто ни о чем не думает, они были не по вине организаторов). Спасибо организаторам.

По докладам, все доклады были из разряда “обзорных”. Мне большинство были не сильно интересны — я или уже это знал, или активно использую.
Для незнающих или только начинающих доклады, по-моему мнению, были очень полезны.

Фотографий я не делал, но есть хорошие фото от mr.Destro .

На FlexCamp мой доклад был посвещен Eclipse Monkey (Monkey Script), который совпал с открытием русскоязычного проекта “monkey-for-flex” по использованию Eclipse Monkey.
Мой доклад тоже был больше общеобразовательный. Ниже его можно полистать

В разделе “Живой пример” я показал пример генерации коментариев для класса из шаблона, работу с диалоговыми окнами (вызов стандартного колор пикера) и генерацию хендлера для события. Эти скрипты будут выложены в проекте “monkey-for-flex”



Silverlight vs Flash: Video Codec Comparison*

Thursday, July 3rd, 2008

Статья о сравнении производительности видео кодеков от Silverlight и Flash.

В кратце, дела у Silverlight похуже чем у Flash, но сильных различий невидно.
При просмотре тестовых видео качество у Silverlight будет похуже — проскакивают непонятные квадратики.

Сложившаяся ситуация не может не радовать — конкуренция великая сила). В данный момент, по моему мнению, мы имеем двух противников адоб и майкрософт и этих противников совершенно разные политики достижения целей: адоб дает хорошие инструменты, майкрософт “скупает” разработчиков. Адобу творит чудеса в плане флешплеера (да и софта в целом), но ему нехватает мобильности и желания активно работать с флеш-сообшеством (покрайней мере отечественным). Майкрософт делает свои “обычные” порой тормознутые вещи, но ведет активную работу с сообществом программистов, привлекая и стимулируя(читай “подкупая” 🙂 ) их разными плюшками, конференциями, софтом. Причину почему этого не делает адоб я незнаю, то ли денег нехватает, то ли желания, то ли представители в странах СНГ не работаю как нужно (кстате может спросить об этому у Главы представительства Adobe Systems в России и СНГ, вроде как 2й год работает, должен знать ситуацию).

Вобщем берем попкор и смотрим за событиями дальше. Обещают, что будет интересно.

UPD: пример работы MS )

________________
*скопировано оригинальное название статьи )




]]> rss о RIA от 33 Коровы
Забадать RSS!
]]>
~~~~~~