/ / Inteligentný klient Winform vs MVVM + hranol [uzavretý] - wpf, winforms, klient, hranol, smartclient

Inteligentný klient Winform vs MVVM + Prism [zatvorené] - wpf, winforms, klient, hranol, smartclient

Je Windows formulár Simart Client je teraz starou vecou? A má byť nahradený hranolom (a / alebo MVVM)? Mal by som sa obťažovať o inteligentnom klientovi?

Ďalšou otázkou, ktorá by mohla súvisieť, jeaké sú rozdiely vo výkone medzi Winforms a WPF okrem všetkých skvelých vecí vo wpf, ako je viazanie údajov a 3D? Bojuje WPF o spustenie v operačných systémoch Windows 2000 a Pre2000? Táto otázka je dôležitá, pretože sa môže veľmi rozhodnúť, na ktorej platforme budete používať winformy alebo WPF, keď musíte podporovať staré operačné systémy (napríklad v NHS)?

odpovede:

6 pre odpoveď č. 1

Po spolupráci s obidvoma softvérmi Smart ClientFactory a WPF + MVVM, určite by som považoval SCSF za „dedičstvo“. Nechcel by som ho použiť na nový projekt. Po prvé, je to založené na WinForms, ale možno ešte dôležitejšie je, že je to nafúknutý rámec. Je to ťažkopádne a nehodí sa na testovanie jednotiek. Zistil som, že po vývoji aplikácie s ním po lepšiu časť 5 rokov sa rámec príliš často „dostal do cesty“.

Nemôžem hovoriť s hranolom, ale po mojej skúsenostis SCSF by som sa vyhýbala akýmkoľvek out-of-the-box rámcov. Keď som začal pracovať s WPF a MVVM, napísal som svoje vlastné „kostrové“ bity. Naozaj, jediné, čo som zistil, že som potreboval, bol dobrý kontajner IoC (StructureMap bol môj výber) a EventAggregator (dve rozhrania a implementácia jednej triedy, ktorú som napísal sám, požičiaval si priamo z príspevku na blogu Jeremyho Millera). že idem s priamym WPF a vývojovým modelom MVVM.

Vzhľadom na aplikáciu na zelenej lúke by som si vybral WPF, MVVM a STructureMap.


1 pre odpoveď č. 2

Myslím, že na vašu prvú otázku do značnej miery príde WPF verzus winformy, na ktoré sme už odpovedali.

Pokiaľ však ide o vašu druhú otázku týkajúcu sa WPF na Win2000 a starších verziách, WPF je súčasťou .NET 3.0 a potrebujete minimálne XP SP2 alebo Win2003 Server pre .NET 3.0, ako je vidieť tu, takže ak chcete používať .NET v prostredí pred XP, musíte sa držať WinForms.