Michal Augustýn ALWIL Software Microsoft Most Valuable Professional

Rozměr: px
Začít zobrazení ze stránky:

Download "Michal Augustýn www.augi.cz ALWIL Software Microsoft Most Valuable Professional"

Transkript

1 Michal Augustýn ALWIL Software Microsoft Most Valuable Professional

2 ASP.NET/IIS MVC v ASP.NET MVC Routing Controllery Views master pages kompozice

3 framework pro tvorbu webového rozhraní na platformě ASP.NET používá návrhový vzor MVC podobně jako Nette, Django, SpringMVC, RoR, ZendFW, nyní ve verzi 2, pracuje se na verzi 3 rozšiřitelný/upravitelný v mnoha směrech open-source (licence Ms-PL) zdrojáky dostupné na Codeplex.com

4 .NET Framework ~ Java C#, VB.NET, F#, IronPython, Internet Information Services ~ Apache web.config ~.htaccess module ~ module handler ~ handler ASP.NET je handler

5 IIS ASP.NET WebForms MVC

6 Požadavek GET IIS moduly ASP.NET [ISAPI filter] handler moduly Výsledek <html> </html>

7 request response 1 routing Controller Model View

8 public class HomeController : Controller public ActionResult Index() ViewData["Message"] = "Welcome to ASP.NET MVC!"; return View(); public ActionResult About() return View();

9 defaultně se používá WebForms view-engine view == aspx stránka public ViewResult Show(int id) Product p = BusinessLayer.Load(id); return View("Show", p); <%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<Product>" %> <asp:content ID="indexTitle" ContentPlaceHolderID="TitleContent" runat="server >Home Page</asp:Content> <asp:content ID="indexContent" ContentPlaceHolderID="MainContent" runat="server"> <h2><%= Html.Encode(ViewData["Message"]) %></h2> <p><%= Html.Encode(ViewData.Model.Name) %></p> </asp:content>

