czwartek, 14 stycznia 2010

Mój ASP.NET MVC stack


Postanowiłem spisać technologie, biblioteki, które używam w pracy z projektami ASP.NET MVC, ewentualnie “nowinki”, które zostały przetestowane w boju, ale ze względu na silną obsadę czekają na lepsze czasy i napewdno niedługo zostaną przeze mnie ponownie użyte. Oto one, zaczynająć od "pierwszego składu":


Architektura

  1. S#arp Architecture: podstawowy stack, który zawiera w sobie wszystko to, co potrzebne jest do stworzenia aplikacji ASP.NET MVC. Korzysta z Castle.Windsor co podmieniam na Ninject.
  2. NHibernate, doskonale wszystkim znany ORM
  3. Linq2SQL, tam gdzie nie ma NHibernate :-)
  4. Fluent Nhibernate biblioteka konfiguracji NHibernate bez konieczności użycia plików XML oparty o konwencję / Fluent Interfaces.
  5. Ninject jako lekki framework DI / IoC.
  6. MVCContrib: projekt rozszerzający standardową funkcjonalność dostępną w gołym ASP.NET MVC
  7. jQuery, jQuery UI, jQuery plugins: biblioteka javascript, zbiór kontrolek JS, chyba każdemu znana.

Poczekalnia

  1. Entity Framework 4, jako zamiennik NHibernate. Zauważyłem, że EF idzie w całkiem fajną, ciekawą stronę umożliwiając MDD, dobrze integruje się z VS. Myślę, że niedługo będzie poważną alternatywą dla NHibernate.
  2. Spark View Engine, jako zamiennik standardowego view engine. Fajne rozwiązanie PartialViews, daje mniejszy bałagan w kodzie widoku.
  3. FubuMVC, framework implementujący wzorzec Front Controller
  4. MVCTurbine: “The whole purpose of MVC Turbine is to speed your MVC development by having the plug-in handle all churn of the runtime and allow you to focus on what your application needs to do, rather than how to do it.”

Coś byście dorzucili? :-)

6 komentarze:

King@Work pisze...

No można dorzucić
http://www.dotlesscss.com/ bo robienie css-ów jest upierdliwe.

Fajny wpis - dobre linki i parę projektów które jeszcze nie widziałem, ale na pewno popatrzę na nie.

Dariusz Tarczyński pisze...

@King
Dzięki za linka. Narzędzia nie znam, ale chętnie się mu przyjrzę.

DK pisze...

Małe pytanko - czy orientujesz się, czy z niektórych z tych narzędzi można zrezygnować w związku z features mvc v2? Pytam, bo dopiero zaczynam w tej technologii i chciałbym wiedzieć czy v2 to duży krok naprzód...

Dariusz Tarczyński pisze...

@DK
Generalnie MVC2 nie wymaga stosowania żadnej z prezentowanych bibliotek czy frameworków. Można zarówno skorzystać ze standardowego ViewEngine, ale można wykorzystać np. Spark - to samo dotyczy się reszty. Wybór należy do Ciebie.

Anonimowy pisze...

A czego z MVCContrib używasz/polecasz?
Z tego co widziałem, to T4MVC jest fajne.

Dariusz Tarczyński pisze...

Jeśli chodzi o MVCContrib to korzystałem z niego częściej za czasów MVC v1. W MVC2 wprowadzono wiele usprawnień, które często pokrywają się z tym w czym Contrib był najlepszy (np. Html Helpers na rzecz Automatycznych Edytorów dla modelu itd.). Ale jeśli chodzi o Grid z Contrib-a to gorąco polecam. Naprawdę bardzo przyjemnie się z nim pracuje. Chyba trudno znaleźć coś lepszego jak na razie.
A jeśli chodzi o T4MVC - to jak najbardziej. Tym bardziej że MS zrezygnowało z wprowadzenia podobnego mechanizmu do Frameworka. Nie nawicę "magic strings", a T4MVC znacząco je eliminuje.