Jemný úvod do teorie ASP.NET MVC
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama

Jemný úvod do teorie ASP.NET MVCJemný úvod do teorie ASP.NET MVC

 

Jemný úvod do teorie ASP.NET MVC

Google       Google       3. 8. 2009       24 648×

ASP.NET MVC je poměrně mladá technologie se spoustou zajímavých schopností a rozhodně slibnou budoucností. Podívejme se tedy dnes spolu stručně na teorii architektury MVC, kterou si v nadcházejících článcích vyzkoušíme v praxi.

Reklama
Reklama

Architektura Model-View-Controller (zkráceně MVC) rozděluje aplikaci do tří hlavních dílů: model (datový model), view (pohled – uživatelské rozhraní) a controller (kontrolér, řadič – řídící logika). Základní myšlenka je ta, že všechny tyto tři díly, často označované jako komponenty, jsou na sobě v maximální možné míře nezávislé, změny provedené v jedné komponentě tedy neovlivní zbylé dvě komponenty. Více detailů o architektuře MVC najdete například na české Wikipedii.

ASP.NET MVC slouží jako alternativa k dobře známým ASP.NET WebForms (v žádném případě se je nesnaží nahradit), stejně jako klasické WebForms spolupracuje tato technologie se stávajícími vlastnostmi ASP.NET, jmenujme třeba master pages, uživatelské role, sessions a další. Celý MVC framework najdeme v namespace System.Web.Mvc.

Pojďme si teď probrat trochu podrobněji jednotlivé komponenty.

Model

Model slouží k práci s daty, která aplikace používá. Stará se tedy například i o čtení a zápis z/do databáze, XML souborů a dalších.

View

View je komponenta, která zobrazuje uživatelské rozhraní, které je často vytvořeno na základě Modelu, který například načte tabulku zaměstnanců a View ji nějak zobrazí (skutečně jen zobrazí, o akce uživatele se už nestará).

Controller

Na cestě mezi komponentami Model a View stojí Controller – komponenta, která se stará o komunikaci s uživatelem, zachytávání událostí atp. Databázový dotaz probíhá tak, že ho od uživatele obdrží právě Controller, předá ho Modelu a teprve ten ho předá databázi.

Výhodou MVC je to, že usnadňuje vytváření aplikací tím, že vývojáři téměř „přikazuje“ kam má který kód dát. Kromě toho je jednodušší testování aplikací než třeba u standardních WebForms. Tam se totiž často dohromady míchá vzhled i práce s daty v jedné třídě. Napsat si například testovací třídu může být složitější, protože se jednoduše musíme zaobírat i tím, co nás zrovna příliš nezajímá. Do třetice tato architektura téměř svádí k paralelnímu vývoji. Díky nezávislosti jednotlivých komponent může jeden programátor pracovat na Modelu, druhý na Controlleru a tak dále.

Kdy použít MVC?

Před vytvořením nové aplikace je nutné se zamyslet, jestli skutečně použít MVC, anebo běžné WebForms. Jak už bylo řečeno, MVC nic nenahrazuje, je to jen další alternativa. Snad vám při rozhodování jakou použít technologii pomůže následujících pár bodů.

Výhody MVC

  • Usnadňuje správu aplikace rozdělením do tří komponent.
  • Nepoužívá View State, ani serverové ovládací prvky. Díky tomu je MVC framework ideální pro ty, kteří chtějí mít kompletní moc nad chováním aplikace.
  • Používá tzv. „Front Controller“, který zpracovává požadavky od aplikace pomocí jednoho dalšího Controlleru. Ten se dá využít pro vytvoření routovací infrastruktury (vytváření URL je v ASP.NET neskutečně pohodlné, sami uvidíte v dalších dílech).

Výhody WebForms

  • Disponuje systémem událostí (events), které jsou dostupné v desítkách, ne-li stovkách, serverových ovládacích prvků.
  • Používá tzv. „Page Controller“, který dává funkcionalitu individuálním stránkám.
  • Používá serverové ovládací prvky a View State, které mohou programování o hodně ulehčit.
  • Obecně se dá říct, že vývoj pomocí standardních WebForms je méně složitý, protože většina komponent spolu těsně spolupracuje a většinou vyžadují méně kódu než u MVC.

Kde ASP.NET MVC sehnat?

Možnosti jsou dvě - buďto ze stránek Microsoftu, anebo přes aplikaci Web Platform Installer, která slouží ke stahování i ostatních webových aplikací a frameworků (Silverlight, doplňky pro IIS, atd.).

To byl jen úvod, kouzlo ASP.NET MVC objevíte teprve, až ho použijete v praxi, což spolu hned příště uděláme u stavění kompletní aplikace určené k plánování setkání s přáteli. Nebude omezená jen na ukázky konceptů MVC frameworku jako takového, ale naučíme se i práci s databází, využijeme AJAX, LINQ to SQL a další technologie.

Zdroj: http://www.asp.net/learn/mvc/tutorial-01-cs.aspx

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
0 hlasů
Google
(fotka) Jakub KottnauerJakub studuje informatiku na FIT ČVUT, jeho oblíbenou platformou je .NET.
Web     Twitter     Facebook     LinkedIn    

Nové články

Reklama
Reklama
Obrázek ke článku Blockchain & Bitcoin konference

Blockchain & Bitcoin konference

V pátek 19. 5. 2017 se v pražském konferenčním centru Andel’s konala Blockchain & Bitcoin konference. Řada odborníků a podnikatelů v oboru blockchainu a kryptoměn představila možnosti budoucího směřování tohoto oboru. Speakeři většinou rusky mluvící provenience prezentovali řešení svých firem založená na technologii blockchainu.

Obrázek ke článku Malware KONNI se úspěšně skrýval 3 roky. Odhalil ho bezpečnostní tým Cisco Talos

Malware KONNI se úspěšně skrýval 3 roky. Odhalil ho bezpečnostní tým Cisco Talos

Bezpečnostní tým Cisco Talos odhalil celkem 4 kampaně dosud neobjeveného malwaru, který dostal jméno KONNI. Ten se dokázal úspěšně maskovat od roku 2014. Zpočátku se malware zaměřoval pouze na krádeže citlivých dat. Za 3 roky se ale několikrát vyvinul, přičemž jeho současná verze umožňuje útočníkovi z infikovaného počítače nejenom krást data, ale i mapovat stisky na klávesnici, pořizovat screenshoty obrazovky či v zařízení spustit libovolný kód. Pro odvedení pozornosti oběti zasílali útočníci v příloze také obrázek, zprávu a výhružkách severokorejského režimu či kontakty na členy mezinárodních organizací.

loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032017 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý