2011-07-14 9 views
5

Czy powinienem uruchomić mój nowy program C# oparty na przeglądarce w Silverlight lub WPF? Będzie on oparty na przeglądarce, ale będzie używany tylko w naszej organizacji, mój program będzie musiał porozmawiać z plikami plikowymi Windows, jeśli to robi jakąkolwiek różnicę.Czy powinienem uruchomić mój nowy program C# oparty na przeglądarce w Silverlight lub WPF?

Zrobiłem do tej pory tylko aplikacje Windows Form i podstawowe aplikacje ASP.NET. Nie chcę przepisywać tego w najbliższej przyszłości, jeśli Silverlight zostanie upuszczony.

Co poleciłbyś dla łatwości uczenia się i przyszłej korekcji dla programisty formularzy systemu Windows.

Dzięki Steve

Odpowiedz

7

Nie ma czegoś takiego jak przyszły proofingu. Z pewnością nie w technologii.

Nie sądzę, że albo zostanie "upuszczony" w najbliższej przyszłości. Zarówno WPF, jak i Silverlight mają stromą krzywą uczenia się (XAML, wzorzec projektowy MVVM i przejście od schematów proceduralnych do deklaratywnych). Jeśli się go nauczysz, w zasadzie uczysz się także drugiego.

To powiedziawszy, to zależy od twoich potrzeb. Moje myśli są zazwyczaj:

  • Jeśli jest to strona internetowa, używać ASP .NET/HTML
  • Jeśli jest to prosta aplikacja internetowa, użyj ASP .NET/HTML
  • Jeśli jest to LOB (line of business) aplikacja, która nie wymaga podwyższonych uprawnień systemowych, należy użyć Silverlight
  • Jeśli jest to aplikacja LOB, który wymaga pełnego dostępu do systemu i podwyższone uprawnienia, użyj WPF

Istnieje wiele Silverlight bóle głowy (ograniczeń funkcjonalnych) można wpadł na to, że WPF nie ma ... więc jeśli nie potrzebujesz platformy, a mała waga jest dla ciebie bardzo ważna, zwykle skłaniam się ku WPF. Powiedział, że każda wersja Silverlight zbliża się funkcjonalnie do WPF.

Powinienem dodać zastrzeżenie - nienawidzę internetowych aplikacji LOB. Nigdy nie widziałem takiego, który nie jest hacky lub nie cierpi z powodu problemów z użytecznością wynikających z technologii. Nie, HTML5 nie rozwiązuje tych technologicznych ograniczeń i problemów. Jeśli pracuję nad aplikacją LOB, wolałbym poświęcić swój czas na stworzenie najbardziej przyjaznej dla biznesu aplikacji z konkurencyjnym zestawem funkcji, niż skupić się na wyświetlaniu jej w różnych przeglądarkach, rozwiązywaniu problemów związanych z zabezpieczeniami między domenami oraz utrzymywanie bazy kodu javascript.

+0

Dzięki, jaka jest aplikacja LOB? –

+1

Linia biznesu. Aplikacja dla przedsiębiorstw, wymagająca zaawansowanej interakcji użytkownika i złożonych reguł biznesowych. – Jeff

+0

Wielkie dzięki za wspaniałą odpowiedź, myślę, że będę trzymać się ASP.NET i HTML. –

-1

Jeśli napiszesz aplikację w Silverlight, to będzie ona musiała być uruchomiona w przeglądarce, chyba że stworzysz aplikację Out-of-Browser. Jeśli napiszesz go w WPF, możesz go uruchomić jak aplikację na komputer, ale będziesz musiał wdrożyć go na komputerze każdego, kto potrzebuje go uruchomić.

Jeśli nie masz pewności co do Silverlight, spróbuj użyć Flasha.

Powiązane problemy