Должен ли я сделать сайт социальной сети исключительно Silverlight или использовать ASP.NET MVC? - PullRequest
2 голосов
/ 28 марта 2011

Я знаю, что Silverlight требует загрузки плагина, и некоторые предприятия не допускают его на своих компьютерах, и он не поддерживается на мобильных устройствах, iPad и т. Д. Допустим, для меня это не критично. Кроме того, что для меня было бы соображением не делать свой сайт социальной сети чисто Silverlight по сравнению с каким-то гибридом Silverlight \ ASP.NET MVC или просто чистым ASP.NET MVC? Кроме того, будет ли существенное снижение производительности из-за высокого пользовательского трафика для сайта, реализованного в чистом Silverlight по сравнению с ASP.NET MVC?

Я знаю, что на этом сайте много постов, сравнивающих Silverlight с ASP.NET MVC, но я не нашел ничего, что дало бы мне исчерпывающий ответ на этот вопрос.

Заранее большое спасибо.

Ответы [ 5 ]

7 голосов
/ 28 марта 2011

Хотя мне нравится Silverlight как технология, если вы работаете в социальной сети, я думаю, вам нужно стремиться к максимально широкой аудитории. Выбирая Silverlight, вы ограничиваете своих пользователей теми пользователями Windows и MacOS, у которых нет особых ограничений или иррациональной ненависти к Silverlight.

Так что используйте ASP.NET MVC.

Если, однако, вы делаете , выбираете Silverlight - теоретически чистое развертывание Silverlight должно быть быстрее, чем развертывание ASP.NET MVC:

  • Хотя у вас есть (достаточно большой) размер приложения silverlight, оно не должно меняться между выпусками и должно кэшироваться клиентом.
  • У вас есть преимущество в том, что данные, передаваемые между клиентом и веб-службой, с которыми он общается, являются необработанными данными, а не полной страницей (хотя это спорный вопрос, если вы в противном случае создавали бы сайт с большим количеством JavaScript и динамически передавали JSON). )
  • Silverlight заставляет вас использовать асинхронные вызовы, поэтому вы не попадете в ситуации блокировки пользовательского интерфейса, которые могут замедлить взаимодействие.

Однако те же правила все еще применяются в отношении минимизации количества вызовов веб-службы - если вы всегда вызываете кучу методов веб-службы вместе, рассмотрите возможность их объединения в один вызов.

Кроме того, если вы слишком увлекаетесь анимацией, на медленных машинах это может быть слишком длинным.

3 голосов
/ 28 марта 2011

Причины не использовать Silverlight: - Требуется плагин. - Только для ПК-устройств - Кривая обучения? - Смена парадигмы клиент-сервер (это ловит пару человек

Причины использовать Silverlight - Может легко сделать быстрый интерфейс - Может быть легко преобразовано в настольное приложение - Меньшая нагрузка на сервер для рендеринга (на самом деле незначительная)

Причины использовать MVC - Может использоваться всеми браузерами - Легко объединить разные впечатления клиента от одного и того же стека - Легче разрабатывать, чем Silverlight

2 голосов
/ 30 марта 2011

Следует учитывать, что Silverlight - это технология на стороне клиента.Поэтому вы, вероятно, реализовали бы все уровни данных и внешние интерфейсы как веб-сервисы.Конечно, это можно сделать, но это может быть сложнее и сложнее в реализации, чем технологии, интегрированные в MVC, такие как Linq2SQL или инфраструктура сущностей.

2 голосов
/ 28 марта 2011

Производительность снизилась при использовании Silverligt?Возможно, наоборот, в зависимости от того, как вы строите приложение.Современному веб-приложению действительно нужно взять дерьмо на сервере, чтобы сделать дело (ajax на ajax на ajax в ajax и т. Д.).

С другой стороны, Silverlight настолько мал, что вы не сможетесделать сайт социальной сети в нем, если это не в доме.Но этот вопрос и ответ не принадлежит @ SO.

1 голос
/ 28 марта 2011

Используйте оба! Создайте свой сайт и все его основные функции с помощью MVC, а затем используйте Silverlight для этого «небольшого лишнего». Со временем вы сможете собрать достаточно статистики о своих пользователях, и, если у вас высокий процент этих данных с установленным Silverlight, начните добавлять дополнительные функции Silverlight. Если ваши пользователи не устанавливают Silverlight, придерживайтесь JavaScript.

Кроме того, не разочаровывайтесь количеством людей, у которых нет Silverlight. Дайте им причину для установки, и дайте им хороший опыт установки. Люди будут делать это, если на вашем сайте есть то, что они хотят.

...