Ostatnio często natknąłem się na coś, co nazywa się Prism . Microsoft, który prowadzi projekt, opisuje go jako
Wskazówki dotyczące aplikacji złożonych w WPF i Silverlight.
Obawiam się, że nawet po przeczytaniu bardziej szczegółowych opisów nie mam pojęcia, o co właściwie chodzi.
Mam nadzieję, że ktoś może mi w jasny i zwięzły sposób wyjaśnić, czym właściwie jest Prism i dlaczego powinienem się tego nauczyć. Jestem programistą WPF od kilku lat, korzystałem z MVVM, co jest moim udziałem i ostatnio spotkałem ludzi używających Prism, ale osobiście czuję się tutaj trochę poza pętlą.
W szczególności zastanawiam się nad następującymi punktami:
Czy Prism to dosłownie (lub głównie) broszura podana na stronie MSDN ? Czy zawiera jakieś biblioteki, jeśli tak, to po co?
Czy Prism jest frameworkiem MVVM? Czy powinienem używać go jako „oficjalnej platformy Microsoft MVVM” zamiast innych, czy jako własnej?
Czy zapewnia zastrzyk zależności? Czy to w ogóle odnosi się do MEF w ten sposób?
Cokolwiek jeszcze powinienem wiedzieć o tym, co robi Prism, jako programista WPF / Silverlight.
Odpowiedzi:
Prism to oficjalne wskazówki zespołu Microsoft Patterns and Practices Team dotyczące tworzenia „aplikacji kompozytowych” w WPF i Silverlight.
Jego celem jest dostarczenie wskazówek dotyczących najlepszych praktyk tworzenia aplikacji na dużą skalę, które są elastyczne pod względem rozwoju i łatwości konserwacji.
Obejmuje to wskazówki dotyczące iniekcji zależności (za pośrednictwem Unity lub MEF), układu (w tym przy użyciu MVVM), obsługi zdarzeń złożonych itp.
Jest to książka, ale zawiera również biblioteki do wsparcia (na stronie GitHub ).
Tak i nie. Zawiera wskazówki dotyczące korzystania z MVVM, ale jest czymś więcej niż tylko strukturą MVVM. To naprawdę nie jest sam w sobie „frameworkiem MVVM” - chociaż zawiera wskazówki dotyczące MVVM.
Tak. Pierwotnie zawierał Unity, ale najnowsza wersja obejmuje użycie MEF for DI.
Warto przyjrzeć się, jak to robią. Mają bardzo rozbudowaną koncepcję „regionu”, a także dobre wsparcie dla agregacji wydarzeń. Obejmuje również dobre praktyki dotyczące jednoczesnego tworzenia programów dla WPF, Silverlight i Windows Phone.
źródło
Jest to platforma do tworzenia aplikacji WPF i Silverlight.
http://compositewpf.codeplex.com/
Nazywano go „Prism”, zanim Microsoft zmienił nazwę na „CompositeWPF”.
Odpowiedzi:
1) Prism to framework MVVM do wykorzystania jako podstawa dla twoich aplikacji
2) Proponuję to w zależności od konkretnych wymagań. Powinieneś zadać kolejne pytanie z konkretnymi szczegółami, aby uzyskać konkretne odpowiedzi.
3) Prism używa wstrzykiwania zależności (Unity), ale go nie „zapewnia”
4) Imo, Prism zapewnia wiele funkcji, ale jest ciężki w nauce. W przypadku małych projektów, w których jesteś jedynym programistą, możesz nie potrzebować abstrakcji i narzędzi, które zapewnia.
źródło