10 určuje tvar url konfigurace v souboru Global.asax.cs pravidla se vyhodnocují v pořadí vložení mapuje zpracování url na kontroler a akční metodu umožňuje generování url výchozí nastavení: /Home/Product/20 routes.maproute( "Default", // Route name "controller/action/id", // URL with parameters new controller = "Home", action = "Index", id = "" // Parameter defaults );

11 třída odvozená od třídy Controller obsahuje akční metody (vrací ActionResult) 1. čte data z requestu 2. komunikuje s modelem 3. vybírá view a předává mu data k prezentaci Controller Model View

12 parametry requestu mapovány na vstupní parametry akční metody ( deserializace ) public ActionResult Show(int id) Routovací parametry: controller, action, id POST parametry: product.id, product.name, product.price public ActionResult Create(Product product) manuálně: [Try]UpdateModel vlastní konverze - IModelBinder

13 slouží k zápisu výsledku do HttpResponse public abstract class ActionResult public abstract void ExecuteResult(ControllerContext context); return View("Index"); // ViewResult return PartialView("Product"); // PartialViewResult return Json(myObject); // JsonResult return Redirect(" // RedirectResult return RedirectToAction("Index"); // RedirectToRouteResult return File("soubor.txt", "txt/plain"); // FilePathResult return new MyRssResult(myCollection); // Rss(myCollection)

14 vlastní action-result na přesměrování public class MyRedirectResult : ActionResult public string Url get; set; public override void ExecuteResult(ControllerContext context) context.httpcontext.response.redirect(this.url); return new MyRedirectResult Url = " ;

15 1. hash-table ViewData ViewData[ message ] = Hello world! ; 2. Model libovolná třída ViewData.Model = new MyViewModel(); typově bezpečné Controller Model View

16 všechny produkty public ViewResult Index() IEnumerable<Product> products = BusinessLayer.LoadAll(); return View(products); // ViewData.Model = products; jeden produkt public ViewResult Show(int id) Product p = BusinessLayer.Load(id); return View("Show", p);

17 editace produktu public ViewResult Update(int id) Product p = BusinessLayer.Load(id); return View("Update", p); [AcceptVerbs(HttpVerbs.Post)] public RedirectToRouteResult Update(int id, FormCollection formdata) Product p = BusinessLayer.Load(id); if (TryUpdateModel<IProduct>(p, formdata.tovalueprovider())) BusinessLayer.Update(p); return RedirectToAction("Update", new id = p.id );

18 master page určuje layout stránky definuje díry k vyplnění (ContentPlaceHolder) content page plní ContentPlaceHoldery při zobrazení stránky řekneme jakou master page použít jak vyplnit jednotlivé díry

19 Master Language="C#" Inherits="System.Web.Mvc.ViewMasterPage" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" " <html xmlns=" <head> <title><asp:contentplaceholder ID="TitleContent" runat="server" /></title> <link href="../../content/site.css" rel="stylesheet" type="text/css" /> </head> Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<Product>" %> <asp:content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server"> Home Page - <%= Html.Encode(Model.Name) %> </asp:content>

20 <% using (Html.BeginForm()) %> <fieldset> <legend>fields</legend> <p> <%= Html.LabelFor(model => model.name) %> <%= Html.TextBoxFor(model => model.name) %> <%= Html.ValidationMessageFor(model => model.name) %> </p> <p> <%= Html.LabelFor(model => model.price) %> <%= Html.TextBoxFor(model => model.price) %> <%= Html.ValidationMessageFor(model => model.price) %> </p> <p> <input type="submit" value="save" /> </p> </fieldset> <% %>

21 <% using (Html.BeginForm()) %> <fieldset> <legend>fields</legend> <%= Html.EditorFor(model => model.name) %> <%= Html.EditorFor(model => model.price) %> <p> <input type="submit" value="save" /> </p> </fieldset> <% %> <% using (Html.BeginForm()) %> <fieldset> <legend>fields</legend> <%= Html.EditorForModel() %> <p> <input type="submit" value="save" /> </p> </fieldset> <% %>

22 <% Html.EnableClientValidation(); %> <%= Ajax.ActionLink("Odkaz", "IndexAjax", "Home", new AjaxOptions InsertionMode = InsertionMode.Replace, LoadingElementId = "loading-image", UpdateTargetId = "dynamic-content", ) %>

23 standardní umístění ~/Views/controller/view.[aspx,ascx] ~/Views/Shared/view.[aspx,ascx] lze změnit (stejně jako vše) partial views: UserControls (ascx) dědí z ViewUserControl<TModel> Html.RenderPartial( MyPView, model)

24 vyšší úroveň kompozice proběhne celý round-trip jde proti filozofii MVC, ale je užitečný Kdy použít RenderAction a kdy RenderPartial? Action pro rendering nutná komunikace s modelem Partial všechna data dostupná

25 přijde request: routing: controller = Product action = Show id = 21 model-binding: id = 21 public ViewResult Show(int id) Product p = BusinessLayer.Load(id); return View("Show", p); /Product/Show/21

26 public ViewResult Show(int id) Product p = BusinessLayer.Load(id); return View("Show", p); <%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<Product>" %> <asp:content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server"> Product details </asp:content> <asp:content ID="Content2" ContentPlaceHolderID="MainContent" runat="server"> <h2><%= Html.Encode(Model.Name) %></h2> <p><%= Html.Encode(Model.Description) %></p> <p>price: <%= Html.Encode(Model.Price) %></p> </asp:content>

27 aspektové rozšíření akčních metod lze aplikovat i na celé controllery [Authorize(Roles = "Admin")] [OutputCache(CacheProfile="TestProfile")] [HandleError(View="Error")] public ActionResult Test() return new EmptyResult();

28 public interface IAuthorizationFilter void OnAuthorization(AuthorizationContext filtercontext); public interface IActionFilter void OnActionExecuting(ActionExecutingContext filtercontext); void OnActionExecuted(ActionExecutedContext filtercontext); public interface IResultFilter void OnResultExecuting(ResultExecutingContext filtercontext); void OnResultExecuted(ResultExecutedContext filtercontext); public interface IExceptionFilter void OnException(ExceptionContext filtercontext);

29 silně typovější Html.RenderAction display & edit templates 3.0 komponenty (grid, captcha, ) multiple partial updates, client templates, scaffolding, DI, MEF,

30 MVC jednoduché čistý kód nutí správně strukturovat plná kontrola nad html zezačátku vyžaduje více znalostí WebForms složitější model RAD, komponentový vývoj odstínění od stavovosti http ViewState, PostBack

31 Phil Haack - ScottGu české fórum i o.net snad už brzy

32 a odpovědi

Michal Augustýn www.augi.cz Microsoft Most Valuable Professional

Michal Augustýn www.augi.cz Microsoft Most Valuable Professional Michal Augustýn www.augi.cz Microsoft Most Valuable Professional dříve převážně desktopové aplikace rozmach internetu poptávka po webových vývojářích ASP.NET WebForms snadný přechod - RAD mezitím jiné

Více

ASP.NET MVC. Michal Horák 2008

ASP.NET MVC. Michal Horák 2008 Model View Controller ASP.NET MVC Michal Horák 2008 Základem ASP.NET MVC je návrhový vzor (někdy se také říká architektonický vzor, protože jde spíše o architekturu aplikace) Model View Controller. Tento

Více

Ing. Přemysl Brada, MSc., Ph.D. Ing. Martin Dostal. Katedra informatiky a výpočetní techniky, FAV, ZČU v Plzni

Ing. Přemysl Brada, MSc., Ph.D. Ing. Martin Dostal. Katedra informatiky a výpočetní techniky, FAV, ZČU v Plzni Webové aplikace Ing. Přemysl Brada, MSc., Ph.D. Ing. Martin Dostal Katedra informatiky a výpočetní techniky, FAV, ZČU v Plzni Harmonogram Dopolední blok 9:00 12:30 Ing. Dostal Úvod, XHTML + CSS Ing. Brada,

Více

Obsah přednášky. Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework

Obsah přednášky. Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework Web Jaroslav Nečas Obsah přednášky Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework Co to je web HTTP protokol bezstavový GET POST HEAD Cookies Session HTTPS

Více

ASP.NET Web API. Tomáš Herceg Microsoft MVP (ASP.NET)

ASP.NET Web API. Tomáš Herceg Microsoft MVP (ASP.NET) ASP.NET Web API Tomáš Herceg Microsoft MVP (ASP.NET) www.dotnetcollege.cz Yet Another WCF?.NET Web Services (SOAP, WSDL) Fungují vždy a všude, nedá se nic zkazit Windows Communication Foundation Pokročilé

Více

Jak vznikala webová aplikace kolonizace.asp2.cz

Jak vznikala webová aplikace kolonizace.asp2.cz Jak vznikala webová aplikace kolonizace.asp2.cz Cílem tohoto textu je poskytnout začínajícím vývojářům rady a zejména návod jak krok za krokem vytvořit jednoduchou statickou webovou aplikaci s použitím

Více

Dynamické stránky v praxi. Bedřich Košata

Dynamické stránky v praxi. Bedřich Košata Dynamické stránky v praxi Bedřich Košata Reálné scénáře Statické stránky + dynamický search Všechno dynamické spousta práce a opakujících se úkolů SQL není příliš přenosné mezi databázovými systémy =>

Více

Tvorba WWW stránek. přehled technologií používaných na webu principy jednotlivých technologií a možnosti jejich vzájemného kombinování

Tvorba WWW stránek. přehled technologií používaných na webu principy jednotlivých technologií a možnosti jejich vzájemného kombinování Tvorba WWW stránek přehled technologií používaných na webu principy jednotlivých technologií a možnosti jejich vzájemného kombinování HTML/XHTML kaskádové styly PHP spolupráce PHP s databázemi Technologie

Více

Microsoft ASP.NET 2.0/3.0 (advanced)

Microsoft ASP.NET 2.0/3.0 (advanced) Microsoft ASP.NET 2.0/3.0 (advanced) Michal Altair Valášek ASP.NET MVP Chief Software Architect Altairis Corporation www.altairis.cz michal.valasek@altairis.cz Request processing pipeline Michal Altair

Více

PHP framework Nette. Kapitola 1. 1.1 Úvod. 1.2 Architektura Nette

PHP framework Nette. Kapitola 1. 1.1 Úvod. 1.2 Architektura Nette Kapitola 1 PHP framework Nette 1.1 Úvod Zkratka PHP (z anglického PHP: Hypertext Preprocessor) označuje populární skriptovací jazyk primárně navržený pro vývoj webových aplikací. Jeho oblíbenost vyplývá

Více

Django, 2. cvičení url, views, templates. Úvod

Django, 2. cvičení url, views, templates. Úvod Django, 2. cvičení url, views, templates. Úvod Views v djangu jsou funkce (definovány ve views.py souboru aplikace, na které jsou mapovány URL adresy. Jejich úkolem je vrátit odpověď na HTTP požadavek.

Více

Bottle -- příklad. Databáze. Testovací data. id Jedinečný identifikátor řádku: Bude typu INT s AUTO_INCREMENT a nastavíme ho jako primární klíč

Bottle -- příklad. Databáze. Testovací data. id Jedinečný identifikátor řádku: Bude typu INT s AUTO_INCREMENT a nastavíme ho jako primární klíč Bottle -- příklad V tomto příkladu se pokusíme vytvořit malou aplikaci umožňující psát jednoduché poznámky. Databáze Nejprve je třeba vytvořit v databázovém serveru uživatele (pokud už není vytvořen) a

Více

Hiearchical MVC (Model-view-controller) vs. PAC (Presentation-abstraction-control)

Hiearchical MVC (Model-view-controller) vs. PAC (Presentation-abstraction-control) Hiearchical MVC (Model-view-controller) vs. PAC (Presentation-abstraction-control) Problém HMVC úvod MVC v určitých aplikacích nedostačující Příklad: webová stránka s widgety Např. kalendář, hodnocení,

Více

Stručný úvod pro programátory. Michal Kuchta

Stručný úvod pro programátory. Michal Kuchta Stručný úvod pro programátory Michal Kuchta Alespoň základní znalost PHP Základy klasického OOP a jeho implementaci v PHP Schopnost oprostit se od konvenčního tvoření stránek 2 Framework pro snazší vývoj

Více

Internet Information Services (IIS) 6.0

Internet Information Services (IIS) 6.0 Internet Information Services (IIS) 6.0 V operačním systému Windows Server 2003 je obsažena i služba IIS v 6.0. Služba IIS poskytuje jak www server tak i některé další služby (FTP, NNTP,...). Jedná se

Více

Technologie Java Enterprise Edition. Přemek Brada, KIV ZČU 8.6.2011

Technologie Java Enterprise Edition. Přemek Brada, KIV ZČU 8.6.2011 Technologie Java Enterprise Edition Přemek Brada, KIV ZČU 8.6.2011 Přehled tématu Motivace a úvod Infrastruktura pro velké Java aplikace (Java základní přehled) Části třívrstvé struktury servlety, JSP

Více

Ruby on Rails. Bc. Tomáš Juřík Bc. Bára Huňková

Ruby on Rails. Bc. Tomáš Juřík Bc. Bára Huňková Ruby on Rails Bc. Tomáš Juřík Bc. Bára Huňková Co nás dnes čeká? Ruby (programovací jazyk) Ruby on Rails (webový framework) Praktická ukázka Ruby (programovací jazyk) Ruby (programovací jazyk) Skriptovací

Více

Tvorba informačních systémů

Tvorba informačních systémů Tvorba informačních systémů Michal Krátký 1, Miroslav Beneš 1 1 Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2005/2006 c 2006 Michal Krátký, Miroslav Beneš Tvorba informačních

Více

Tvorba webu v HTML. Redakční systém. CMS Joomla! Co je Joomla

Tvorba webu v HTML. Redakční systém. CMS Joomla! Co je Joomla Tvorba webu v Webová prezentace jakéhokoliv subjektu snažícího se zviditelnit v internetovém prostředí je velice individuální záležitostí. Stejně jako každý uživatel internetu je i každá firma na něm prezentující

Více

KIV/PIA 2013 Jan Tichava

KIV/PIA 2013 Jan Tichava KIV/PIA 2013 Jan Tichava Java EE JSF, PrimeFaces Spring JPA, EclipseLink Java Platform, Enterprise Edition Persistence Zobrazovací vrstva Interakce aplikací Deployment Java Persistence API Enterprise

Více

Připravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové technologie

Připravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové technologie Připravil: Ing. Jiří Lýsek, Ph.D. Verze: 18.4.2017 Webové technologie RIA, SPA, AngularJS - šablony a controllery, služby $scope a $http strana 2 RIA - Rich Internet Application Chová se podobně jako desktopová

Více

Instalace a konfigurace web serveru. WA1 Martin Klíma

Instalace a konfigurace web serveru. WA1 Martin Klíma Instalace a konfigurace web serveru WA1 Martin Klíma Instalace a konfigurace Apache 1. Instalace stáhnout z http://httpd.apache.org/ nebo nějaký balíček předkonfigurovaného apache, např. WinLamp http://sourceforge.net/projects/winlamp/

Více

UJO Framework. revoluční architektura beans. verze 0.80 http://ujoframework.org/

UJO Framework. revoluční architektura beans. verze 0.80 http://ujoframework.org/ UJO Framework revoluční architektura beans verze 0.80 http://ujoframework.org/ Pavel Pone(c), září 2008 Historie rok 2004 upravené objekty z frameworku Cayenne nevýhodou byla špatná typová kontrola rok

Více

Programování v prostředí.net ASP.NET

Programování v prostředí.net ASP.NET Programování v prostředí.net 9 Přednáška 9. Přednáška ASP.NET Outline Anatomie ASP.NET Page, HTML Controls, Web Controls Common look and feel (Master pages, Skins, Themes, Personalization) State t Management

Více

Tvorba informačních systémů

Tvorba informačních systémů Tvorba informačních systémů Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2006/2007 c 2006-2007 Michal Krátký, Miroslav Beneš Tvorba informačních

Více

Vytvoření pokročilé Fotogalerie v Drupalu - Views

Vytvoření pokročilé Fotogalerie v Drupalu - Views Vytvoření pokročilé Fotogalerie v Drupalu - Views Views Máme tři pohledy: gallery_photos, all_galeries, admin_gallery Buď je můžete vytvořit podle návodu níže, nebo importovat z přiložených txt souborů

Více

KIV/PIA Semestrální práce

KIV/PIA Semestrální práce KIV/PIA Semestrální práce Diskuzní fórum Tomáš Časta(A10N0057P) casta@students.zcu.cz 1. Architektura aplikace 1.1 MVC Model-view-controller (MVC) je softwarová architektura, která rozděluje datový model

Více

Webové služby a XML. Obsah přednášky. Co jsou to webové služby. Co jsou to webové služby. Webové služby a XML

Webové služby a XML. Obsah přednášky. Co jsou to webové služby. Co jsou to webové služby. Webové služby a XML Obsah přednášky Webové služby a XML Miroslav Beneš Co jsou to webové služby Architektura webových služeb SOAP SOAP a Java SOAP a PHP SOAP a C# Webové služby a XML 2 Co jsou to webové služby rozhraní k

Více

RESTful API TAMZ 1. Cvičení 11

RESTful API TAMZ 1. Cvičení 11 RESTful API TAMZ 1 Cvičení 11 REST Architektura rozhraní navržená pro distribuované prostředí Pojem REST byl představen v roce 2000 v disertační práci Roye Fieldinga, zkratka z Representional State Transfer

Více

PŘEHLED A MOŽNOSTI VYUŽITÍ WEBOVÝCH MAPOVÝCH SLUŽEB

PŘEHLED A MOŽNOSTI VYUŽITÍ WEBOVÝCH MAPOVÝCH SLUŽEB ÚTVAR ROZVOJE HLAVNÍHO MĚSTA PRAHY PŘEHLED A MOŽNOSTI VYUŽITÍ WEBOVÝCH MAPOVÝCH SLUŽEB Ústav rozvoje hlavního města Prahy publikuje prostřednictvím ArcGIS Serveru mnohé webové mapové služby (v souřadnicovém

Více

Současný svět Projekt č. CZ.2.17/3.1.00/32038, podpořený Evropským sociálním fondem v rámci Operačního programu Praha adaptabilita

Současný svět Projekt č. CZ.2.17/3.1.00/32038, podpořený Evropským sociálním fondem v rámci Operačního programu Praha adaptabilita Aktivní webové stránky Úvod: - statické webové stránky: pevně vytvořený kód HTML uložený na serveru, ke kterému se přistupuje obvykle pomocí protokolu HTTP (HTTPS - zabezpečený). Je možno používat i různé

Více

Server-side technologie pro webové aplikace

Server-side technologie pro webové aplikace Server-side technologie pro webové aplikace PIA 2011/2012 Téma 6 Copyright 2006 Přemysl Brada, Západočeská univerzita Server-side scriptování Cíl dynamické generování webového obsahu/rozhraní integrace

Více

1. Struktura stránky, zásady při psaní kódu, MVC pattern. Web pro kodéry (Petr Kosnar, ČVUT, FJFI, KFE, PINF 2008)

1. Struktura stránky, zásady při psaní kódu, MVC pattern. Web pro kodéry (Petr Kosnar, ČVUT, FJFI, KFE, PINF 2008) 1. Struktura stránky, zásady při psaní kódu, MVC pattern Web pro kodéry (Petr Kosnar, ČVUT, Obsah } Terminologie } Prezentace x Obsah } Struktura kódu } Sémantika kódu } Struktura stránky } Šablony } Template

