Подтвердить что ты не робот

Зачем менять WPF на Silverlight 4?

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

Итак, почему я должен переместить мое приложение WPF в Silverlight 4 - учитывая, что я все еще хочу использовать настольное приложение?

4b9b3361

Ответ 1

Имейте в виду, что Silverlight 4 в настоящее время находится в бета-версии без доступности клиентского времени для конечного пользователя. Silverlight 4 отправлен в апреле 2010 года. Если вы уже разрабатываете приложение в WPF для рабочего стола, то это, вероятно, правильное решение. Тем не менее, было бы разумно удержать ваше ухо на земле и следить за тем, что происходит в Silverlight, если вы в конечном итоге захотите перенести приложение в веб-пространство или разработать другое приложение в веб-пространстве.

Silverlight 4 выводит Silverlight на совершенно новый уровень. Зайдите в запись в блоге Тима Хейера для множества новых функций. Кроме того, посмотрите, можете ли вы найти видео из приложения facebook из основного материала, когда были анонсированы функции Silverlight 4. Это приложение выделяет тонну новых функций, ориентированных на рабочий стол.

Ответ 2

Выбор WPF или Silverlight или что-то еще на том основании, что это модно, кажется мне просто глупым, если вы не пытаетесь произвести впечатление на девушку или остроконечного шефа.

Цель написания программного обеспечения - зарабатывать деньги. Вот почему Microsoft делает это, поэтому я делаю это и, по-видимому, почему вы это делаете. Несмотря на то, что люди, которые делают это, потому что им нравится это делать или в стремлении к высоким идеалам, эти люди не являются эффективными рыночными силами и не имеют реального мнения.

Большая часть денег находится в бизнес-приложениях (LOB), и все инструменты построены с целью их продажи людям, пытающимся создать приложения LOB, потому что это основная часть бюджета инструментов разработчиков dev.

Silverlight до версии 3 по существу конкурировал с Flash, что означает, что это было бесполезно ни для чего, кроме блеска на веб-сайтах: засвидетельствовать все образцы сайтов, связанных с страницей Microsoft Silverlight.

Microsoft большой толчок в SL4 - поддержка разработки LOB; инструменты RIA. Но почему? Потому что, в то время как вы можете делать LOB-разработку с помощью HTML, CSS, AJAX, Flash и веб-сервисов, это немного напоминает высказывание, что вы можете построить хороший автомобиль из набора Meccano, если вы готовы использовать много болота. Silverlight делает то же самое, но эффективно и согласованно, с единой средой разработки. И он блестящий.

Это потрясающее улучшение по сравнению с разрушенным набором инструментов для работы с HTML, CSS, AJAX, Flash и веб-сервисами, и если вы продаете эту интегрированную студию разработки, это просто чудесно.

Silverlight означает простое развертывание. Что делать, если у них нет Silverlight? Они будут, даже если Microsoft будет скрывать его в следующем пакете обновления. Легкое развертывание отлично, если вы ИТ-отдел, и отлично, если вы продаете услуги бюро. Это также здорово, если вы развиваетесь, потому что вам не нужно гадать, как разрабатывать или тестировать установочные комплекты.

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

Может показаться интересным отметить, что мое приложение выполняет ряд вещей (прямое содержимое TCP), не поддерживаемых Silverlight, и это совсем не проблема; сервер делает их от имени клиента, и это красиво уклоняется от всех экологических опасностей, связанных с развертыванием в диком виде, поскольку мы можем контролировать среду сервера.

Я думаю, что кросс-платформенная поддержка - это более мягкая, потому что Silverlight на платформах, отличных от Windows, значительно отстает, а также коммерческие рабочие места, отличные от Windows, немногочисленны. Предприятия не используют Linux на рабочих станциях. Macintosh - это не платформа, это религия: нет смысла даже разговаривать с ними.

