з'яўляецца WPF выбарам для вокнаў прыкладанняў?

Я developping ў IronPython з Visual Studio 2010 праз PTVS.

Я бачу, што wpf з'яўляецца даволі павольным у параўнанні з SilverLight эквівалента ... па крайняй меры, для мяне. Мая праграма робіць шмат вылічэнняў, але карыстацкі інтэрфейс вельмі просты. Я прачытаў шмат wpf супраць Silverlight пытанняў і гэты </а > таксама. Я чуў пра Silverlight па-за браўзэра рэжыме ... Я не ведаю, што думаць пра гэта.

Я крыху <�моцны> зблытаць , мне трэба маё дадатак, каб быць хуткім, мне не трэба шмат рэчаў, якія тычацца карыстацкага інтэрфейсу. Гэта акно прыкладанне толькі, гэта толькі прызначана для запуску на кампутары карыстача.

so, is

wpf actually the best choice in this case?

дзякуй

10
@dario_ramos: У тэорыі. На практыцы я сумняваюся, што гэта калі-небудзь здарыцца.
дададзена аўтар Ray, крыніца
На жаль, пытаючыся, што гэта «лепшы» занадта суб'ектыўныя для SO. Вы можаце перафразаваць ваш пытанне, каб быць больш аб'ектыўнымі? напрыклад «Якія перавагі wpf мае больш класічны Windows Forms?»
дададзена аўтар Paul Turner, крыніца
Калі карыстацкі інтэрфейс вельмі просты, вы можаце аддзяліць яго ад BUSSINESS логікі (выкарыстоўваючы шаблон MVP, да прыкладу) і маюць больш чым адзін выгляд (WPF, Silverlight). Ваш GUI інструментар становіцца параметрам канфігурацыі (дадатак становіцца «скіны»), і вы можаце паспрабаваць іх і параўнаць іх з лёгкасцю
дададзена аўтар dario_ramos, крыніца
@Ray: Так як ён мае просты графічны інтэрфейс (г.зн. мала), я думаў, што ён мог дазволіць сабе час, каб рэалізаваць больш за адзін від
дададзена аўтар dario_ramos, крыніца

6 адказы

Шчыра кажучы, у адрозненне ад усіх іншых каментароў. Я выкарыстоўваю wpf нават для простых прыкладанняў. На самай справе гэта сапраўды дапамагае пазбегнуць шмат неабходнага кода на іншыя структуры карыстацкага інтэрфейсу. Мне падабаецца той факт, што з дапамогай wpf я магу непасрэдна думаць аб дадзеным я збіраюся змяніць, без напісання многіх апрацоўшчыкаў падзей для дадання элементаў у калекцыю, паказваючы іх у спіс і г.д. Акрамя таго, wpf не абавязаная выкарыстаць MVVM, проста выкарыстоўваць клас, які спалучае ў сабе як мадэль прадстаўлення і мадэль. Пасля выкарыстання wpf шмат, я не магу сабе ўявіць, каб зноў выкарыстоўваць Windows Forms.

Але, вядома, гэта толькі маё асабістае меркаванне. У рэшце рэшт, заўсёды выкарыстоўвайце інструмент найбольш падыходзіць для вашай праблемы пад рукой. Калі вы не ведаеце, WPF, і вы хочаце выкарыстоўваць яго толькі для невялікіх прыкладанняў, я хацеў бы прапанаваць вокны формы ці нешта іншае.

16
дададзена
+1: Ключавым момантам з'яўляецца прадукцыйнасць працы таксама збіраецца з тым, што вы добра ведаеце. Я да гэтага часу пішу няцотны Win фармуе прыкладанне, але аддаю перавагу wpf цяпер, калі я правёў шмат часу з WPF/Silverlight і Expression Blend. MVVM звязвання настолькі просты ў працы.
дададзена аўтар Gone Coding, крыніца
Гэта тое, што я <�я> спрабую </я>, каб сказаць, але ты сказаў, што гэта нашмат лепш.
дададзена аўтар cwharris, крыніца

