CoolClub pro IT odborníky

MVC architektura webových systémů: Nástroje, technologie, komponenty

07.12.2020

Model-View-Controller (MVC) je architektonický vzor, který rozděluje aplikaci na tři hlavní logické komponenty: model, view (pohled) a controller (řadič). Každá z těchto součástí je navržena tak, aby zvládla specifické aspekty vývoje aplikace. MVC je jedním z nejčastěji používaných průmyslových standardů pro vývoj webových aplikací pro vytváření škálovatelných a rozšiřitelných projektů.

 

Magazín

 

Historie MVC

Architektura MVC byla poprvé projednána v roce 1979. Model MVC byl poprvé představen v roce 1987 v programovacím jazyce Smalltalk. MVC byl poprvé přijat jako obecný koncept v článku z roku 1988. V poslední době je vzor MVC široce používán v moderních webových aplikacích

 

Vlastnosti rozhraní MVC

Díky rozdělování logiky aplikace na tři úkoly (vstupní logika, obchodní logika, logika rozhraní), testování těchto komponent je velmi snadné. Testovatelnost je velmi rychlá a bezpečná.

Můžeme navrhnout komponenty naší aplikace tak, aby byly snadno vyměnitelné nebo snadno dostupné k úpravě. Můžeme zapojit naši vlastní strategii směrování URL, adresu URL pro MVC zajišťuje komponenta mapování, která nám umožňuje budovat srozumitelné a prohledávatelné URL adresy. Některé MVC frameworky, včetně ASP.NET nám mohou poskytovat vestavěné funkce, jako je forma autentizace, správa relací, transakční obchodní logika, zabezpečení webových aplikací, objektové relační mapování, lokalizace, členství a role a autorizace URL atd.

 

 

Nejoblíbenější a dostupné:

  • Backbone.js

Tento framework je užitečný, když naše aplikace vyžadují flexibilitu a máme zatím nepříliš přesnou představu o budoucích požadavcích a chceme přizpůsobit změny během vývoje aplikace.

  • Ember.js

Umožňuje vývojářům vytvářet škálovatelné jednostránkové webové aplikace začleněním běžných idiomů a osvědčených postupů do frameworku.

  • Angular.js

Pokud chcete více spolehlivosti a stabilitu vaší aplikace a velké rozsáhlé testování vaší aplikace, pak využijte framework Angular.js.

  • Knockout.js

Pokud potřebujete komplexní dynamiku rozhraní aplikace rozdělnou každou zvlášť, pak Knockout.js framework bude pro vás vhodným kandidátem.

Každý framework má své vlastní výhody a nevýhody. Vývojáři využívají každý framework podle jejich požadavků, které vyhovují dané webové aplikaci.

 

Nástroje a technologie použité s MVC architekturou

Existuje mnoho nástrojů a technologií, na které lze použít architekturu MVC. Zde uvádíme mnohé nástroje a technologie, které mohou být k dispozici pro aplikace využívající architekturu MVC.

 

Nástroje

Visual Studio - Visual Studio není jen nástroj, ale i kompletní vývojové prostředí, které nám umožňuje možnost vytvořit různé druhy aplikací. Při potřebě vyvinout aplikace pomocí ASP.NET MVC frameworku je Visual Studio velmi vhodný nástroj.

Server MYSQL - Jedná se o relační server pro správu databází a udržování záznamů.

MYSQL Workbench - V tomto případě jde o nástroj pro návrh databáze.

Glassfish Server - Jedná se o aplikační server Java EE.

 

Technologie

  1. HTML, CSS, JQUERY, AJAX pro návrhy aplikací
  2. Stránky servletů a serverů Java (JSP)
  3. Technologie EJB (Enterprise Java beans)
  4. JSTL (knihovny standardních značek stránek serveru Java)
  5. JPA (Java persistence API)
  6. JDBC (připojení k databázi Java)

 

 

Komponenty MVC

Model

Komponenta Model odpovídá veškeré logice související s daty, se kterou uživatel pracuje. To může představovat buď data, která jsou přenášena mezi komponenty View a Controller, nebo jakákoli jiná data související s obchodní logikou. Například objekt Zákazník načte informace o zákazníkovi z databáze, s nimi manipuluje a aktualizuje je zpět do databáze nebo je použije k vykreslení dat.

View (Pohled)

Komponenta View se používá pro veškerou logiku UI aplikace. Například pohled zákazníka bude zahrnovat všechny komponenty uživatelského rozhraní, jako jsou textová pole, rozevírací seznamy atd., se kterými koncový uživatel interaguje.

Controller (Ovladač)

Řadiče fungují jako rozhraní mezi komponentami Model a View pro zpracování všech obchodních logik a příchozích požadavků, manipulaci s daty pomocí komponenty Model a interakci s pohledy pro vykreslení konečného výstupu. Řadič zákazníka bude například zpracovávat všechny interakce a vstupy z pohledu zákazníka a aktualizovat databázi pomocí modelu zákazníka. Stejný řadič bude použit pro zobrazení zákaznických dat.

 

ASP.NET MVC

Jako hlavního představitele MVC architektury jsem vybrali ASP.NET MVC. ASP.NET podporuje tři hlavní vývojové modely: Webové stránky, Webové formuláře a MVC (Model View Controller). ASP.NET MVC framework je lehký, vysoce testovatelný prezentační framework, který je integrován s existujícími funkcemi ASP.NET, jako jsou hlavní stránky, autentizace atd. Používá se Visual Studio k vytvoření ASP.NET MVC aplikací, které lze přidat jako šablonu ve Visual Studio.

 

Vlastnosti ASP.NET MVC

ASP.NET MVC poskytuje následující funkce. Je ideální pro vývoj složitých, ale lehkých aplikací. Poskytuje rozšiřitelný a modulový framework, který lze snadno vyměnit a přizpůsobit. Pokud například nechcete používat vestavěný zobrazovací stroj Razor nebo ASPX, můžete použít jakékoli jiné zobrazovací nástroje třetích stran nebo dokonce upravit stávající.

Využívá návrh aplikace založený na komponentách logickým rozdělením do komponent Model, View a Controller. To umožňuje vývojářům řídit složitost rozsáhlých projektů a pracovat na jednotlivých komponentách.

Struktura MVC zlepšuje vývoj a testovatelnost aplikace na základě testů, protože všechny komponenty mohou být navrženy na základě rozhraní a testovány pomocí simulovaných objektů. Proto je ASP.NET MVC Framework ideální pro projekty s velkým týmem vývojářů webu.

Podporuje také všechny existující rozsáhlé funkce ASP.NET, jako je autorizace a autentizace, hlavní stránky, vázání dat, uživatelské kontroly, členství, směrování ASP.NET atd. Nepoužívá koncept stavu zobrazení (který je přítomen v ASP.NET). To pomáhá při vytváření aplikací, které jsou lehké a vývojářům poskytuje plnou kontrolu.

Můžete tedy považovat MVC Framework za hlavní rámec postavený na vrcholu ASP.NET, který poskytuje velkou sadu přidaných funkcí se zaměřením na vývoj a testování na základě komponent.

 

 

Připravil: Radek Svoboda