Приложение Silverlight вне браузера по сравнению с традиционным настольным приложением - PullRequest
8 голосов
/ 11 марта 2010

Если я правильно понимаю, Microsoft Silverlight - это легкая реализация .NET, предназначенная для запуска на стороне клиента внутри браузера. Так что теперь я слышу о приложениях Silverlight «вне браузера», и я в замешательстве.

В чем преимущество Silverlight-приложения "вне браузера" по сравнению с традиционным настольным приложением .NET?

Ответы [ 4 ]

5 голосов
/ 11 марта 2010

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

Цель OOB - предоставить пользователю возможность вынуть веб-приложение из контейнера браузера и упростить доступ к нему. Это все еще веб-приложение. Стоит помнить, что это работает на Mac, где, как традиционное приложение .NET для настольных компьютеров, не работает.

Эта область стала более грязной с SL4 OOB, которая теперь может попросить пользователя о повышенном доверии. Теперь песочница стала более расслабленной и появилась больше возможностей для работы с родной ОС. Однако все еще существует множество ограничений, в первую очередь для поддержки мультиплатформ. Было бы нежелательно, если бы стало де-факто, что доверенные OOB, как правило, работают только на Windows. Еще неизвестно, можно ли этого избежать.

Так что, если вы думаете о полноценном настольном приложении для Windows, то вам, вероятно, лучше использовать WPF. С другой стороны, если вам не нужен полный доступ к ОС, вы можете выполнить доставку через веб-страницу и / или хотите иметь возможность работать как на Windows, так и на Mac (и, возможно, на других платформах), тогда возможно Silverlight 4 OOB + Elevated Доверие может быть то, что вам нужно.

3 голосов
/ 11 марта 2010

Приложения Silverlight 3 вне браузера позволяют любому приложению Silverlight иметь ярлык на рабочем столе и не требуют открытия браузера для запуска приложения (так что технически вы теперь можете запускать приложение, даже если вы находитесь в автономном режиме) , поскольку вам не нужно загружать приложение SL через Интернет).

С SL 4 теперь вы можете иметь повышенные привилегии, позволяющие приложению SL получать доступ к локальным ресурсам (таким как сетевой стек и файловая система).

Существует также простой вызов API для SL-приложения вне браузера, чтобы проверить наличие обновлений при запуске и загрузить обновление с сервера. Это может показаться похожим на развертывание одним щелчком, но это происходит автоматически и быстро, поэтому оно более эффективно и просто, чем одноразовое нажатие.

По сравнению с традиционным приложением .NET (в данном случае давайте сравним с WPF, поскольку это фактически замена WinForms), в установке очень мало возможностей. Никакой программы установки, только файл xap, который легко размещается в Интернете и очень быстро устанавливается. SL использует сокращенную платформу .NET, что может показаться негативным. Тем не менее, типичный шаблон для приложения SL состоит в том, чтобы перевести большую часть тяжелой работы на уровень обслуживания. Затем на уровне сервиса вы получаете полную платформу .NET и можете делать практически все, что захотите (например, доступ к базам данных с помощью ADO.NET).

2 голосов
/ 12 марта 2010

Я ответил на аналогичный вопрос здесь с Silverlight vs WPF. Все это должно применяться, за исключением лучшей интеграции HTML.

0 голосов
/ 12 марта 2010

Библиотеки - это еще одна вещь, которую следует учитывать между двумя приложениями. Например, Silverlight 4 изначально имеет встроенную поддержку для общения с веб-камерой и микрофоном «из коробки», в то время как WPF и полная .net Framework имеют очень большое стороннее сообщество библиотек, для которых вам может потребоваться исходный код если вы хотите восстановить их в Silverlight.

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

...