150 likes | 243 Views
Ing. Jan Mittner. 4IT445 – Hello World. Kontakt. Ing. Jan Mittner e-mail jan.mittner @vse.cz KH v p řípadě zájmu vždy po cvičení. Osnova. Eclipse PDT Připojení ke školnímu serveru Práce na projektech Vývojové prostředí Základy Zend Framework. Eclipse PDT a připojení k serveru.
E N D
Ing. Jan Mittner 4IT445 – HelloWorld
Kontakt • Ing. Jan Mittner • e-mail • jan.mittner@vse.cz • KH • v případě zájmu vždy po cvičení
Osnova • Eclipse PDT • Připojení ke školnímu serveru • Práce na projektech • Vývojové prostředí • Základy Zend Framework
Eclipse PDT a připojení k serveru • dostupnost Eclipse PDT • školní PC – Application Explorer > Programování > Java > Eclipse PDT • stažení aplikace z http://4it445.vse.cz/wiki/index.php/N%C3%A1stroje • připojení k serveru a nastavení IDE • nastavit si viditelnost skrytých souborů • menu Preferences > Remote Systems > Files > zaškrnout Show hidden files • přepnout si na perspektivu Remote Systems Explorer • v levém horním okně přidat nové připojení • pravým tlačítkem kliknout do okna >New Connection > FTP Only atd. • před připojením nastavit UTF-8 kódování • pravým tlačítkem kliknout na vytvořené připojení > Properties > Host > a Default Encoding zvolit na Other a vybrat UTF-8
Práce na projektech • po připojení je na FTP složka shared • jedná se o odkaz na centrální složku obsahující ukázky aplikací, se kterými budeme na cvičeních pracovat • máte přístup pouze pro čtení • pozor, ať složku omylem nesmažete! • pro každé cvičení vám bude zkopírován příslušný projekt • teprve s těmito soubory pak na serveru můžete pracovat, v rámci složky shared nemůžete nic ukládat! • je nutné mít aktivovanou viditelnost skrytých souborů, aby se vám zkopírovaly i soubory .htaccess!
Vývojové prostředí • na svém domácím PC, resp. na notebooku si zprovozněte kompletní vývojové prostředí • Apache 2+, PHP 5+, MySQL 4+, aktivovaný mod_rewrite • nejsnazší je využít balíček XAMPP • http://www.apachefriends.org/en/xampp.html • a aktivovat v něm mod_rewrite • Eclipse PDT
Základy Zend Framework • obecné základy PHP frameworků a Zend Framework viz. starší 4. přednáška • http://4it445.vse.cz/wiki/images/f/fd/Prednaska-04-PHP_frameworky.pptx • Zend Framework • http://framework.zend.com/ - hlavní stránka • http://framework.zend.com/manual/en/ - referenční příručka • Hello World • viz. adresář /shared/01-hello-world • aplikace se spouští v rámci podadresáře www
Cíle PHP frameworků usnadnit a zkvalitnit vývoj aplikací zautomatizovat a standardizovat základní funkce při vývoji PHP aplikací 8
Zend Framework – základní funkce • vše potřebné • rozsáhlá implementace MVC modelu • abstraktní databázové rozhraní • automatizace zpracování formulářů • podpora Javascriptových frameworků a AJAXu • lokalizace • řízení přístupu a bezpečnosti • cachování • fulltextové vyhledávání 9
MVC model • návrhový vzor pro oddělení datové, logické a prezentační vrstvy aplikace • 3 základní elementy: • Controller – reaguje na požadavky uživatele s využitím elementů Model a View • Model – realizuje práci s daty • View – transformuje data elementu Model do podoby vhodné pro interakci 10
Zend Framework – MVC model • základní elementy: • Router – tvorba objektu požadavku na základě příchozí URL, možnost přepisu URL • Dispatcher – výběr vhodného Controlleru a jeho akce na základě objektu požadavku • Controller, Model, View – viz. předešlý slide 11
Zend Framework – struktura aplikací • application – soubor elementů controller, model a view atd. • library – aplikační knihovny jako Zend Framework apod. • tests – soubor všech jednotkových testů • web_root – root webu se spouštěcím souborem aplikace a soubory, které musí být dostupné přímo z webu jako obrázky, CSS apod. kvůli bezpečnosti 12
HelloWorld • IndexController • v adresáři /application/controllers • úvodní controller každého projektu, jeho metoda indexAction() se spouští, pokud otevřeme v prohlížeči pouze základ URL projektu • název metody akce controlleru musí mít suffix Action • view • v rámci controlleru máme k dispozici interní proměnnou $this->view , která obsahuje instanci objektu Zend_View sloužící pro práci se šablonami • instance objektu je automaticky namapována na příslušející šablony k dané akci controlleru • pomocí metody assign() objektu je možné do view vkládat data použitelná v šablonách coby interní atributy • šablony jsou dostupné v adresáři /application/views/scripts • každý controller zde může mít stejnojmenný vlastní adresář, v rámci něhož jsou k dispozici šablony ke konkrétním akcím controlleru • např. indexAction controlleru IndexController zde má tedy šablonu index.phtml v rámci adresáře index
HelloWorld • layout • standardní view zpravidla řeší pouze hlavní obsah stránky • rozvržení celé stránky (hlavička, patička, menu, postranní sloupce atd. ) by měl mít na starosti layout • šablony layoutů jsou k dispozici v adresáři /layouts/scripts • implicitní šablona layoutu je layout.phtml • systém URL • Zend Framework má vlastní systém URL, dle kterého zjišťuje, co chce klient spustit: • [základ_url]/[controller]/[akce]/[parametr1]/[hodnota1] /[parametr2]/[hodnota2] • URL http://4it445.vse.cz/shared/03-db/www/product/preview/id/2 tedy spouští: • http://4it445.vse.cz/shared/03-db/www - základ URL • product – controller ProductController • preview – akce controlleru previewAction • id/2 - parametr ID s hodnotou 2
Úkoly • přidejte obsah do úvodní stránky • doplňte do layoutu hlavičku a patičku • přidejte novou stránku o nás v rámci controlleru index • doplňte do nové stránky proměnnou s textem z controlleru