2009-11-11 16 views
0

Итак, какой из них более новый, и почему я должен использовать один над другим. Или что еще более важно, над Windows Forms?В чем разница между Window Presentation Foundation и WCF? Что нового?

+1

WPF и WCF совершенно различны. WPF предназначен для богатого графического интерфейса. WCF предназначен для ориентированных на обслуживание приложений. WCF объединяет Webserives + удаляет + очереди сообщений + в один API. WPF - лучший выбор по формам Windows, хотя вам придется вкладывать в него время и усилия. WPF и WCF будут решать различные бизнес-задачи. – PRR

+2

Что нового: ракетные корабли или ваниль? Почему я должен использовать один или другой? –

+0

Ванильные бобы - это новые Майки, все это знают! * DOH * – Arcturus

ответ

12

Ни то, ни другое, они оба готовили примерно в тот же период времени.

ОДНАКО они совершенно разные вещи:

WPF == Presentation Foundation Windows, WCF == Foundation Windows Communication

WPF является прямой заменой для WinForms. WCF является основой для общения с web-сервисами, он заменяет Remoting. Я мог заверять в течение нескольких часов, но это короткий ответ для вас :)

+2

WPF намного эффективнее, чем WinForms, и более эффективен для работы. Сравните WinForms с необработанными вызовами GDI и WndProcs, и у вас будет некоторое представление о различии. Многие вещи, которые легко сделать в WinForms, еще проще в WPF, и многие вещи, которые практически невозможны в WinForms, легки в WPF. Если у вас есть выбор, WPF почти всегда лучше WinForms.Единственные исключения - если вы работаете на встроенных аппаратных средствах с очень ограниченной производительностью, аппаратных средствах более 10-12 лет или должны поддерживать Windows 2000 или Windows 9x. –

+0

@slugster Вы не можете сказать ** он заменяет Remoting **. Remoting все еще используется для связи [App domain] (http://en.wikipedia.org/wiki/Application_Domain). – Searock

2

С сайтов Microsoft:

Windows Communication Foundation является ...

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


Windows Presentation Foundation

Windows Presentation Foundation (WPF) предоставляет разработчикам унифицированную модель программирования для создания опытных пользователей смартфонов Windows, в которых используются пользовательский интерфейс, мультимедиа и документы.

0

WPF НЕ является заменой WinForms. Рассмотрим приложения LOB, работающие на массовом корпоративном оборудовании. Накладные расходы WPF нелепы.

Рассмотрите следующее На моей машине установлены VS2008 и VS2010.

Visual Studio 2008 (WinForms, я считаю), составляет всего ~ 100 мб памяти.

Visual Studio 2010 Beta 2 (WPF) составляет ~ 300 МБ.

Это просто глупо. Нет никакой причины, чтобы VS использовал WPF. Это не требует яркой графики или чего-то особенного, что предлагает WPF. Я за одного придерживаюсь VS2008. Есть время и место, когда WPF отлично подходит для использования, но Visual Studio, и, как я сказал, приложения LOB - это не время или место, это просто добавляет смешные накладные расходы по бессмысленным причинам.

Однако WPF намного проще работать, чем WinForms (как только вы поймете это, кривая обучения также намного больше)

+0

Эх, ты не думал, что так, да? WPF - это следующее поколение от WinForms, отсюда и мой комментарий о «замене». Что касается того, почему VS2010 выполняется в WPF ... Я предполагаю, что для создания рендеринга WPF/макета и т. Д. Это может быть целая группа, когда ваша среда IDE написана в WPF, чем когда бы среда IDE по-прежнему была преимущественно C++ и COM как VS2008. – slugster

+0

ЕГО НЕ ЗАМЕНА. У Microsoft нет намерений прекратить работу WinForms – y2k

+0

Дух, никто никогда не говорил, что WinForms будет заменен, я не знаю, как вам удалось это прочитать в том, что я сказал. Это, безусловно, замена, аналогично тому, как WinForms & .Net заменяет VB/MFC и т. Д., Вы все равно можете кодировать эти старые технологии, если хотите, но все меньше и меньше людей делают это. Если вам не нравится слово «замена», тогда подумайте «следующее поколение». – slugster