Artifact: Pohled
Produkt, který obsahuje HTML šablony definující vzhled webových stránek.
Domains: Vývoj
Purpose

Produkt v rámci projektu ASP.NET MVC zajišťuje prezentační vrstvu aplikace.

Relationships
Description
Main Description

Pohledy (z anligckého views) jsou v podstatě HTML šablony, obsahující HTML stránku a tagy speciálního jazyka, který umožňuje do šablony vkládat proměnné, případně provádět iterace (cykly) a podmínky. Pohled lze považovat za „vizitku“ aplikace, pokud by byl design špatně zpracován, nebo by byl těžko použitelný, uživatelé nebudou chtít aplikaci využívat, třebaže jsou její zbylé části zpracovány bez chyb.

HTML v pohledech obecně definuje strukturu a obsah. Design stránky se poté vytváří pomoci kaskádových stylů (CSS). Výhodou je především to, že vzhled jednotlivých komponent, které se na webu opakují, je definován na jednom místě. Lze tedy poměrně jednoduše upravovat design celých stránek, aniž by se zasahoval do její struktury.
Kromě HTML a CSS je v pohledech využito také tzv. Razor engine (česky břitva), který slouží pro vkládání C# kódu do HTML. Břitva při načítání stránky zpracovává C# kód a na jeho základě generuje HTML, který je poslán do webového prohlížeče. Použití Razor engine je možné vidět na následujícím výpisu – kód vypíše všechna jména osob v kolekci do odrážkového seznamu. Je zde vidět jednoduché propojení C# kódu právě s jazykem HTML. @foreach(var person in personList) {<li>The name is @person.Name.</li>}

Jako Pohledy jsou označené veškeré obrazovky, které uživateli zobrazují nějaký výstup (většinou data jedné nebo více části nějakého Modelu) a je s nimi možné interagovat. Pohledy zajišťují pouze prezenční formu, neprobíhá v nich žádná úprava či tvorba dat. O to se starají ovladače (controllers). Součástí pohledů mohou být jednoduché podmínky – např. zobrazení tlačítka pro editaci objektu v případě, že má uživatel práva na editaci. Samotné ověření práv nicméně probíhá v ovladači, který pohledu dále předává pouze výsledek. Důležité je také zmínit, že Pohledy nejsou sami o sobě přímo přístupné, jako je tomu například u PHP. Do prohlížeče tak nelze zadat adresu pohledu a nechat ho vykreslit. Pohled je vždy vykreslován skrz ovladač, který mu také poskytuje data k zobrazení.
Pohledů se vytváří v aplikaci mnoho. Dalo by se říct, že pro každou funkcionalitu je vytvořen pohled. Protože však ve většině případů zůstává základ stránky, jako je rozvržení, hlavička, navigace apod. stejný, je vhodné využít tzv. Layoutu. Na něm se definuje struktura, včetně navigace a ostatní pohledy se budou následně zobrazovat na vybraném místě. Layout tak pomůže k zachování konzistentního vzhledu napříč pohledy.

Tailoring
Impact of not havingChybějící prezentační vrstva – uživatel není schopen používat aplikaci.
Reasons for not needingPohledy je třeba vytvářet u každé webové aplikace vytvářené ve frameworku ASP.NET MVC.
Representation OptionsKód HTML, CSS a C# uložený v souboru s koncovkou cshtml.
More Information