Все, что сказано, pre-VS2010 не имеет дизайнера Silverlight. Ручное кодирование бесконечного XAML - колоссальная боль в заднице. SL4/RIA в VS2010 замечателен, но Joe Public еще не имеет его и не может использовать его для развертывания, если он это сделал, потому что нет никакой лицензии на запуск или конечный пользователь.

Это оставляет WPF как единственный практический вариант. Тем не менее [барабанный ролл] будет доступна финальная бета-версия с лицензией Go-Live и временем выполнения. Real Soon Now, вероятно, конец февраля. Престижность ScottGu и команде.

Ответ 3

Я думаю, что ваше понимание WPF и Silverlight немного не хватает. Silverlight - это набор функций и функций, которые можно найти в WPF. В Silverlight есть несколько функций, которые зависят от Silverlight. Silverlight на рабочем столе - это просто ответ Microsoft Adobe AIR. Таким образом, с учетом сказанного, реализуйте свое приложение с помощью WPF, если это ваш выбор. Не позволяйте "гудеть" принимать решения о вашем приложении, что должны делать бизнес и доступные навыки в вашей организации.

Ответ 4

Пара основных причин для рассмотрения SL4 над WPF

  • Меньший размер рамки. Конечно SL4, вероятно, будет намного больше, чем SL3, но в настоящее время структура Silverlight составляет около 1/10 размера самой маленькой версии .NET 3.5.
  • Поддержка кросс-платформы - Silverlight работает на Mac и Linux (теоретически). Это может не быть большой проблемой для вас, но это важно в некоторых сценариях.
  • Значительная интеграция с HTML. Silverlight может жить внутри веб-страницы и с версией 4 html может жить внутри Silverlight. Еще раз, это может не относиться к вам, но если вам нужно взаимодействовать с существующими веб-приложениями, Silverlight определенно подходит для вас. Это также упростит переход на Интернет, вам нужно.
  • Очевидно, что Microsoft вкладывает свою энергию. Я бы не удивился, если WPF в значительной степени мертв в воде, как Winforms и LINQ to SQL.

Ответ 5

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

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

Ответ 6

Я вижу только два преимущества для выбора Silverlight.

  • Вам действительно нужна перекрестная платформа, выберите Silverlight.
  • Вам нужно внедрить что-то с HTML в браузер, выбрать Silverlight

Иначе, если вам нужно бизнес-приложение, работающее с веб-службами, почему бы не использовать WPF с кликом один раз или какой-либо другой способ обновления программного обеспечения?

Установка фреймворка не должна быть большой проблемой, когда она установлена ​​только один раз, не такая большая и уже интегрирована в более новые версии Windows.

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

И я не думаю, что WPF умрет? У WPF были все, что было недавно в Silverlight 1,2,3 и 4 в течение длительного времени, и все еще есть больше. Как я вижу, Silverlight является и всегда будет более легкой версией WPF для веб-браузеров.

Ответ 7

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

Таким образом, для будущей разработки проекта это может вызвать спрос на SL4 поверх WPF, особенно если есть мнение, что разработка Silverlight дешевле, чем WPF, если кривая обучения меньше для технологии подмножества (хотя я не согласен с этим чувством).

Конечно, что касается вашего текущего приложения, то переключение на SL4 было бы не более чем ставкой на то, чтобы быть ранним усыновителем, если нет конкретной функции, которая вам нужна, которая находится в SL4, а не в WPF.

Мне нравится сила WPF, но приходят SL5. Думаю, мы все будем на этой побеждающей стороне, что к 2012 году?

Ответ 8

Я хотел бы добавить мнение о различиях в производительности.

По моему опыту, графический движок SL намного быстрее. Мне не удалось создать элемент управления, похожий на новую ось Silverlight, где тысячи элементов перемещаются плавно в WPF, хотя с SL я получаю то же самое, что и я, с самой осью поворота.

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

Это интересно, потому что можно предположить, что WPF будет быстрее.