Připravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové aplikace
|
|
- Romana Pavlíková
- před 8 lety
- Počet zobrazení:
Transkript
1 Připravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové aplikace Šablonovací systémy, ORM, MVC, MVP, Frameworky, Testování
2 strana 2 Otázka k zamyšlení: Dokázali byste napsat server-klient aplikaci s GUI a databází v relativně krátkém čase v něčem jiném než HTML/PHP? asi ne v PHP to umí kde kdo (i děti na ZŠ) mohou to dělat dobře? jakou?
3 strana 3 Tvorba software a návrh Dobrý návrh aplikací je důležitý pro větší projekty udržovatelnost testovatelnost termín dodání vlastní psaní kódu je dílčí část procesu v PHP se píšou aplikace malé i velké je snadné začít může být těžké růst aby kód mohl upravovat i někdo jiný, aby mohlo spolupracovat víc vývojářů volte správné nástroje pro vaše cíle
4 strana 4 Návrhový vzor znovupoužitelné řešení nějakého problému Programování Elektrotechnika Strojírenství Základní jednotka Řádek kódu Součástka (kondenzátor, odpor, dioda, ) Celek Funkce, třída Elektrický obvod (zapojené součástky) Funkční celek Vrstva aplikace, knihovna Osazený plošný spoj (zesilovač, zdroj, trafo, ) Produkt Software Zařízení Stroj Díl (hřídel, ozubené kolo, šroubek, ) Sestava (převod, sešroubované díly, ložisko, ) Spojka, motor, převodovka, diferenciál
5 strana 5
6 strana 6 Počátky PHP do r malé aplikace napsány jako mix PHP a HTML kódu větší aplikace procedurálně + šablona podpora objektů reálně funkční až od PHP5
7 strana 7 Šablonovací systémy např. Smarty, Twig, Latte a různá jiná řešení (i vlastní) Šablony se kompilují do PHP obvykle se parsují pomocí regulárních výrazů caching
8 strana 8 Šablonovací systémy - výhody Oddělení PHP a HTML oddělení prezentační logiky od aplikační přehlednost dělitelnost práce rychlost, odbornost, náklady Bezpečnost XSS htmlspecialchars()
9 strana 9 Šablonovací systémy - nevýhody ne vždy podpora syntaxe v IDE Netbeans + Latte je OK člověk si musí pamatovat názvy proměnných je důležitá komunikace programátor <-> kodér je nutné napsat dokumentaci
10 strana 10 Šablonovací systémy princip zkompilovaná šablona uložená v mezipaměti PHP kód cache šabloně se předají proměnné a načte se jako PHP kód přes include
11 strana 11 Šablonovací systémy ukázka //$data je asoc. pole function runtemplate($tmpl, } extract($data); include("dir/". $tmpl); array $data) {
12 strana 12 Šablonovací systémy ukázka {if($form->haserror())} <p>chyba...</p> {endif}
13 strana 13 Šablonovací systémy kompilace $script = preg_replace( ' {if\((.+?)\)} i', '<?php if(\\1) {?>', $script); $script = preg_replace( ' {end[a-z]*} i', '<?php }?>', $script);
14 strana 14 Šablonovací systémy ukázka <?php if($form->haserror()) {?> <p>chyba...</p> <?php }?>
15 strana 15 Šablonovací systémy ukázka {if($form->haserror())} <p>chyba...</p> {endif} <?php if($form->haserror()) {?> <p>chyba...</p> <?php }?>
16 strana 16 Šablonovací systémy ukázka <table> {foreach($var as $k => $v)} <tr><td> </td></tr> {endforeach} </table>
17 strana 17 Šablonovací systémy ukázka <table> <?php foreach($var as $k => $v) {?> <tr><td> </td></tr> <?php }?> </table>
18 strana 18 ORM Object Relational Mapping mapuje databázi na objekty využívá cizí klíče nebo konfigurační soubory pro relace Vzory (design pattern): Active record Data mapper Generátory kódu
19 strana 19 ORM výhody a nevýhody výhody není nutné psát jednoduché SQL je nutné upravit strukturu DB některé ORM např. nepodporují kompozitní klíče nevýhody složitější dotazy a spojení tabulek se někdy realizují složitě
20 strana 20 ORM Active record objekty si řeší práci s DB samy $obj->save(), $obj->delete(); Data mapper práce s DB přes další objekt tzv. "mapper" $mapr->save($obj), $mapr->delete($obj)
21 strana 21 Active record vs Data mapper co dělat se smazanou instancí? Active record objekt obsahuje DB metody jako insert delete update Data mapper entita neobsahuje DB metody mapper může pracovat nad různými úložišti Mapper může vrátit instanci podle dat
22 strana 22 ORM ukázka - Active Record $user = new User(); $user->load(5); $user-> = ' '; $user->save(); $user->savetofile( ); třída User je asi mix SQL kódu a logiky modelu a asi spousta dalšího
23 strana 23 ORM ukázka - Data mapper co to je a odkud? $daodb = daosql::users(); $user = $daodb->get(5); if($user instanceof Admin) { } $user-> = " "; $daodb->store($user); entita User je nezávislá na úložišti $daofile = daofile::user(); $daofile->store($user);
24 Active record vs Data mapper strana 24
25 strana 25 MVC a MVP M = model kód měnící data v DB V = view prezentační vrstva C = controller P = presenter
26 strana 26 MVC vs MVP MVC controller sleduje akce uživatele a předá informace o změně do view více pro desktop nebo RIA MVP presenter předává data view a to na základě dat zobrazí celé rozhraní vhodné pro klasický web view je na klientské straně (oddělené a pasivní)
27 MVC vs MVP strana 27
28 strana 28 Realita webových aplikací nebo presenter?
29 strana 29 MVC nebo MVP? hlavně oddělit business logiku (M), zobrazovací logiku (V) a aplikační logiku (C/P) závisí více na technických prostředcích MVW - Model View Whatever
30 MVC v PHP strana 30
31 MVC v JS strana 31
32 strana 32 PHP Frameworky ucelené systémy určující způsob práce knihovny architektura aplikace
33 PHP frameworky - Google trends strana 33
34 strana 34 Který si vybrat moderní, bezpečný a vyvíjený vhodný pro můj cíl s dobrou dokumentací používající nástroje, které znám Composer, Git, PhpUnit, s velkou (aktivní) komunitou
35 strana 35 Framework VS knihovna Inversion of control Framework řídí vás, knihovnu řídíte vy Framework = ucelená sada myšlenek a postupů složená z knihoven a sladěná tak, aby co nejlépe plnila svůj účel
36 strana 36 Funkce (výhody) frameworku Definuje architekturu aplikace např. MVP, push based, pull based Zlepšuje testovatelnost aplikace Poskytuje: práce s URL (routing) šablonovací systém API pro databázi (např. ORM)
37 strana 37 Funkce (výhody) frameworku API pro HTTP data a formuláře GET a POST, COOKIE, SESSION, soubory migrace DB seedy DB některé mají CLI generování modelů a DB migrací seedování databáze spouštění testů práce v týmu command line interface
38 strana 38 Nevýhody frameworku Ne každému musí vyhovovat to, co autorovi frameworku je možné použít jiný framework což ale nejde, pokud máte projekt z poloviny hotov nebo taky žádný MVC lze realizovat různě (není to složité) lze si vybrat knihovny a používat je
39 strana 39 Zpracování požadavku frameworkem obvykle se vše posílá přes index.php framework podle cesty v URL osloví správný presenter - routing spustí akce modelu (CRUD) předá data z modelu do šablony šablona vygeneruje HTML HTML se pošle přes HTTP
40 strana 40 Pretty (friendly, nice, semantic, ) URL a mod_rewrite Modul pro HTTP server Apache, na základě pravidel přesměruje HTTP požadavek soubor.htaccess regulární výrazy RewriteCond %{REQUEST_FILENAME}!-f RewriteRule ^(.*)$ index.php?q=$1 [L,QSA] L = last QSA = query string append
41 strana 41 Pretty URL a mod_rewrite routing zpracuje parametr "q" a předá další parametry presenteru některé routery dokážou např. podle "id" načíst instanci modelu =>
42 strana 42 Pretty URL a mod_rewrite někdy má entita přímo fragment URL unikátní klíč nad sloupcem varchar(n) router předá pojmenovaný fragment do presenteru route: produkt/{$producturl} =>
43 strana 43 Composer Systém pro stahování aplikačních balíčků Konfigurace v JSON souborech obdobné nástroje i pro jiné ekosystémy Bower (JS), Gem (ruby), Pip (Python)
44 strana 44 Composer příkazy CLI composer install instalace podle composer.lock souboru (zajistí všem vývojářům stejnou verzi) composer update aktualizace možnost stažení např. sandboxu pro nový projekt
45 strana 45 Git systém pro správu verzí kódu pracuje lokálně + centrální úložiště větve CLI push, pull, commit, add, merge, rebase Github, Bitbucket systém SVN se v podstatě nepoužívá
46 strana 46 Framework Nette Český MVP framework David Grudl a Nette foundation bezpečný, moderní Hlavní součásti: Latte šablony Tracy (Laděnka) Dibi a Nette databases Adminer Konfigurace ve formátu Neon
47 strana 47 Nette - šablony Latte makra dědičnost (layout) místo generování URL píšete volání funkcí (presenter)
48 strana 48 Nette - Tracy (Laděnka) pomocník pro ladění aplikace vyjímky a výpisy chbových hlášení měření času SQL dotazy
49 strana 49 Nette - databáze - Dibi a Database ORM vrstva Dibi v podstatě rozšiřuje PDO::prepare() není ORM ORM Nette\Database založená na notorm
50 strana 50 Nette - databáze Je možné použít např. ORM Doctrine DQL jazyk objektový dialekt SQL podobná, ale jiná syntaxe a hlavně logika podobný Hibernate (Java) $query = $em->createquery('select u FROM MyProject\Model\User u WHERE u.age > 20'); $users = $query->getresult();
51 strana 51 Adminer Je použit jako základní administrační nástroj podobný jako PHPMyAdmin existuje verze Adminer Editor podpora různých DB (přes PDO)
52 Adminer strana 52
53 strana 53 Ostaní Frameworky Laravel Eloquent ORM, šablony Blade Symphony Doctrine ORM, šablony Twig CakePHP Code Igniter yii...
54 strana 54 Shrnutí Frameworků je mnoho Výběr není snadný, ale jsou podobné Je to jen nástroj
55 strana 55 Jiný přístup Aplikace na serveru realizuje pouze REST API REST = Representational State Transfer Vše ostatní napsáno jako JS aplikace pomocí JS frameworku šablony zpracované také pomocí JS např. Angular JS
56 strana 56 REST API jen jedna URL např. /api/clanky GET POST - vytvoření nového PUT - aktualizace DELETE
57 strana 57 Testování webových aplikací Codeception Akceptační testy Funkcionální testy Unit testy - PHPUnit každé testové prostředí je možné upravit/rozšířit
58 strana 58 Proč testy? Kvalita kódu kódu s testy lze dlouhodobě důvěřovat co funguje dnes, nemusí fungovat zítra, ale jen testy to můžou odhalit ale nemusí Při práci v týmu nemůžete vědět, co změna ve vaší části kódu způsobí jinde to samé při delší přestávce ve vývoji
59 strana 59 Codeception výhody jednoduchá instalace testy psané v PHP ovládání přes příkazový řádek umí pracovat s různými frameworky framework musí mít plugin pro Codeception nevýhody nemá podporu v NetBeans a jiných IDE
60 strana 60 Akceptační testy Selenium Server simuluje chování návštěvníka, pomalé $I->wantTo('add a task'); $I->amOnPage("/"); $I->wait(1); $I->seeElement("form[name=add]"); $I->seeElement("form[name=add] input[type=submit]"); $I->fillField("title", "ukol 1"); $I->click("form[name=add] input[type=submit]"); $I->wait(1);
61 strana 61 Funkční testy podobné jako akceptační odešle HTTP požadavek, očekává že se něco např. objeví v DB nepotřebují prohlížeč jsou rychlejší je nutná podpora ze strany aplikace/frameworku jinak si musíme napsat vlastní plugin pro codeception
62 strana 62 Akceptační + funkční testy PhpBrowser HTTP klient bez renderování HTML WebDriver spolupracuje se Selenium server
63 strana 63 Unit testy Samostatné testování PHP tříd Codeception využívá PHPUnit PHPUnit má podporu v NetBeans a jiných IDE
64 strana 64 Zajímavosti Phalcon PHP framework jako modul pro PHP Ruby on Rails (RoR) framework postavený na jazyku Ruby v jisté době velmi populární a propagovaný, inspirací pro mnohé jiné frameworky Node.js serverside/cli JS systém
Připravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové aplikace
Připravil: Ing. Jiří Lýsek, Ph.D. Verze: 26. 2. 2019 Webové aplikace PHP OOP, PHP a databáze, migrace DB, ORM, šablony, MVC/MVP, PHP frameworky strana 2 PHP skriptovací jazyk dynamicky typovaný interpret
VícePřipravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové aplikace
Připravil: Ing. Jiří Lýsek, Ph.D. Verze: 23.2.2016 Webové aplikace PHP OOP, PHP a databáze, migrace DB, ORM, šablony, MVC/MVP, PHP frameworky strana 2 PHP skriptovací jazyk dynamicky typovaný interpret
VíceSnadný 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íceRuby 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íceObsah 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ícePř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íceIng. 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ícePř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íceRESTful 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ícePřipravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové aplikace
Připravil: Ing. Jiří Lýsek, Ph.D. Verze: 14.2.2017 Webové aplikace Úvod, web, HTTP komunikace - server/client, webový prohlížeč jako platforma, Apache strana 2 Vyučující Ing. Jiří Lýsek, Ph.D. Ing. Oldřich
VíceNástroje a frameworky pro automatizovaný vývoj. Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/
Nástroje a frameworky pro automatizovaný vývoj Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/ Proces vývoje webové aplikace Předepsaná adresářová struktura. Kompilace zdrojových kódů.
VícePHP 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Úvodem 9. Zpětná vazba od čtenářů 10 Zdrojové kódy ke knize 10 Errata 10. Než začneme 11
Obsah Úvodem 9 Zpětná vazba od čtenářů 10 Zdrojové kódy ke knize 10 Errata 10 Kapitola 1 Než začneme 11 Dynamické vs. statické stránky 11 Co je a k čemu slouží PHP 12 Instalace potřebného softwarového
VícePřipravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové aplikace
Připravil: Ing. Jiří Lýsek, Ph.D. Verze: 18.4.2016 Webové aplikace JSON, AJAX/AJAJ, zpracování na straně JS, JSONP, proxy, REST strana 2 JSON objekt JavaScript Object Notation { "nazev": hodnota, "cislo":
VícePřipravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové technologie
Připravil: Ing. Jiří Lýsek, Ph.D. Verze: 21.1.2016 Webové technologie Tworba webu, Hybridní aplikace, Responsivní design, HTML5, nová API strana 2 Úvod http://akela.mendelu.cz/~lysek/ IPI Úkol Cvičení
VíceKlíčová slova: dynamické internetové stránky, HTML, CSS, PHP, SQL, MySQL,
Anotace sady: Dynamické internetové stránky, VY_32_INOVACE_PRG_PHP_01 Klíčová slova: dynamické internetové stránky, HTML, CSS, PHP, SQL, MySQL, Stupeň a typ vzdělávání: gymnaziální vzdělávání, 4. ročník
VícePHP PHP je skriptovací programovací jazyk dynamických internetových stránek PHP je nezávislý na platformě
PHP PHP původně znamenalo Personal Home Page a vzniklo v roce 1996, od té doby prošlo velkými změnami a nyní tato zkratka znamená Hypertext Preprocessor. PHP je skriptovací programovací jazyk, určený především
VíceAplikační vrstva. Úvod do Php. Ing. Martin Dostal
Aplikační vrstva Úvod do Php Ing. Martin Dostal Co to je PHP? php soubory se nekompilují, interpret je spouští přímo bez překladu php běží na serveru php soubor je.txt soubor obsahující php kód: Zkrácený
VíceDobrý 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íceTří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ícePřipravil: Ing. Jiří Lýsek, Ph.D. Verze: 12.2.2015 Webové aplikace
Připravil: Ing. Jiří Lýsek, Ph.D. Verze: 12.2.2015 Webové aplikace Úvod strana 2 Vyučující Ing. Jiří Lýsek, Ph.D. Ing. Oldřich Faldík https://akela.mendelu.cz/~lysek/ https://akela.mendelu.cz/~xfaldik/wa/
VíceEvoluce deploye Od FTP po automatický deploy
Evoluce deploye Od FTP po automatický deploy Tomáš Huda Osnova FTP git-ftp git pull deploy skript git hooks automatický deploy - CI/CD databáze bezvýpadkový deploy Osnova FTP git-ftp git pull deploy skript
VíceVhodnost nasazení jednotlivých webových architektur, sdílení dat, perzistence, webové služby a REST, asynchronnost, messaging
Vhodnost nasazení jednotlivých webových architektur, sdílení dat, perzistence, webové služby a REST, asynchronnost, messaging 1. Vhodnost nasazení jednotlivých webových architektur - toto je podle Klímy
VíceBakalářské. Vzdělání: Telefon: Ostrava. Bydliště: Ukázky práce: Správa a monitoring platformy provozované na AWS
Web developer, System maintainer, AWS Cloud engineer Vzdělání: E-mail: Bakalářské martin@vyvoj.net Telefon: 732 969 367 Bydliště: Ukázky práce: Ostrava https://www.vyvoj.net PRAXE 1/2018 09/2018 Vývoje
VíceProjekt JetConf REST API pro vzdálenou správu
Projekt JetConf REST API pro vzdálenou správu Ladislav Lhotka lhotka@nic.cz 24. listopadu 2017 Osnova motivace, historie standardy: RESTCONF a YANG JetConf: implementace RESTCONF serveru backendy: Knot
VíceKomponentově 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íceKAPITOLA 3. Architektura aplikací na frameworku Rails. V této kapitole: modely, pohledy, řadiče.
KAPITOLA 3 Architektura aplikací na frameworku Rails V této kapitole: modely, pohledy, řadiče. 58 Část I: Začínáme Jedna ze zajímavých vlastností frameworku Rails spočívá v tom, že klade docela závažná
VíceMetodiky pro automatické testování webové aplikace. Ondřej Melkes, Martin Komenda
Metodiky pro automatické testování webové aplikace Ondřej Melkes, Martin Komenda Obsah Testování sw obecně Unit testy Integrační testy Testování UI Nesprávné testování sw Neznalost testovacího procesu
VíceTvorba 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íceDatabázové a informační systémy
Databázové a informační systémy 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 Jak ukládat a efektivně zpracovávat
Více1 Webový server, instalace PHP a MySQL 13
Úvod 11 1 Webový server, instalace PHP a MySQL 13 Princip funkce webové aplikace 13 PHP 14 Principy tvorby a správy webového serveru a vývojářského počítače 14 Co je nezbytné k instalaci místního vývojářského
VícePostup. Ú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íceNové jazykové brány do Caché. Daniel Kutáč
Nové jazykové brány do Caché Daniel Kutáč O čem budeme mluvit.net T/SQL Perl Python MultiValue Basic Téma.NET provider .NET Provider Co lze již dnes Factory / VisM ODBC.NET Web Services Factory a VisM
VíceInterSystems Caché Post-Relational Database
InterSystems Caché Post-Relational Database Martin Holoubek xholoub@fi.muni.cz Úvod InterSystems byla založena shodou okolností ve stejném roce jako její největší konkurent Oracle 1978 Caché je velmi vyspělý
VícePoužití databází na Webu
4IZ228 tvorba webových stránek a aplikací Jirka Kosek Poslední modifikace: $Date: 2010/11/18 11:33:52 $ Obsah Co nás čeká... 3 Architektura webových databázových aplikací... 4 K čemu se používají databázové
VíceAJAX. Dynamické změny obsahu stránek
AJAX Dynamické změny obsahu stránek Co je AJAX Co je AJAX Co je AJAX Co je AJAX Co je AJAX AJAX = Asynchronous JavaScript And XML XHR = XMLHttpRequest Ajax je sada technik a nástrojů, které umožňují dynamické
VíceIS 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ícePočítačová Podpora Studia. Přednáška 5 Úvod do html a některých souvisejících IT. Web jako platforma pro vývoj aplikací.
Přednáška 5 1. Stručný přehled vývoje html H T m l (HTML...XML... html5), (Web API, JSON, REST,AJAX) 2. Některé související IT IP adresa, doménová adresa, name servery JavaScritp, Jquery, Angular PHP vs
VíceDobrý FOTO Popis produktu a jeho rozšíření
Dobrý FOTO Popis produktu a jeho rozšíření 502M012.N00 11/11/2011 www.dobry-foto.cz 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í
VíceTechnologie 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ícePHP Best Practices. Please try to fit your code to 80 columns. That's decimal 80. A. Morton
PHP Best Practices Please try to fit your code to 80 columns. That's decimal 80. A. Morton Koncepce větších aplikací Front Controller Design Pattern Celý web má jeden přístupový bod, přes který se posílají
VíceVý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íceStruč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íce2012 ET NETERA a.s. Wicket přehled technologie Martin Strejc www.etnetera.cz 5.4.2012
Wicket přehled technologie Martin Strejc www.etnetera.cz 5.4.2012 Osnova přednášky 1. Vznik Wicketu 2. Co Wicket umí a co neumí? 3. Účely užití výhody a nevýhody 4. Rozšiřitelnost Wicketu 5. Srovnání s
VíceDELTA - STŘEDNÍ ŠKOLA INFORMATIKY A EKONOMIE, s.r.o. Obor informační technologie AJAX ESHOP. Maturitní projekt. Třída:
DELTA - STŘEDNÍ ŠKOLA INFORMATIKY A EKONOMIE, s.r.o. Obor informační technologie AJAX ESHOP Maturitní projekt Vypracoval: Denis Ptáček Třída: 4B Rok: 2014/2015 Obsah 1. Použité nástroje... 3 1.1 NetBeans
VíceInstalace 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íceStřední odborná škola a Střední odborné učiliště, Hořovice
Kód DUM : VY_32_INOVACE_DYN.1.18 Název materiálu: Anotace Autor Jazyk Očekávaný výstup 18 PHP- Základy práce s databází PHP - MySQL DUM naučí žáky postupu při vytvoření, připojení databáze a vytvoření
Více1. Webový server, instalace PHP a MySQL 13
Úvod 11 1. Webový server, instalace PHP a MySQL 13 Princip funkce webové aplikace 13 PHP 14 Principy tvorby a správy webového serveru a vývojářského počítače 14 Co je nezbytné k instalaci místního vývojářského
VíceDobrý SHOP Popis produktu a jeho rozšíření
Dobrý SHOP Popis produktu a jeho rozšíření 501M012.N01 11/11/2011 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Šifrování Autentizace Bezpečnostní slabiny. Bezpečnost. Lenka Kosková Třísková, NTI TUL. 22. března 2013
Šifrování Autentizace ní slabiny 22. března 2013 Šifrování Autentizace ní slabiny Technologie Symetrické vs. asymetrické šifry (dnes kombinace) HTTPS Funguje nad HTTP Šifrování s pomocí SSL nebo TLS Šifrování
VíceVyužití chemie v procesu testování webových aplikací vytvořených pomocí technologií PHP a Java
Využití chemie v procesu testování webových aplikací vytvořených pomocí technologií PHP a Java aneb Selenium v akci Michal Špaček, WebExpo 2008, Praha Proč vůbec testovat? Náš software nemá žádné chyby,
VíceSCM = Source Code Management software, základní typologie rozdělení je podle počtu a umístění základního úložiště kódu(=repository) na:
Otázka 16 - Y36SI3 Zadání Disciplinované přístupy ke změnám software (SCM). Nástroje pro správu a verzování zdrojového kódu. Řešení konfliktů v nástrojích pro správu zdrojového kódu. Slučování změn (operace
VíceSemináˇr Java X J2EE Semináˇr Java X p.1/23
Seminář Java X J2EE Seminář Java X p.1/23 J2EE Složitost obchodních aplikací robusní, distribuované, spolehlivé aplikace s transakcemi na straně serveru, klientské aplikace co nejjednodušší Snaha : Návrh,
VíceDatabáze II. 1. přednáška. Helena Palovská palovska@vse.cz
Databáze II 1. přednáška Helena Palovská palovska@vse.cz Program přednášky Úvod Třívrstvá architektura a O-R mapování Zabezpečení dat Role a přístupová práva Úvod Co je databáze Mnoho dat Organizovaných
VíceESET & Flexibee. Igor Hák, hak@eset.cz
ESET & Flexibee Igor Hák, hak@eset.cz Společnost ESET zaměření na IT bezpečnost ESET NOD32 Antivirus, ESET Smart Security,... začátky už v roce 1987, p. Trnka / p. Paško NOD Nemocnica na okraji disku ESET
VíceRuby 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ícelanguage="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íceMVVM pro desktop i web
MVVM pro desktop i web Tomáš Herceg CEO @ RIGANTI Co-founder of Update Conference Microsoft MVP tomas.herceg@riganti.cz @hercegtomas www.tomasherceg.com/blog MVVM Model View ViewModel { firstname: "Humphrey",
VíceGoogle Web Toolkit. Martin Šurkovský, SUR března Katedra informatiky
Google Web Toolkit Martin Šurkovský, SUR096 Vysoká škola Báňská - Technická univerzita Ostrava Katedra informatiky 29. března 2010 Martin Šurkovský, SUR096 (VŠB - TUO) Google Web Toolkit 29. března 2010
VícePopis logování v aplikačním serveru
Popis logování v aplikačním serveru Zpracoval: Tomáš Urych U Mlýna 2305/22, 141 Praha 4 Záběhlice Dne: 3.10.2011 tel.: +420 585 203 370-2 e-mail: info@eso9.cz Revize: Urych Tomáš www.eso9.cz Dne: 26.3.2018
VíceVYSOKÉ UČENÍ TECHNICKÉ V BRNĚ
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA ELEKTROTECHNIKY A KOMUNIKAČNÍCH TECHNOLOGIÍ ÚSTAV AUTOMATIZACE A MĚŘICÍ TECHNIKY FACULTY OF ELECTRICAL ENGINEERING AND COMMUNICATION
VíceÚvod do Entity Frameworku
PV178 Úvod do Entity Frameworku Mgr. David Gešvindr MVP MSP MCSD: Windows Store MCSE: Data Platform gesvindr@mail.muni.cz Osnova 1. Úvod do Entity Frameworku 2. Návrh databáze s využitím Entity Framework
Více8.2 Používání a tvorba databází
8.2 Používání a tvorba databází Slide 1 8.2.1 Základní pojmy z oblasti relačních databází Slide 2 Databáze ~ Evidence lidí peněz věcí... výběry, výpisy, početní úkony Slide 3 Pojmy tabulka, pole, záznam
VíceDesign Patterns. Tomáš Herceg Microsoft MVP (ASP.NET) www.dotnetcollege.cz
Design Patterns Tomáš Herceg Microsoft MVP (ASP.NET) www.dotnetcollege.cz Základní návrhové vzory Kategorie Creational Patterns starají se o vytváření instancí Structural Patterns struktura komponent v
Více1. Úvod do Ajaxu 11. Jak Ajax funguje? 13
Obsah Úvodem 9 1. Úvod do Ajaxu 11 Jak Ajax funguje? 13 Popis 13 Ukázky 13 Jaké jsou možnosti tvorby interaktivních webových aplikací? 15 Co je třeba znát? 16 Jak fungují technologie Ajaxu 16 Jak funguje
VícePřevod 4GL aplikací do webového prostředí. Ing. Jan Musil, IBM ČR Community of Practice for
Převod 4GL aplikací do webového prostředí Ing. Jan Musil, IBM ČR Community of Practice for CEEMEA Co je to EGL? -4GL a EGL Agenda Popis převodu z -4GL do EGL krok za krokem Obecný postup převodu Závěrečný
VíceSpecifikace. Odevzdání do 04. 12. 2010
Automatické testování GUI Specifikace Pozor na rozsah dokument by měl mít cca 10 stran nemusíte rozebírat všechny funkční požadavky vybrat si a popsat detailněji jen ty nejdůležitější/nejzajímavě jší/nejzajímavější
VíceÚvod do Web Services
Úvod do Web Services Základy webových služeb a jejich implementace na platformě OS/2 Jarda Kačer jarda@kacer.biz Český Warpstock 2008 Brno, 20.-21.9.2008 Co je to webová služba? Část business logiky přístupná
VíceDjango. Webový framework pro Python Projekt = webová stránka Aplikace = určitá funkcionalita webu
Django Django Webový framework pro Python Projekt = webová stránka Aplikace = určitá funkcionalita webu Instalace Django ve Windows Nutné mít nainstalovaný Python Ověříte příkazem py --version Stáhnout
VíceANOTACE vytvořených/inovovaných materiálů
ANOTACE vytvořených/inovovaných materiálů Číslo projektu Číslo a název šablony klíčové aktivity Tematická oblast Formát Druh učebního materiálu Druh interaktivity CZ.1.07/1.5.00/34.0722 III/2 Inovace a
VíceScaffold pro Nette Framework Scaffold for Nette Framework
VŠB Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Katedra informatiky Scaffold pro Nette Framework Scaffold for Nette Framework 2014 Martin Drozdek Tímto bych rád poděkoval vedoucímu
VíceJava/QE Akademie - Osnova
Java/QE Akademie - Osnova Lekce 1 1. Co je to Java? 1.1. Struktura Java kódu 2. Potřebné nástroje pro vývoj 2.1. JVM 2.2. JRE 2.3. JDK 3. Co je to proměnná a její zápis v Javě 3.1. Klasické proměnné 3.2.
VíceRuby on Rails: zapomeňte na Javu
Ruby on Rails: zapomeňte na Javu Jiří Hradil Kyberie s.r.o. jirka@hradil.cz http://www.hradil.cz ` 28.2.2011, CZJUG, Praha Java sága, persistence I. Kyberie, rok 2004 Cíl: persistence pro Java webové aplikace
VíceInnoDB transakce, cizí klíče, neumí fulltext (a nebo už ano?) CSV v textovém souboru ve formátu hodnot oddělených čárkou
MySQL Typy tabulek Storage Engines MyISAM defaultní, neumí transakce, umí fulltext InnoDB transakce, cizí klíče, neumí fulltext (a nebo už ano?) MEMORY (HEAP) v paměti; neumí transakce ARCHIVE velké množství
VíceČást IV - Bezpečnost 21. Kapitola 19 Bezpečnostní model ASP.NET 23
5 Obsah O autorech 15 O odborných korektorech 15 Úvod 16 Rozdělení knihy 16 Komu je tato kniha určena? 18 Co potřebujete, abyste mohli pracovat s touto knihou? 18 Sdělte nám svůj názor 18 Zdrojové kódy
VíceStřední odborná škola a Střední odborné učiliště, Hořovice
Kód DUM : VY_32_INOVACE_DYN.1.05 Název materiálu: Anotace Autor Jazyk Očekávaný výstup 05 Zásady psaní v jazyce PHP DUM naučí základní kroky v psaní správné syntaxe PHP, žák napíše svůj první skript Ing.
VíceVý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íceServer-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íceSystém pro analýzu dat operátorů a obráběcích strojů ve strojírenské výrobě. Bc. Roman Sucháček
Systém pro analýzu dat operátorů a obráběcích strojů ve strojírenské výrobě Bc. Roman Sucháček Diplomová práce 2017 ABSTRAKT Tato práce se zabývá softwarovým řešením zpracování dat získaných ze strojů
VíceO Apache Derby detailněji. Hynek Mlnařík
O Apache Derby detailněji Hynek Mlnařík Agenda Historie Vlastnosti Architektura Budoucnost Historie 1997 Cloudscape Inc. - JBMS 1999 Informix Software, Inc. odkoupila Cloudscape, Inc. 2001 IBM odkoupila
VíceSouč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íceVÝVOJ INTERNETOVÝCH APLIKACÍ - VIA
Metodický list č. 1 Způsob zakončení : Úvod Technologie webových aplikací Protokol HTTP Po zvládnutí tématického celku bude student mít základní přehled o problematice programování internetových (webových)
VíceGTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím
GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER váš partner na cestě od dat k informacím globtech spol. s r.o. karlovo náměstí 17 c, praha 2 tel.: +420 221 986 390 info@globtech.cz
VíceINOVACE PŘEDMĚTŮ ICT. MODUL 11: PROGRAMOVÁNÍ WEBOVÝCH APLIKLACÍ Metodika
Vyšší odborná škola ekonomická a zdravotnická a Střední škola, Boskovice INOVACE PŘEDMĚTŮ ICT MODUL 11: PROGRAMOVÁNÍ WEBOVÝCH APLIKLACÍ Metodika Zpracoval: Jaroslav Kotlán srpen 2009s Úvod Modul Programování
VíceDatabáze EMS podacích lístků
Databáze EMS podacích lístků Semestrální práce ------------------------------ 1 / 30 Obsah Obsah...2 Obsah...2 Záměr projektu...3 Uživatele...6 Katalog požadavků...7 Use case...8 Konceptuální datový model...9
VícePřipravil: Ing. Jiří Lýsek, Ph.D. Verze: 12.2.2015 Webové aplikace
Připravil: Ing. Jiří Lýsek, Ph.D. Verze: 12.2.2015 Webové aplikace Úvod strana 2 Vyučující Ing. Jiří Lýsek, Ph.D. Ing. Oldřich Faldík https://akela.mendelu.cz/~lysek/ https://akela.mendelu.cz/~xfaldik/wa/
VíceJalapeño: pekelně ostrá Java persistence v Caché. Daniel Kutáč Senior Sales Engineer
Jalapeño: pekelně ostrá Java persistence v Caché Daniel Kutáč Senior Sales Engineer Co je Jalapeño Pár slov ředitele vývoje software Klikni! Tak tedy, o čem dnes budeme mluvit Architektura Instalace Anotace
VíceWebové programování a Open Source. Open-source. Liberix o.p.s
Liberix o.p.s. 23. 11. 2006 Obsah prezentace 1 2 3 4 5 protokol HTTP (klient-server), jazyk HTML/XHTML, CSS funguje systémem dotaz-odpověd (neuchovává stav) HTML/XHTML nutno dodržovat standardy, validovat
VíceArchitektura softwarových systémů
Architektura softwarových systémů Ing. Jiří Mlejnek Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Jiří Mlejnek, 2011 jiri.mlejnek@fit.cvut.cz Softwarové
VíceX36 WWW Šablony Martin Klíma xklima@fel.cvut.cz Čtryřvrstvá architektura Server Klient Prezentační logika Aplikační Logika Databáze 2 Výhody Jednotlivé vrstvy jsou nezávislé Lze je samostatně spravovat
VícePlatformy / technologie. Jaroslav Žáček
Platformy / technologie Jaroslav Žáček jaroslav.zacek@osu.cz Které platformy / technologie znáte Java Trocha historie Java EE Java EE 5 Java EE 6 Pruning, Extensibility Ease of Dev, CDI, JAX-RS Java EE
VíceProtokol 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íceWeb Services na SOAP
Web Services Používají HTTP Existují dvě varianty: Služby postavené na protokolu SOAP Java standard pro vytváření : JAX-WS RESTfull služby Java standard pro vytváření : JAX-RS Web Services na SOAP Žádost
VíceHiearchical 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íceSPECIFIKACE PŘEDMĚTU PLNĚNÍ
SPECIFIKACE PŘEDMĚTU PLNĚNÍ pro zakázku, na kterou se nevztahuje postup pro zadávací řízení dle zákona č. 134/2016 Sb., o zadávání veřejných zakázek Název zakázky IT Vzdělávání zaměstnanců UBK s.r.o. Základní
VíceObsah. Předmluva Kapitola 1 Úvod 1. Web v kostce 1 Kdo je webmaster? 4 Doporučená literatura 4. Kapitola 2 Přehled jazyka HTML 5
Předmluva xi Kapitola 1 Úvod 1 Web v kostce 1 Kdo je webmaster? 4 Doporučená literatura 4 Část I: HTML Kapitola 2 Přehled jazyka HTML 5 Struktura dokumentů HTML 10 Syntaxe jazyka HTML 10 Obsluha událostí
VíceArchitektura GIS KMA/AGI. Karel Jedlička
KMA/AGI Karel Jedlička smrcek@kma.zcu.cz http://www.kma.zcu.cz/jedlicka Vznik materiálu byl podpořen z projektu FRVŠ č. 584/2011 Úvod do architektury software klient/server sw vrstvy Architektura GIS Typy
VíceModel-View-Controller architektura PHP frameworks
Model-View-Controller architektura PHP frameworks Zpracovali Bc. Petr Fořt a Tomáš Přibyl ČVUT FJFI KSE ASI, ZS 2012/2013, 18OOP Obsah Úvod do MVC Základní informace o MVC a návrhových vzorech Informace
VíceObsah. Úvodem 9. Kapitola 1 Než začneme 11. Kapitola 2 Dynamické zobrazování obsahu 25. Zpětná vazba od čtenářů 10 Zdrojové kódy ke knize 10 Errata 10
Obsah Úvodem 9 Zpětná vazba od čtenářů 10 Zdrojové kódy ke knize 10 Errata 10 Kapitola 1 Než začneme 11 Dynamické vs. statické stránky 11 Co je a k čemu slouží PHP 12 Instalace potřebného softwarového
VíceVývojařská Plzeň AngularJS
Vývojařská Plzeň AngularJS Milan Lempera @milanlempera Víťa Plšek @winsik PHP -> Javascript PHP -> Java -> Javascript www.angular.cz ? Psal se rok 2009 ano 2009... Jak se tehdy tvořili webové aplikace?
Více