Více

Komponentově orientované webové frameworky. Jiří Stránský twitter.com/jistr

Komponentově orientované webové frameworky. Jiří Stránský twitter.com/jistr Komponentově orientované webové frameworky Jiří Stránský jistr@jistr.net twitter.com/jistr O čem to bude Three-Tier aplikace MVC frameworky Komponentově orientované frameworky Apache Wicket Three-Tier

Více

Mgr. Vlastislav Kučera přednáška č. 2

Mgr. Vlastislav Kučera přednáška č. 2 Mgr. Vlastislav Kučera přednáška č. 2 Struktura stránky hlavička meta tagy titulek stránky připojení stylů,... CSS

Více

Enterprise Java (BI-EJA) Technologie programování v jazyku Java (X36TJV)

Enterprise Java (BI-EJA) Technologie programování v jazyku Java (X36TJV) Příprava studijního programu Informatika je podporována projektem financovaným z Evropského sociálního fondu a rozpočtu hlavního města Prahy. Praha & EU: Investujeme do vaší budoucnosti Enterprise Java

Více

Django Urls, views, templates

Django Urls, views, templates Django Urls, views, templates Django URL Adresa URL je webová adresa, která je vidět v adresním řádku prohlížeče Například 127.0.0.1:8000 nebo https://djangoproject.com V Djangu používáme tzv. URLconf

