Microsoft je pred kratkim izdal tehnologijo ASP.NET MVC verzijo 2, ki vam omogoča večji nadzor nad spletnimi povezavami in HTML stranmi (output). Tehnologija vsebuje MVC pattern, ki se je v praksi izkazal za zelo učinkovitega.
Pri tem se pa marsikdo sprašuje, kaj se bo zgodilo z tehnologijo ASP.NET WebForms, na kateri je marsikatero podjetjo želo uspehe in si pripravilo delovno okolje (ter zmetalo v to veliko denarja). Brez skrbi, WebForms še o(b)staja. V ASP.NET 4 je prišlo do nekaj popravkov ter izboljšav kot npr. Routing, dinamični Meta podatki, več nadzora nad Client IDji, Viewstate-om, itd.
Na codeplex-u so se ljubitelji tehnologije ASP.NET WebForms zbrali ter naredili ASP.NET MVP pattern, ki ga lahko uporabljate v svojih projektih in s katerim dosežete podobne funkcionalnosti, kot jih pridobite v tehnologiji ASP.NET MVC.
Zakaj bi uporabil ASP.NET MVP?
Razlogov je mnogo (odvisno seveda od potreb), najbolj očitni so sledeči:
- Lažje testiranje: Testiranje v ASP.NET tehnologiji ni tako enostavno. Imate na voljo sicer dosti 3rd party testnih orodij, prav tako novopečeni TFS in VS 2010 omogočata dosti orodij, s katerimi lahko nadziramo naše spletne strani oziroma preverimo, ali deluje vse, kar je potrebno in načrtovano (najbolj pogosto se lotimo unit, integracijskih, funkcionalnih, perfomančnih testov).
- Uporaba že obstoječe kode in komponent: ASP.NET WebForms tehnologija omogoča, da potegnemo na oblikovno površje kontrolo in nastavimo lastnosti. Če imamo bogati nabor teh kontrolnikov, jih lahko ponovno izkoristimo na dosti enostaven način (drag & drop).
- Gradnja “sestavljenega” vmesnika: ko stran razbito na različne elemente, ki na koncu naredijo svoje delo (npr. en del, ki vam predstavlja glavo strani, en del, ki vam predstavlja vsebino, en del nogo strani, en del levi meni, itd.)
- Vzdrževanje aplikacije: ker imamo vmesnik ločen, lahko na dosti enostaven način vse UI zadeve prestavimo v model in tako te zadeve stestiramo z različnimi testi (unit, itd.)
Kaj je ASP.NET WebForms MVP in kako začeti?
Ko človek prvič tole prebere, si misli, ok, na tej strani so prikazani vsi MVPji (Microsoft Most Valuable Professional) za tehnologijo ASP.NET WebForms. No, ni temu tako :)
Gre za “nekakšen” odgovor na tehnologijo ASP.NET MVC, vendar ne v smislu tekmovanja, temveč nadgradnje svojega znanja in tako pridobitev vseh prednosti, ki jih ponuja MVC brez nekega dodatnega izobraževanja oziroma učenja nove tehnologije.
Vstopna točka za začetek je http://webformsmvp.com/, kjer imate pozdravni video ter povezave za prenos knjižnice ter wiki kot dokumentacijo.
Več o tem pa v tem video-tu ASP.NET MVPja Tatham Oddie-ja:
Why ASP.NET Web Forms MVP? from Tatham Oddie on Vimeo.
Kako naprej?
ASP.NET WebForms MVP je na voljo kot open source knjižnica na CodePlex-u, kjer si jo lahko prenesete in tudi pri projektu sodelujete na en ali več načinov.
Če delate v ASP.NET WebForms tehnologiji in nimate veliko časa, da se naučite MVC, preizkusite MVP pattern in uporabite svoje obstoječe znanje. Konec koncev, če se odločite za MVP in se boste kasneje želeli naučiti MVC, se vam bo ta pot olajšala :)
Bom pa v prihodnje se s tem dosti igral in bom o tem več tudi pisal (trenutno mi je zadeva zelo všeč). Stay tuned :)