WPF WBA (XBAP) против Silverlight - PullRequest
17 голосов
/ 01 мая 2009

Я смотрю на создание системы / сайта, который включает веб-сайт. Я хотел бы воспользоваться преимуществами WPF, и WBA, кажется, является хорошим способом сделать это. Silverlight, с другой стороны, также хорош для достижения этой цели, с той разницей, что WBA предоставляет больше возможностей и возможностей, чем Silverlight.

Каковы преимущества / потери, связанные с использованием WBA по сравнению с Silverlight? WBA поддерживается только в IE?

Любое понимание было бы очень полезно.

Ответы [ 4 ]

30 голосов
/ 01 мая 2009

Я предполагаю, что вы имеете в виду XBAP (приложение браузера XAML) с WBA?

Silverlight и XBAP очень похожи друг на друга, но имеют некоторые существенные различия. Самым большим из них, скорее всего, является тот факт, что XBAP работают поверх полной платформы .Net, в то время как Silverlight использует урезанную версию CLR и библиотек классов. Это приводит к тому, что Silverlight не хватает некоторых функций WPF, доступных в XBAP.

Также стоит понимать, что XBAP технически являются приложениями ClickOnce и поэтому устанавливаются на компьютер пользователя. Это происходит автоматически, и пользователь не обязательно понимает это - но, по крайней мере, для меня, если бы я увидел загрузку XBAP со случайного веб-сайта, я бы, скорее всего, отменил его и перешел на другой сайт.

Для XBAP также требуется IE или Firefox и платформа .Net, для которой они созданы. Для Silverlight требуется только проигрыватель Silverlight, который доступен для IE, Firefox и Safari, работает в Windows и OSX и намного меньше, чем полный .Net framework с точки зрения размера загрузки.

При этом я предпочитаю XBAP, если знаю, что ограничения не являются проблемой. Если бы я разрабатывал приложение для использования в интрасети, я бы использовал XBAP, поскольку он обеспечивает более универсальную среду. Если бы приложение было развернуто в Интернете, я бы использовал Silverlight, чтобы охватить как можно больше пользователей.

11 голосов
/ 01 мая 2009

Я предполагаю, что под WBA вы подразумеваете XAML Browser Application (XBAP), которые являются приложениями WPF, работающими в веб-браузере.

Преимущества можно суммировать следующим образом:

XBAP

  • Приложения XBAP имеют полную CLR и целую .NET Framework 3.0 / 3.5, доступную для них, тогда как приложения Silverlight имеют только уменьшенную CLR Silverlight и свою собственную облегченную версию .NET Framework / WPF (хотя она строго не называется WPF.
  • Может работать в режиме полного доверия с небольшой настройкой. (См. это сообщение в блоге MSDN .) Разрешения Silverlight по очевидным причинам строго ограничены.

Silverlight

  • Может работать кроссплатформенно. (В Windows и Mac используется официальная реализация Microsoft, а в Linux - Moonlight. Поддержка Moonlight завершена для Silverlight 1.0, но реализована только частично для Silverlight 2.0.)
  • Может работать во всех основных браузерах. (IE 6/7/8, Firefox 3, Safari. Есть даже сообщения о некотором успехе с Google Chrome.) С другой стороны, XBAP могут работать только в IE (с использованием .NET 3.0) или IE и Firefox (.NET 3.5). .
2 голосов
/ 01 мая 2009

Да, WBA (XBAP) поддерживается только в IE и Firefox (с плагином ) и только в операционной системе Windows. Набор инструментов Silverlight в основном является подмножеством WPF, поэтому с WBA у вас будет доступ к большему количеству инструментов. Проверьте эту ссылку на нем.

0 голосов
/ 01 мая 2009

Silverlight является кросс-платформенным и кросс-браузерным. WPF WBA - только для Windows и только для IE.

...