Více

DEVFEST ANGULAR 2 WORKSHOP. angular.cz

DEVFEST ANGULAR 2 WORKSHOP. angular.cz DEVFEST 2016 - ANGULAR 2 WORKSHOP Milan Lempera @milanlempera Víťa Plšek @vitaplsek Matěj Horák @horakmat angular.cz O nás 0 1 Milan Lempera @milanlempera php, javascript, clojure(script) Víťa Plšek @vitaplsek

Více

Webové služby. služby OctopusPro

Webové služby. služby OctopusPro OctopusPro s.r.o. Webové služby pro služby OctopusPro 1 CENOVÉ MAPY Verze: 1.0 Datum vytvoření: 21.10.2015 Datum poslední aktualizace: 21.10.2015 Copyright OctopusPro s.r.o, Praha, 2012-2015 S t r á n

Více

Tvorba informačních systémů

Tvorba informačních systémů Tvorba informačních systémů Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2007/2008 c 2006 2008 Michal Krátký, Miroslav Beneš Tvorba informačních

Více

Informační systém pro rezervaci pokojů hotelu SPORT

Informační systém pro rezervaci pokojů hotelu SPORT VŠB Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Katedra informatiky Informační systém pro rezervaci pokojů hotelu SPORT Programátorská příručka systému Příloha bakalářské práce 2006

