Silverlight Vs.WPF Vs.Winforms Что хорошо для моей цели? - PullRequest
4 голосов
/ 22 марта 2010

Я собираюсь запустить новые приложения Windows, и претенденты на платформу:

  • Windows Forms
  • WPF
  • Silverlight

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

Мое приложение для массового распространения (в последней версии было более 100 000 установок).Поэтому я хочу быть абсолютно уверенным, что мои пользователи смогут использовать его и наслаждаться им без каких-либо проблем.

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

Мои потребности

  1. Хорошая поддержка визуальных и анимационных эффектов.
  2. Поддержка базы данныхвозможность подключения.
  3. Поддержка печати (есть ли эквивалент PrintDocument в Silverlight)
  4. Не должен страдать от проблем развертывания.

Silverlight универсален, но делает этоесть поддержка печати и хороший набор инструментов управления?В WPF есть поддержка печати и хороший набор инструментов, но могу ли я от этого зависеть?Winforms уже устарели и не так впечатляют, но стоит ли мне идти с ними в любом случае?

Ваш совет будет признателен

Ответы [ 4 ]

4 голосов
/ 22 марта 2010

Хорошая поддержка визуальных и анимационных эффектов.

Так что WinForms действительно работает, если вы не хотите делать что-то болезненным.

Поддержка базы данных

WinForms и WPF могут подключаться к этому напрямую, Silverlight требуется поддержка от внутреннего сервера (хотя это может быть SQL Server, который предоставляет данные в виде веб-службы).

Поддержка печати (есть ли эквивалент PrintDocument в Silverlight)

Silverlight 4 имеет хорошую поддержку печати, если вы нацеливаетесь на Silverlight, вы нацеливаетесь на SL4.

Не должен страдать от проблем развертывания.

Все технологии страдают от проблем развертывания.Суть проблемы и характера этих проблем.

Преимущество Silverlight заключается в том, что он не требует от клиента полной инфраструктуры .NET и работает на Mac.Вам потребуется развернуть через веб-сервер.

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

Во-первых, проблема с развертыванием не является вашей проблемой. Если покупатель говорит вам что-то сделать, вы предлагаете технологии, они проверяют, и это их обязанность. В настоящее время я занимаюсь программным обеспечением в банке, и мы ОЧЕНЬ ограничены, но это не моя проблема, как в: я знаю, что могу использовать, и могу спросить администраторов, прежде чем идти по неподдерживаемым путям.

Тем не менее, проверьте, прежде чем спрашивать, что вы хотите или МОЖЕТЕ поддержать.

В эти дни я бы пошел на WPF на .NET 4.0. Я на самом деле делаю для сложного торгового приложения. Вместе с веб-приложением для административной стороны (их довольно много, и я использую динамическую среду данных для упрощения добавления пользователей и т. Д. В код).

После этого я бы попробовал Silverlight. Особенно 4.0 - новый "локальный режим" отличный, устанавливайте его локально, даже с ярлыком в меню. Никакой реальной разницы для пользователя, и XAML в Silverlight 4 намного лучше, чем предыдущая версия.

Я бы попытался держаться подальше от Winforms - это гораздо менее гибко.

Но в конце вы должны сначала проверить требования. Например, здесь, где я сейчас работаю, .NET 4.0 - это «нет», а Silverlight в ЛЮБОЙ версии - тоже «нет», пока они не обновят стандартный образ системы.

1 голос
/ 22 марта 2010

Все сводится к тому, сколько у вас есть времени.

Если у вас мало времени, то лучше всего использовать то, что вы знаете (WinForms), но если у вас есть много времени для его разработки, может быть, стоит пойти на Wpf, так как анимация и визуальные эффекты намного лучше изначально чем WinForms.

  1. Анимации и визуальные эффекты проще / лучше в WPF
  2. Оба имеют поддержку базы данных связь (.NET поддерживает WPF и Winforms).
  3. Печать тоже не слишком сложна.
  4. WinForms могут быть нацелены на .NET 2.0, что означает более простое развертывание. Wpf должен быть нацелен на 3,5, то есть ваши пользователи должны использовать последнюю версию Кроме того, если вы разрабатываете для .NET 3.5 SP1, вы можете столкнуться с проблемами с пользователями, не использующими SP1. Это может вызвать проблемы с развертыванием и удобством использования.
0 голосов
/ 22 марта 2010
...