Здравствуйте, Sinclair, Вы писали:
C>>Поверь в силу Flash'а!
S>Ок, без проблем. Я вообще подозреваю, что лично мой скепсис относительно Flash напрямую связан с банальным отсутствием под рукой вменяемых Flash-девелоперов.
И там и там есть недостатки. Главный недостаток Flash — все-таки закрытый формат. Хочется надеяться, что под давлением SL они его откроют. Но даже если это и случится, то все равно, генерировать SWF — задача нетривиальная. То есть все равно придется пользоваться Адобовскими продуктами — нет свободы выбора. Не говоря уж о том, что ActionScript представляет собой пре-компилированный байт-код. XAML же легко генерируется программно.
Первый недостаток SL — морально устаревшая модель данных по сравнению с Flash. Если сконвертировать векторную графику из SWF в SL, получим "плохо сшитую сцену":
http://antigrain.com/demo/flash_rasterizer.png — правильно сшитая сцена.
http://antigrain.com/demo/flash_rasterizer2.png — примерно так будет в SL.
Второй — трафик буквально в десятки раз больше, чем у Flash. Это неизбежная плата за открытость, но зачем они уперлись в этот жирный XML? По идее XML — всего-лишь некий "носитель". В условиях, когда модель даных хорошо определена, носителем может являться какой-нибудь компактный бинарный формат, однозначно транслируемый в XML и обратно. Это было бы все равно толще, чем Flash, но хотя-бы вдвое, а не в десятки раз.
Кстати, я оказался не прав по поводу скорости.
http://www.rsdn.ru/forum/message/2461263.1.aspxАвтор: McSeem2
Дата: 25.04.07
Сам рендерер в SL весьма быстрый, но все губит что-то другое, то ли скрипты, то ли еще что. Но губит конкретно, тормоза нереальные.
http://silverlight.net/samples/1.0/Silverlight-Pad/default.html — если взять голый XAML из примеров, и минимально его обернуть, то все будет рисоваться шустро. Для пилотного WPF/E нужен был такой минимальный .htm, для SL — не знаю что писать.
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>"WPF/E" CTP (February 2007) - Tile Text</title>
<script type="text/javascript" src="aghost.js"></script>
</head>
<body style="overflow: hidden; margin: 0px;">
<div id="wpfeControl1Host" >
<script type="text/javascript">
new agHost("wpfeControl1Host", // hostElementID (HTML element to put WPF/E
"wpfeControl1", // ID of the WPF/E ActiveX control we create
"800", // Width
"600", // Height
"white", // Background color
null, // SourceElement (name of script tag containing xaml)
"animation2.xaml", // Source file
"true", // IsWindowless
"30", // MaxFrameRate
"ErrorHandler" // OnError handler
);
</script>
</div>
</body>
</html>