Více

Postup. Úvodem. Hlavní myšlenka frameworku. application. system. assets. uploads

Postup. Úvodem. Hlavní myšlenka frameworku. application. system. assets. uploads Postup Úvodem Můj úkol při tomto projektu byl vytvořit model pro data, dle návrhového vzoru MVC. Jelikož v poslední době pracuji spíše s návrhovým vzorem HMVC (http://en.wikipedia.org/wiki/hmvc) ve frameworku

Více

Technologie společnosti Microsoft pro vývoj softwarových aplikací

Technologie společnosti Microsoft pro vývoj softwarových aplikací Technologie společnosti Microsoft pro vývoj softwarových aplikací Bakalářská práce, VŠCHT Praha 2009/2010 Domovská stránka: http://technologie-ms.deedx.cz Autor: Martin Šimeček, kruh 358 martin.simecek@vscht.cz

Více

Mgr. Vlastislav Kučera lekce č. 2

Mgr. Vlastislav Kučera lekce č. 2 Mgr. Vlastislav Kučera lekce č. 2 Struktura stránky hlavička meta tagy titulek stránky připojení stylů,... CSS to je to, co se

Více

Začínáme s vývojem pro Android

Začínáme s vývojem pro Android Pavel Petřek CTO Praha, 14. dubna 2010 Kdo je kdo Pavel Petřek Vývojář, přednášející, entusiasta světa chytrých telefonů (a velký jedlík) Spoluzakladatel Inmite Inmite Vývoj pro chytré telefony (Android:

Více

X36WWW. Vícevrstvá architektura webové aplikace Martin Klíma. Tvorba Webu 2 1

X36WWW. Vícevrstvá architektura webové aplikace Martin Klíma. Tvorba Webu 2 1 X36WWW Vícevrstvá architektura webové aplikace Martin Klíma 1 Architktura MVC M = Model V = View C = Controller Model reprezentuje aplikační logiku View reprezentuje prezentační logiku C reprezentuje logiku,

Více

language="javascript">... </script>.

language=javascript>... </script>. WWW (World Wide Web) je dnes společně s elektronickou poštou nejvyužívanější službou internetu. URL (Uniform Resource Locator) slouží ke kompletní adresaci informace na internetu. Udává jak protokol, který

Více

Úvod do aplikací internetu a přehled možností při tvorbě webu

Úvod do aplikací internetu a přehled možností při tvorbě webu CVT6 01a Úvod do aplikací internetu a přehled možností při tvorbě webu Internet a www Internet? Služby www ftp e-mail telnet NetNews konference IM komunikace Chaty Remote Access P2P aplikace Online games

Více

Vývoj Internetových Aplikací

Vývoj Internetových Aplikací 2 Vývoj Internetových Aplikací HTML a CSS Ing. Michal Radecký, Ph.D. www.cs.vsb.cz/radecky HTML a CSS - Tvorba webových stránek - Struktura - Obsah - Vzhled - Funkcionalita zdroj: http://www.99points.info

Více

ANGULAR 2 WORKSHOP. angular.cz

ANGULAR 2 WORKSHOP. angular.cz ANGULAR 2 WORKSHOP Milan Lempera @milanlempera Víťa Plšek @vitaplsek Matěj Horák @horakmat angular.cz O nás 0-1 Matěj Horák @horakmat java, javascript Víťa Plšek @vitaplsek java, javascript angular.cz/gdg-brno-a2

Více

Serverové skriptovací technologie

Serverové skriptovací technologie 4IZ228 tvorba webových stránek a aplikací Jirka Kosek Poslední modifikace: $Date: 2011/11/10 17:41:58 $ Obsah Úvod... 3 Základní principy generování stránek na serveru... 4 Interakce s webovou aplikací

Více

Jakub Čermák <jakub@jcermak.cz> http://www.jcermak.cz. Microsoft Student Partner

Jakub Čermák <jakub@jcermak.cz> http://www.jcermak.cz. Microsoft Student Partner Jakub Čermák http://www.jcermak.cz Microsoft Student Partner Úvod, příklady použití, trocha teorie Struktura aplikace Typy obecně, primitivní typy, speciální typy Podmínky, cykly, namespaces

Více

Škola: Gymnázium, Brno, Slovanské náměstí 7 III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN

Škola: Gymnázium, Brno, Slovanské náměstí 7 III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN Škola: Gymnázium, Brno, Slovanské náměstí 7 Šablona: III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN prostřednictvím ICT Číslo projektu: CZ.1.07/1.5.00/34.0940

Více

Distribuované systémy a výpočty

Distribuované systémy a výpočty Distribuované systémy a výpočty X36DSV Jan Janeček XML-RPC jednoduchá definice www.xmlrpc.com implementace obvykle opřené o XML parser X36DSV - Distribuované systémy a výpočty (3) 2 XML-RPC jednoduché

Více

Servlety a JSP. Petr Adámek, petr.adamek@ibacz.eu

Servlety a JSP. Petr Adámek, petr.adamek@ibacz.eu Servlety a JSP Petr Adámek, petr.adamek@ibacz.eu Úvod Rekapitulace vstupních znalostí Standardy Nástroje (Běhové prostředí, nástroje pro vývoj) Servlety JSP JSP značky EL (Expression Language) Internacionalizace

Více

Tvorba webu. Úvod a základní principy. Martin Urza

Tvorba webu. Úvod a základní principy. Martin Urza Tvorba webu Úvod a základní principy Martin Urza World Wide Web (WWW) World Wide Web (doslova celosvětová pavučina ) je označení pro mnoho dokumentů rozmístěných na různých serverech po celém světě. Tyto

Více

Základy programování v jazyce JAVA

Základy programování v jazyce JAVA DBS 4. ročník Programování DB aplikací v jazyce JAVA Příklad MVC: Aplikace shop Základy programování v jazyce JAVA Programování základních objektů DB aplikace v jazyce JAVA si představíme na aplikaci,

Více

Třídy a objekty. Třídy a objekty. Vytvoření instance třídy. Přístup k atributům a metodám objektu. $z = new Zlomek(3, 5);

Třídy a objekty. Třídy a objekty. Vytvoření instance třídy. Přístup k atributům a metodám objektu. $z = new Zlomek(3, 5); Programovací jazyk PHP doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Obsah Třídy a objekty Výjimky Webové aplikace

Více

Historie, současnost a budoucnost ASP.NET

Historie, současnost a budoucnost ASP.NET Historie, současnost a budoucnost ASP.NET Michal Altair Valášek Development & Security Consultant, Altairis michal.valasek@altairis.cz www.aspnet.cz www.secpublica.cz Microsoft.NET Framework Patnáct let

Více

Novinky v ASP.NET MVC6

Novinky v ASP.NET MVC6 Novinky v ASP.NET MVC6 Tomáš Jecha (MVP) tomas@jecha.net jechtom www.jecha.net Školení vývojářů www.dotnetcollege.cz Články a diskuzní fóra www.dotnetportal.cz Verze ASP.NET 5 a MVC 6 Aktuální Beta 8 (feature

Více

Tvorba informačních systémů

Tvorba informačních systémů Tvorba informačních systémů Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2005/2006 c 2006-2007 Michal Krátký, Miroslav Beneš Tvorba informačních

Více

Návrh a tvorba WWW stránek 1/8. Formuláře

Návrh a tvorba WWW stránek 1/8. Formuláře Návrh a tvorba WWW stránek 1/8 Formuláře význam předávání hodnot od uživatele skriptům mezi značkami a základní atributy action definuje obslužný skript, nelze v XHTML method metoda, kterou

Více

Zabezpečení webové vrstvy a EJB projektu Část nastavení specifická pro Glassfish, část dána Java EE

Zabezpečení webové vrstvy a EJB projektu Část nastavení specifická pro Glassfish, část dána Java EE X33EJA Security, Realms Zabezpečení webové vrstvy a EJB projektu Část nastavení specifická pro Glassfish, část dána Java EE 'web.xml' 'glassfish-web.xml' dále nutno nastavit realm v admin. konzoli GF 1

Více

Základy jazyka C# Obsah přednášky. Architektura.NET Historie Vlastnosti jazyka C# Datové typy Příkazy Prostory jmen Třídy, rozhraní

Základy jazyka C# Obsah přednášky. Architektura.NET Historie Vlastnosti jazyka C# Datové typy Příkazy Prostory jmen Třídy, rozhraní Základy jazyka C# doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Obsah přednášky Architektura.NET Historie Vlastnosti

Více

Sem vložte zadání Vaší práce.

Sem vložte zadání Vaší práce. Sem vložte zadání Vaší práce. České vysoké učení technické v Praze Fakulta informačních technologií Katedra softwarového inženýrství Bakalářská práce Cesta k bohatství (internetová aplikace) Lukáš Kmoch

Více

Tvorba WWW stránek. Mojmír Volf mojmir.volf@tul.cz https://www.nti.tul.cz/wiki/wikiuser:mojmir.volf 485 353 675

Tvorba WWW stránek. Mojmír Volf mojmir.volf@tul.cz https://www.nti.tul.cz/wiki/wikiuser:mojmir.volf 485 353 675 Tvorba WWW stránek Mojmír Volf mojmir.volf@tul.cz https://www.nti.tul.cz/wiki/wikiuser:mojmir.volf 485 353 675 Zdroje KRUG: Web design - nenuťte uživatele přemýšlet.. Computer Press, 2003. PROKOP M.: CSS

Více

Protokol HTTP 4IZ228 tvorba webových stránek a aplikací

Protokol HTTP 4IZ228 tvorba webových stránek a aplikací 4IZ228 tvorba webových stránek a aplikací Jirka Kosek Poslední modifikace: $Date: 2006/11/23 15:11:51 $ Obsah Úvod... 3 Co je to HTTP... 4 Základní model protokolu... 5 Struktura požadavku v HTTP 1.0 a

Více

1 - Úvod do platformy.net. IW5 - Programování v.net a C#

1 - Úvod do platformy.net. IW5 - Programování v.net a C# 1 - Úvod do platformy.net IW5 - Programování v.net a C# Strana 1 Obsah přednášky Objektově orientované paradigma.net Framework Základní rysy jazyka C# Strana 2 Objektová orientace C# implementuje základní

Více

Připravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové aplikace

Připravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové aplikace Připravil: Ing. Jiří Lýsek, Ph.D. Verze: 16. 4. 2019 Webové aplikace ES6, Vue strana 2 ES6, ES7... ES NEXT Nová/rozšířená syntaxe Mnoho vylepšení Není podporováno ve všech prohlížečích https://caniuse.com/

Více

Snadný vývoj webových aplikací s Nette. Lukáš Jelínek

Snadný vývoj webových aplikací s Nette. Lukáš Jelínek Snadný vývoj webových aplikací s Nette Lukáš Jelínek Proč framework? ušetří spoustu práce (implementace, úpravy) vývoj = co udělat, ne jak to udělat bezpečnost štábní kultura prostředky pro ladění podpora

Více

Programování v jazyku C# II. 8.kapitola

Programování v jazyku C# II. 8.kapitola Programování v jazyku C# II. 8.kapitola Obsah Kontrolky Validace Stavy Bezpečnost 2/27 Web formuláře Kontrolky na formuláři označené atributem runat="server" HTML kontrolky těsně kopírují rozhraní dané

Více

Ruby on Rails. VŠE, Jiří Hradil

Ruby on Rails. VŠE, Jiří Hradil Ruby on Rails VŠE, 5.5.2017 Jiří Hradil jiri@hradil.cz Co jsou Ruby on Rails? http://rubyonrails.org web framework - píšou se v tom web aplikace open source, zadara, 4200 contributors Ruby - objektový

Více

Tvorba informačních systémů

Tvorba informačních systémů Tvorba informačních systémů Michal Krátký 1, Miroslav Beneš 1 1 Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2005/2006 c 2006 Michal Krátký, Miroslav Beneš Tvorba informačních

Více

Úvod do tvorby internetových aplikací

Úvod do tvorby internetových aplikací CVT6 01a Úvod do tvorby internetových aplikací Osnova předmětu (X)HTML a tvorba webu pomocí přímého zápisu kódu Tvorba web designu a skládání stránek z kousků Skriptovací jazyky na webu Návrh software

Více

Dobrý CMS Popis produktu a jeho rozšíření

Dobrý CMS Popis produktu a jeho rozšíření Dobrý CMS Popis produktu a jeho rozšíření 503M012.N01 11/09/2012 www.dlaex.cz info@dlaex.cz OBSAH 1 Úvod...3 2 Účel produktu...3 3 Vlastnosti produktu...3 3.1 Koncepce...3 3.2 Základní y...3 3.3 Doplňkové

Více

Vývoj informačních systémů. Architektura, návrh Vzory: Doménová logika

Vývoj informačních systémů. Architektura, návrh Vzory: Doménová logika Vývoj informačních systémů Architektura, návrh Vzory: Doménová logika Zachman Framework Zdroje Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides. Design Patterns: Elements of Reusable Object-Oriented

Více

WCF RIA Services. aneb jak na RIA aplikace v Silverlightu

WCF RIA Services. aneb jak na RIA aplikace v Silverlightu WCF RIA Services aneb jak na RIA aplikace v Silverlightu Tomáš Herceg Chief Software Architect @ Microsoft ASP.NET MVP http://www.herceg.cz, http://www.vbnet.cz Příklad ze života APP APP DB APP APP APP

Více

Michal Krátký. Tvorba informačních systémů, 2008/2009. Katedra informatiky VŠB Technická univerzita Ostrava. Tvorba informačních systémů

Michal Krátký. Tvorba informačních systémů, 2008/2009. Katedra informatiky VŠB Technická univerzita Ostrava. Tvorba informačních systémů Tvorba informačních systémů 1/49 Tvorba informačních systémů Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2008/2009 Tvorba informačních systémů 2/49 Úvod

Více

BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INFORMATION SYSTEMS STANISLAV SEHNAL

BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INFORMATION SYSTEMS STANISLAV SEHNAL VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV INFORMAČNÍCH SYSTÉMŮ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INFORMATION SYSTEMS WEBOVÉ ROZHRANÍ

Více

Po stisku Next se nám objeví seznam dostupných tříd (naše zkompilovaná třída User.KBI), viz následující obrázek.

Po stisku Next se nám objeví seznam dostupných tříd (naše zkompilovaná třída User.KBI), viz následující obrázek. Cvičení 2 Vytvoření webového formuláře pro danou třídu pomocí jazyka Caché Server Pages (CSP) prostřednictvím Caché Web Form Wizard. Činnosti potřebné pro zvládnutí úlohy : 1. Mít z předchozího cvičení

Více

Použití inteligentních značek s informačními službami

Použití inteligentních značek s informačními službami Použití inteligentních značek s informačními službami Jan Fransen Podokno úloh Zdroje informací v aplikacích sady Microsoft Office 2003 umožňuje uživatelům snadno prohledávat množství integrovaných či

Více

Webové Aplikace (6. přednáška)

Webové Aplikace (6. přednáška) Webové Aplikace (6. přednáška) Co je to Webová Aplikace Co je to Webová Aplikace Klient/Server model uživatelské rozhraní běží na straně klienta (prohlížeč) "logika" programu běží na serveru klient (prohlížeč)

Více

[ASP].NET Core Demystified. Miroslav Holec. Konzultant a lektor [ASP].NET Core.

[ASP].NET Core Demystified. Miroslav Holec. Konzultant a lektor [ASP].NET Core. [ASP].NET Core 2.1-2.2 Demystified Miroslav Holec Konzultant a lektor [ASP].NET Core mirek@miroslavholec.cz www.miroslavholec.cz Miroslav Holec Nezávislý konzultant a lektor [ASP].NET Core - školím ve

Více

Formuláře. Aby nám mohli uživatelé něco hezného napsat...... třeba co si o nás myslí!

Formuláře. Aby nám mohli uživatelé něco hezného napsat...... třeba co si o nás myslí! Formuláře Aby nám mohli uživatelé něco hezného napsat...... třeba co si o nás myslí! HTML formuláře: Formuláře Možnost, jak uživatel může vložit obsah na web - odeslat data na server - zpracovat data ve

Více

IS pro podporu BOZP na FIT ČVUT

IS pro podporu BOZP na FIT ČVUT IS pro podporu BOZP na FIT ČVUT Závěrečná zpráva pro 2. iteraci 21. dubna 2011 Zadavatel: Ing. Jiří Chludil Řešitelský tým: Jiří Kopecký Jan Kratochvíl Milan Matějček Štefan Pinďák Kristýna Streitová Úvod

Více

Inovace výuky prostřednictvím šablon pro SŠ

Inovace výuky prostřednictvím šablon pro SŠ Název projektu Číslo projektu Název školy Autor Název šablony Název DUMu Stupeň a typ vzdělávání Vzdělávací oblast Vzdělávací obor Tematický okruh Inovace výuky prostřednictvím šablon pro SŠ CZ.1.07/1.5.00/34.0748

Více

WWW a HTML. Základní pojmy. Ivo Peterka

WWW a HTML. Základní pojmy. Ivo Peterka WWW a HTML Základní pojmy WWW World Wide Web systém navzájem propojených stránek Stránky se mohou skládat z částí nacházejících se v různých částech světa. HTML HyperText Markup Language Slouží k psaní

Více

Python XML a Web 1 PGS 2012 23.2.2012

Python XML a Web 1 PGS 2012 23.2.2012 Python XML a Web 1 Obsah XML Validace DTD a XSD Práce s XML - SAX a DOM Python a XML Tvorba XML bez použití knihoven Knihovna PyXML SAX Knihovna PyXML DOM Knihovna LXML validace DTD a XSD 2 XML extensible

Více

VYSOKÁ ŠKOLA POLYTECHNICKÁ JIHLAVA Katedra elektrotechniky a informatiky Obor Počítačové systémy kombinovaná forma

VYSOKÁ ŠKOLA POLYTECHNICKÁ JIHLAVA Katedra elektrotechniky a informatiky Obor Počítačové systémy kombinovaná forma VYSOKÁ ŠKOLA POLYTECHNICKÁ JIHLAVA Katedra elektrotechniky a informatiky Obor Počítačové systémy kombinovaná forma Webová aplikace pro vizualizaci a správu prošlých tras z GPS přístrojů bakalářská práce

Více

Vývoj informačních systémů. Architektura, návrh Vzory: Doménová logika

Vývoj informačních systémů. Architektura, návrh Vzory: Doménová logika Vývoj informačních systémů Architektura, návrh Vzory: Doménová logika Zachman Framework Zdroje Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides. Design Patterns: Elements of Reusable Object-Oriented

Více

D R U P A L V O J T Ě C H K U S Ý @ W O J T H A www.vojtechkusy.cz

D R U P A L V O J T Ě C H K U S Ý @ W O J T H A www.vojtechkusy.cz DRUPAL VOJTĚCH KUSÝ @WOJTHA www.vojtechkusy.cz KDO JSEM D R U P A L V Ý V O J Á Ř / E V A N G E L I Z Á T O R & P H D. S T U D E N T postgraduální studium na ČVUT FSV Katedra inženýrské informatiky Obor

Více

Připravil: Ing. Jiří Lýsek, Ph.D. Verze: 13.5.2015 Webové technologie

Připravil: Ing. Jiří Lýsek, Ph.D. Verze: 13.5.2015 Webové technologie Připravil: Ing. Jiří Lýsek, Ph.D. Verze: 13.5.2015 Webové technologie RIA, JSON, REST, AngularJS strana 2 RIA - rich internet application chová se podobně jako desktopová aplikace velké množství logiky

Více

Univerzita Karlova v Praze. Matematicko-fyzikální fakulta BAKALÁŘSKÁ PRÁCE. David Ligr. Systém pro správu obsahu pro základní a střední školy

Univerzita Karlova v Praze. Matematicko-fyzikální fakulta BAKALÁŘSKÁ PRÁCE. David Ligr. Systém pro správu obsahu pro základní a střední školy Univerzita Karlova v Praze Matematicko-fyzikální fakulta BAKALÁŘSKÁ PRÁCE David Ligr Systém pro správu obsahu pro základní a střední školy Katedra distribuovaných a spolehlivých systémů Vedoucí bakalářské

Více

Tvorba informačních systémů

Tvorba informačních systémů Tvorba informačních systémů Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2007/2008 c 2006-2008 Michal Krátký, Miroslav Beneš Tvorba informačních

Více

Enterprise Java (BI-EJA) Technologie programování v jazyku Java (X36TJV)

Enterprise Java (BI-EJA) Technologie programování v jazyku Java (X36TJV) Příprava studijního programu Informatika je podporována projektem financovaným z Evropského sociálního fondu a rozpočtu hlavního města Prahy. Praha & EU: Investujeme do vaší budoucnosti Enterprise Java

Více

Code Contracts. Robert Haken [MVP ASP.NET, MCT] Software architect, Owner at HAVIT, s.r.o. knowledge-base.havit.cz

Code Contracts. Robert Haken [MVP ASP.NET, MCT] Software architect, Owner at HAVIT, s.r.o. knowledge-base.havit.cz Code Contracts Robert Haken [MVP ASP.NET, MCT] Software architect, Owner at HAVIT, s.r.o. knowledge-base.havit.cz Contracts volaná strana deklaruje, jak se chová vzniká dohoda mezi volající a volanou stranou

Více

Sem vložte zadání Vaší práce.

Sem vložte zadání Vaší práce. Sem vložte zadání Vaší práce. České vysoké učení technické v Praze Fakulta informačních technologií Katedra softwarového inženýrství Bakalářská práce Rezervační komponenta pro informační systém sportovního

Více

Stručný obsah. Část I Úvod. Část II Komponenty

Stručný obsah. Část I Úvod. Část II Komponenty Stručný obsah Část I Úvod 1. Úvod do Zend Frameworku... 23 2. Instalace Zend Frameworku... 31 3. Rychlý start se Zend Frameworkem... 43 Část II Komponenty 4. Základní komponenty... 61 5. Řadič... 93 6.

Více

Michal Krátký, Miroslav Beneš

Michal Krátký, Miroslav Beneš Tvorba informačních systémů 1/20 Tvorba informačních systémů Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2008/2009 Tvorba informačních

Více

Proč Angular JS framework?

Proč Angular JS framework? Angular JS Proč Angular JS framework? Open Source vytvořený a spravovaný Googlem Vhodný pro tvorbu formulářových aplikací Dodá aplikaci základní architekturu a udržovatelnost Deklarativní způsob práce

Více