1 / 23

Aplikační programové vybavení

Aplikační programové vybavení. Aplikace. Inženýrství. Hlavní zásady inženýrství reprodukovatelnost měřitelnost a parametrizovatelnost přenositelnost typizace a standardizace dokumentace práce organizace práce. Aplikace. Aplikace je program určený pro uživatele.

ariel-moss
Download Presentation

Aplikační programové vybavení

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Aplikační programové vybavení Aplikace

  2. Inženýrství • Hlavní zásady inženýrství • reprodukovatelnost • měřitelnost a parametrizovatelnost • přenositelnost • typizace a standardizace • dokumentace práce • organizace práce

  3. Aplikace • Aplikace je program určený pro uživatele. • Aplikaci je možné rozdělit na části: • prezentační vrstva • vstup dat, zobrazení výsledků, uživatelské rozhraní, logika uživatelského rozhraní • aplikační vrstva • zpracování dat, výpočty, logika práce s daty, business logic • datová vrstva • ukládání a čtení dat, logika skladování dat

  4. Vznik aplikace • Postup vytvoření aplikace zahrnuje: • rozbor zadání • návrh architektury • volba technologie • programování • testování • Volba technologie a návrh architektury probíhají souběžně a prolínají se • Počítač je nutný pouze na závěr programování a testování

  5. Krok 1 - rozbor zadání • záleží na okolnostech • nejzásadnější proces celého vývoje aplikace • vyžaduje analýzu prostředí zákazníka • nejosvědčenější metody: • kvalifikovaný odhad • nekvalifikovaný odhad • psychologie • věštění z křišťálové koule • věštění z čajových lístků • http://www.projectcartoon.com/ProjectCartoon.pdf

  6. http://stuffthathappens.com

  7. Krok 2 - architektura aplikace • struktura a způsob rozložení služeb aplikace • prezentační služby (zobrazování) • prezentační logika (rozložení UI) • logika aplikace (aplikační algoritmy) • logika dat (algoritmy pro práci s daty) • ovládání dat (řízení přístupu k úložišti) • Obecně je nejvýhodnější třívrstvá (3-tier) architektura. • Přesto se používá i dvojvrstvá (2-tier) architektura • několik variant prezentační vrstva aplikační vrstva datová vrstva

  8. Dvojvrstvá architektura 1 • klient-server se vzdálenými daty (file server) • velká zátěž klienta • velká zátěž přenosového kanálu • malá zátěž serveru • subversion, DFS, NFS

  9. Dvojvrstvá architektura 2 • klient-server se vzdálenou prezentací • malé zatížení klienta a přenosového kanálu • velká zátěž serveru • z pohledu klienta není rozlišitelné od třívrstvé architektury • případ mnoha webových aplikací

  10. Dvojvrstvá architektura 3 • klient-server s rozdělenou logikou (hybridní) • dobré rozložení zátěže • horší rozšiřitelnost a přenositelnost • z pohledu klienta není rozlišitelné od třívrstvé architektury • případ některých webových aplikací

  11. Dvojvrstvý model • Data jsou uložena ve formátu daném potřebami aplikace – jsou nepřenositelná. • Změna datového skladu vyžaduje změnu všech klientů. • Důvody používání byly: • snadnější první implementace a návrh • nerozvinuté nebo nedostupné univerzální technologie • databázové servery • aplikační servery • komponenty

  12. Třívrstvá architektura • dobré rozložení zátěže • malá zátěž komunikačních kanálů • dobrá rozšiřitelnost (s využitím standardizovaných rozhraní) • flexibilní architektura • webové aplikace

  13. Výhody třívrstvé architektury • Prezentační a datová vrstva jsou oddělené aplikační vrstvou. • prezentační klienta nemůže ovlivnit datový sklad • zvýšení bezpečnosti, spolehlivosti a flexibility • při použití vhodných rozhraní je možné měnit prezentační klienty • při použití vhodných rozhraní je možné měnit datový sklad • Rozhraní (interface) je něco, co je mezi něčím a něčím jiným.

  14. Příklad • Webový prohlížeč je zcela nezávislý na databázovém serveru. • Webovému prohlížeči je lhostejné, jaký databázový server poskytl data. • Můžeme změnit datový sklad a prohlížeč „si toho nevšimne“. • Můžeme změnit prohlížeč a databázový server „si toho nevšimne“. • Aplikační úroveň tvoří rozhraní mezi datovou a prezentační vrstvou.

  15. Třívrstvá architektura • podpora distribuovaných systémů

  16. Krok 3 – technologie • výběr technologie podle požadovaných vlastností aplikace: • síťová / lokální • klient-server / samostatná (standalone) • kompilovaná / interpretovaná • nativní (native) / runtime • databázová aplikace • webová aplikace • výběr jazyka a vývojového prostředí • IDE – integrated development environment

  17. Různé přístupy Roste: náklady na vývoj výkon možnosti interakce s uživatelem množství dostupných funkcí OS • interpretovaný kód • skriptovací jazyky (PHP, VBS (ASP), JSP), … • runtime prostředí (managed) • jazyky Java (JRE), C# (.NET), … • nativní aplikace • C, C++, Delphi, … Roste: rychlost vývoje přenositelnost HW požadavky footprint

  18. Webová aplikace • WA je aplikace přístupná přes webový server. • Webová stránka slouží jen k poskytování obsahu (jen čtení dat). • Webová aplikace umožňuje interakci s uživatelem (čtení i vkládání dat). • Webová aplikace je soubor více či méně propojených programů. • každý skript je téměř samostatný • Výhody: rychlý vývoj (RAD), vysoká přenositelnost, nízké náklady na provoz

  19. Výhody a nevýhody webových aplikací • O některé věci se programátor nemusí starat • O některé věci se programátor nemůže starat • 1.Vložit mezeru mezi slovy „Přenosová rychlost:“ a veličinou přenosové rychlosti: • 2.Opravit chybu ve větě: „Před otevřením souboru thoto typu vždy zobrazit tento dotaz“.

More Related