На мой суб'ектыўны погляд, няма. Найлепшым варыянтам было б WinForms. Я лічу, гэта хутчэй у развіцці і ў вас ёсць дадатковая дакументацыя і падтрымка ў Інтэрнэце. wpf больш карыстацкі інтэрфейс на аснове і выкарыстоўвае натуральна парадыгму MVVM. Для простага прыкладання гэта проста занадта шмат наваротаў.

2
дададзена

Калі ваш карыстацкі інтэрфейс вельмі просты і дадатак на аснове браўзэра будзе цалкам прыдатным ісці на Silverlight, Паколькі Silverlight выкарыстоўвае ўсечаную версію .Net ён збіраецца працаваць хутчэй. Аднак я нядаўна пішу дадатак з даволі складаным UI з выкарыстаннем даволі цяжкіх сетак/treeviews з вялікай колькасцю дадзеных і рэалізацыі карыстацкага паводзін, я ніколі асабіста не заўважыў, прыкладанне працуе павольна ці лічыцца wpf быць павольным.

У параўнанні гэта павольней, чым Silverlight, але калі ваш карыстацкі інтэрфейс досыць просты, наколькі павольней ён будзе на самой справе?

Акрамя таго, паколькі Silverlight выкарыстоўвае зрэзаную версію .Net ёсць якая-небудзь функцыя, якія могуць спатрэбіцца за кулісамі, што SilverLight аленевай скуры падтрымкі?

Я не згодны з @Daniel Casserly аб WPF/MVVM занадта разадзьмутым для простага прыкладання, MVVM добра аддзяляе свой інтэрфейс ад логікі ззаду яго і дазволіць для пашырэння гэтага прыкладання, калі neccecary. Я аддаю перавагу спосаб wpf з прывязкі дадзеных, а таксама распрацоўкі карыстацкага інтэрфейсу ў XAML над метадзе Winforms, хоць гэта можа быць проста асабістыя перавагі.

Калі вы ніколі не выкарыстоўвалі wpf перш, чым гэта не занадта складана, каб навучыцца зрабіць асноўны карыстацкі інтэрфейс

1
дададзена

Калі ваш карыстацкі інтэрфейс вельмі просты, то я б сказаў, WinForms, верагодна, будзе прасцей. wpf з'яўляецца вельмі магутным, але з сілай прыходзіць складанасць і крывой навучання.

Хуткасць не павiнна быць праблемай, хоць, улічваючы просты інтэрфейс.

1
дададзена

WPF з'яўляецца «» выбар для Windows, прыкладання, калі ў вас ёсць дызайнер і распрацоўшчык, як ведаць wpf добра, і можа кадзіраваць да абстракцый, ня вешая адзін на аднаго пры распрацоўцы іх палову прыкладання.

У адваротным выпадку, вы абодва будуць вельмі злуецца адзін з адным, развіццё будзе павольным, і вы будзеце здзіўляцца, чаму вы не проста выкарыстоўваць старыя добрыя WinForms, каб пачаць з.

Хутчэй за ўсё, калі ў вас ёсць дызайнер, які мае вялікае бачанне UI і і шмат вопыту досціп WPF, вы не збіраецеся эксплуатаваць тое, што wpf можа прапанаваць.

Edit:

Проста зразумеў, што ты сказаў, што карыстацкі інтэрфейс вельмі просты. Прапусціць wpf на дадзены момант, выкарыстоўваць WinForms, і зрабіць яго Model View Presenter стыль. Такім чынам, калі вам трэба абнавіць для wpf пазней, гэта не будзе велізарным выпрабаваннем. (MVP выдатна падыходзіць для чытальнасці кода і тэставання ў любым выпадку).

1
дададзена
а таксама WinForms дызайнер інтэрфейсу не даступны ў візуальнай студыі з IronPython, я думаю, я павінен ісці з WPF. (Я developper і дызайнер)
дададзена аўтар prince, крыніца

проста сказаць, з сумесь і ўсё аснасткі вы атрымаеце ваш карыстацкі інтэрфейс зрабілі вельмі хутка. Вывучэнне WinForms, па меншай меры, не для будучыні, XAML ўсюды. wpf займае адносна шмат рэсурсаў і нагрузкі павольна, але з простым асінхронным праграмаваннем яго больш чым дастаткова прадукцыйны. Sl з браўзэра гэта яшчэ адзін варыянт, для больш lightweightability.

0
дададзена