Интернет, компьютеры, софт и прочий Hi-Tech | |||||||||||||||
Избранные докиМетки (все метки)internet, it, интернет, интернет сеть, информационные технологии, ит, по, программное обеспечение, сайт, софт
Подписаться через RSS2Email.ru
Дополнительнооптимизация, сайт, мониторы, движок, Битрикс, хостинг, сайты, мобильные, электроника, видеокарта |
Показать HTML | Показать BBCode Silverlight: «Лунный свет» вместо «вспышек»?Тимур Расулов. (aka Dolphin, 12.06.2008)Появившийся несколько лет назад Macromedia Flash принес на скучные статичные веб-страницы с редкими проблесками анимированных гифов яркие, крутящиеся, сверкающие и меняющие форму пятна. Настала эра интерактивной веб-анимации,которая добавила веб-сайтам интерактивности и динамичности, придала красочность за счет векторной графики, звука, анимации и видео. Технология Flash быстро набрала популярность, в пору ее расцвета было модно делать сайты целиком в виде флеш-ролика, в котором задвигались и выдвигались окошечки, мерцали ссылочки. В особо продвинутых «аквариумах» за курсором таскался скат по прозвищу Бойан. Ресурсы, контент которых не допускал такой несерьезности, располагали на сайтах «интру» - ролик, грузившийся перед главной страницей, который грузился минуту и потом 15-20 секунд расписывал прелести, ждущие пользователя на сайте. Повальное увлечение новой фенечкой потихоньку прошло, но флеш не сошел со сцены, благо технология оказалась достаточно универсальной, чтобы прочно закрепиться на важных позициях: мультфильмы (кто не видел Маську?), сложные рекламные вставки (баннеры и кнопки), динамичные флеш-игры, флеш-контейнеры для видео — вот далеко не полный перечень применения Flash. Довольно долго интерактивная веб-анимация ассоциировалась исключительно с Flash. Но должны были рано или поздно появиться альтернативные технологии. Довольно неожиданно такой продукт произвела небезызвестная корпорация Microsoft. Ее детище с красивым названием Silverlight (серебряный или лунный свет) сразу же начало позиционироваться как “убийца Flash”. С тех времен прошло уже почти два года и пока панихиды по swf не видно... Так что же это за чудо – Silverlight? Собственно Silverlight – технология представления данных (в том числе графики, звука и видео) в Интернете, основанная на XAML (eXtensible Application Markup Language). WPF (Windows Presentation Foundation) - интерфейс пользователя, основанный на XML и векторной графике. Реализована эта технология в ОС Windows Vista (в более старых ОС требуется установка пакета .NET Framework 3.0). По заявлениям разработчиков, технология призвана упростить сотрудничество между дизайнером и программистом, представив обоим некий абстрактный интерфейс. WPF по возможности использует ускорение DirectX, хотя сам Silverlight такой способностью пока не обзавелся. Истина познается в сравнении, потому особенности реализации Silverlight будут рассматриваться в сравнении с аналогичными технологиями Flash (условно будем считать их конкурентами). Платформа и ее реализация на стороне сервера и клиентаБраузеры не включают (и вряд ли будут) в свой комплект никаких плееров ни для Flash, ни для Silverlight, ни для любой подобной технологии по нескольким причинам, в основном потому, что плееры и браузеры разрабатываются разными фирмами. Поэтому связывание технологий осуществляется с помощью так наываемых плагинов (plug-in), модулей, загружаемых отдельно, после установки браузера. Также технология может требовать каких-то дополнительных файлов или модулей на сервере.Silverlight. На данный момент плагин для веб-браузера имеет версию 2.0 beta 1. Разработчиком заявлена кроссбраузерность и кросплатформеность, на деле же поддерживается Firefox и Internet Explorer на платформе Windows и Safari и Internet Explorer в Mac OS X. Планируется поддержка Windows Mobile и Symbian. Поддержка *nix будет реализована усилиями проекта Moonlight (Moonlight – реализация Silverlight для Linux, часть проекта Mono. Mono разрабатывается сообществом OpenSource при поддержке корпорации Novell и представляет собой аналог библиотеки .NET для выполнения на платформе *nix.). На сервере для использования технологии установка дополнительных пакетов не требуется (исключение составляет поддержка потокового видео). Выход этого релиза, как и первой версии, прошел практически незаметно, актвность пока наблюдается в основном в зоне разработки Microsoft и блогах разработчиков. Размер инсталляционного пакета 2.0 – 4,4мб, версия 1.0 – 1,4мб. Flash. Последния стабильная версия плеера – 9.0.124, следующая версия (9.4b) уже доступна для тестирования. Разработчиком поддерживаются актуальные операционные системы (Windows, Linux, Mac OS 9/X и Solaris) и браузеры (Internet Explorer, Firefox/Mozilla, Safari, Opera). Имеются лицензированные реализации для PocketPC, Palm OS, и Symbian. Само по себе это не значит, что Flash явно лучше Moonlight или что-то в этом роде – не будем забывать разницу в возрасте. На сервере для использования технологии установка дополнительных пакетов не требуется (исключение такое же - поддержка потокового видео). По заявлению Adobe, Flash Player имеется более чем на 99% подключенных к Интернету компьютеров. Я бы этому верить не стал (они в основном судят по американскому рынку, да и приврать охота, но процентах в 90 можно не сомневаться). Размер инсталляционного пакета 9.0 - ~1,5 мб. Технологии Flash уже больше десятка лет, а Silverlight практически в начальной стадии разработки. Этим можно объяснить его нераспространенность. Отсутствие поддержки Linux тоже вполне объяснимо конкурентной борьбой, хотя и вызывает нарекания и вполне может вызвать очередную тяжбу с антимонопольным комитетом (хоть MS и спохватилась и поделилась с проектом Mono некоторыми спецификациями и исходниками). Требования к системе, в общем-то, аналогичны. Формат файлаАнимационный/динамический ролик должен где-то храниться и как-то попадать к пользователю.Silverlight. Собственного формата файла у технологии нет. Данные внедряются прямо в разметку HTML (тег <canvas>) в виде XAML или динамически загружаются из других файлов (JavaScript, изображения, XML-данные). Формат проприетарный. Существующий аналогичный открытый формат векторной графики SVG (Scalable Vector Graphics, активно продвигаемый сейчас сообществом OpenSource) Microsoft не использует, аргументируя это необходимостью интеграции с проприетарной технологией .net, которая у SVG отсутствует. Flash. Основной формат файла – swf. Это бинарный скомпилированный файл, содержащий в себе все данные, необходимые для воспроизведения ролика. Прямое редактирование невозможно (хотя существуют более-менее функциональные декомпиляторы). Также довольно распространен формат flv (Flash Video). Формат проприетарный. У обоих конструкций есть и минусы и плюсы. Некомпилируемый формат Silverlight удобен в плане редактирования, но также весьма облегчает использование чужих ресурсов. Несомненный плюс Silverlight – общее пространство ролика и веб-страницы, возможность передавать данные в другие элементы страницы и использовать ролик как фон. С Flash это весьма затруднительно, так как ролики рисуются поверх страницы и перекрывают собой любые элементы HTML, а код в них выполняется совершенно обособленно. Проприетарность форматов большинству пользователей в принципе неважно – оба плеера распространяются бесплатно. Общие возможности технологииНаиглавнейший вопрос – а что это чудо умеет? На сегоднящний день от динамического объекта требуется векторная анимация, возможность программирования логики и в, меньшей мере, способности к обработке потоковых данных вроде видео.Silverlight. Поддерживается двумерная векторная графика и операции с растровой графикой, в том числе анимация, не зависящая от фреймов. Имеется возможность воспроизведения видеопотока и звука. Имеется мощная поддержка программирования – JavaScript (динамическое выполнение) в версиии 1.0 и технологии программирования .NET (C#, Python, Basic .NET, Jscript .NET) в версии 2.0 (компиляция в байткод). Воспроизведение видео и аудио пока ограничено собственными форматами Microsoft – WMA и WMV, также поддерживается распространенный формат MP3. Flash. Поддерживатся векторная фреймовая анимация, воспроизведение звуковых и видеороликов. В версии 10 предполагатся поддержка трехмерной анимации с аппаратным ускорением. Программирование возможно при помощи собственного языка ActionScript. Доступные видео- и аудиоформаты интересней, нежели у конкурента, среди них весьма важные и распространенные MP3, MP4 и 3GP. Анимация во Flash завязана на ключевых кадрах, что не во всех случаях удобно, хотя и вполне юзабельно. Silverlight же позволяет указывать для каждого объекта эффект анимации, связанный со временем, скажем, “сдвинуться вправо на 300 пикселей за 5 секунд” (нечто в стиле MS PowerPoint). Это удобно, в то же время поддержка морфинга (в редакторе) практически отсутствует, превратить квадрат в круг весьма затруднительно. ActionScript создавался специально для Flash и выполняется в надежной “песочнице”. Silverlight задуман как универсальный инструмент (уже сейчас его можно использовать для создания виджетов Vista) и использует подмножество классов .net. Именно модель программирования весьма интересна, поскольку открывает широкие возможности программирования на стороне клиента в отличие от flash-роликов, ограниченных рамкой тега <object>. Редакторы и инструментыТехнология – это хорошо. Пользователя волнует, чем можно созданные ролики (постоянно называю их “роликами”, хотя Silverlight верней назвать “интерактивная часть страницы”) просмотреть, а вот разработчика гораздо сильней беспокоит, как бы их создать. Итак, редакторы.Silverlight. На текущий момент можно говорить о двух редакторах несколько разного плана – семействе Microsoft Expression, предназначенном для создания и редактирования графики WPF (в том числе Silverlight) в режиме WYSIWYG (как говорится, “мышкой”) и Microsoft Visual Studio, ориентированном на написание кода программы. Оба редактора работают только на платформе Windows (для Expression предпочтительна Vista). Linux-аналог редактора пока в стадии разработки, как и сам Moonlight, но результаты ожидаются к концу этого года. Сторонних инструментов пока не наблюдается. Flash. Для создания “флэшек” в основном используется один-единственный редактор, который незатейливо назван Flash и доступен на платформе Windows и Mac. В нем и рисуется графика, и пишется код прогрммы. Помимо фирменного редактора, можно назвать несколько декомпиляторов (которые в принципе не приветствуются производителем), разнообразные конвертеры, довольно распространенный класс инструментов для записи содержимого экрана и его изменений в виде виде ролика (весьма популярно при создании разнообразных учебников. У Silverlight данные хранятся в текстовом XAML, поэтому при желании можно обходиться любым простым текстовым редактором (a-la пресловутый “блокнот”) либо комбинировать визуальную генерацию кода и доводку его вручную (как поступают суровые, но ленивые Web-дизайнеры), что дает очень неплохие результаты. Правда, при очень сложной анимационной последовательности код станет слишком запутанным для правки “ручками”, но, как мне кажется, Silverlight не совсем подходит для создания “Масяня: Перезагрузка” (рисования мультиков), он гораздо интересней со стороны возможностей по программированию. Совсем же простые динамические вставочки, которые сейчас делаются болезненным и медлительным JavaScript, можно с нуля набирать, как HTML, благо разметка проще некуда. В этом плюс Silverlight по сравнении с Flash, поскольку визуальные редакторы даже в урезанном виде достаточно недешевы. С другой стороны, на данный момент редактор Flash мощней конкурента – у него было много времени на развитие, да и его “хозяйка” Adobe все-таки неплохо (и кто бы сомневался!) разбирается в графических редакторах. Каким же будет исход дуэли (так как она только начинается)? Попробую спрогнозировать, хотя главный фактор — время весьма непредсказуем.... Вряд ли Silverlight в ближайшее время изживет конкурента (хотя конкурентами дуэлянтов называть пока нельзя), скорее, они будут просто сосуществовать. Идея Microsoft полезна и благородна, остается только надеяться, что недостатки реализации (весьма возможные) ее не погубят... Мне кажется, что через год-два появится порядночно количество web-узлов, реализующих динамику вроде калькуляторов, фотоальбомов, всяческих крутилок/вертелок и особо извращенных форм ввода с помощью Silverlight, а вот мультики и игрушки все же останутся уделом Flash, хотя кто знает, какого поворота событий можно ждать? P.S. Автор выражает благодарность за помощь в подготовке статьи Андрею Скляревскому (aka Snoralip http://dev.uz/they/45/) и Виталию Фиоктистову (aka Vitus http://dev.uz/they/287/). Последнее редактирование: 2009-12-24 12:42:05 Метки материала: Silverlight, Flash, WPF, JavaScript, XML, swf, .NET, Dolphin, Vitus 7 комментариев
Работаю на Silverlight. Очень удобные визуальные редакторы Microsoft Expression Web и Microsoft Expression blend 2, которые можно скачать с официального сайта. Согласен с автором: "сложные" динамические сайты будут разрабатывать с помощью технологии Silverlight, а просто красивые - на флеше.
|
||||||||||||||
| 09.10.2008 18:44:28 | # |
| 25.12.2008 07:15:14 | # |
| 02.02.2009 01:23:15 | # |
| 02.02.2009 03:17:58 | # |
| 08.05.2009 15:02:40 | # |
| 08.05.2009 16:18:39 | # |
Microsoft released a restrictive public covenant not to sue anyone for infringing patent claims that makes use of Moonlight implementations obtained by Novell or subsidiaries, which covers only the use of Moonlight as a plugin in a browser, only implementations that are not GPL3 licensed, and only if Moonlight has been obtained though Novell.
© 2007-2012, Дмитрий Скоробогатов.
Разрешается воспроизводить, распространять и/или изменять материалы сайта
в соответствии с условиями GNU Free Documentation License,
версии 1.2 или любой более поздней версии, опубликованной FSF,
если только иное не указано в самих материалах.