<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://www.multimediaexpo.cz/mmecz/skins/common/feed.css?270"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="cs">
		<id>http://www.multimediaexpo.cz/mmecz/index.php?action=history&amp;feed=atom&amp;title=Zend_Framework</id>
		<title>Zend Framework - Historie editací</title>
		<link rel="self" type="application/atom+xml" href="http://www.multimediaexpo.cz/mmecz/index.php?action=history&amp;feed=atom&amp;title=Zend_Framework"/>
		<link rel="alternate" type="text/html" href="http://www.multimediaexpo.cz/mmecz/index.php?title=Zend_Framework&amp;action=history"/>
		<updated>2026-05-02T07:20:45Z</updated>
		<subtitle>Historie editací této stránky</subtitle>
		<generator>MediaWiki 1.16.5</generator>

	<entry>
		<id>http://www.multimediaexpo.cz/mmecz/index.php?title=Zend_Framework&amp;diff=159546&amp;oldid=prev</id>
		<title>Sysop: 1 revizi</title>
		<link rel="alternate" type="text/html" href="http://www.multimediaexpo.cz/mmecz/index.php?title=Zend_Framework&amp;diff=159546&amp;oldid=prev"/>
				<updated>2013-06-21T10:59:16Z</updated>
		
		<summary type="html">&lt;p&gt;1 revizi&lt;/p&gt;
&lt;table style=&quot;background-color: white; color:black;&quot;&gt;
		&lt;tr valign='top'&gt;
		&lt;td colspan='1' style=&quot;background-color: white; color:black;&quot;&gt;← Starší verze&lt;/td&gt;
		&lt;td colspan='1' style=&quot;background-color: white; color:black;&quot;&gt;Verze z 21. 6. 2013, 10:59&lt;/td&gt;
		&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Sysop</name></author>	</entry>

	<entry>
		<id>http://www.multimediaexpo.cz/mmecz/index.php?title=Zend_Framework&amp;diff=159545&amp;oldid=prev</id>
		<title>Sysop: 1 revizi</title>
		<link rel="alternate" type="text/html" href="http://www.multimediaexpo.cz/mmecz/index.php?title=Zend_Framework&amp;diff=159545&amp;oldid=prev"/>
				<updated>2011-08-05T05:51:17Z</updated>
		
		<summary type="html">&lt;p&gt;1 revizi&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nová stránka&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Infobox_Software&lt;br /&gt;
|jméno = Zend Framework&lt;br /&gt;
|screenshot = &lt;br /&gt;
|popis = &lt;br /&gt;
|developer = [[Zend Technologies]]&lt;br /&gt;
|aktuální verze = 1.11.9&lt;br /&gt;
|datum aktuální verze = [[14. červenec]] [[2011]]&lt;br /&gt;
|připravovaná verze = 2.0&lt;br /&gt;
|datum připravované verze = &lt;br /&gt;
|operační systém = [[Multiplatformní_software|Multiplatformní]]&lt;br /&gt;
|typ software = [[Webový aplikační framework]]&lt;br /&gt;
|licence = [[BSD licence|New BSD]]&lt;br /&gt;
|lokalizace = [[Angličtina|Anglicky]]&lt;br /&gt;
|web = [http://framework.zend.com framework.zend.com]&lt;br /&gt;
|český web = [http://www.zendframework.cz www.zendframework.cz]&lt;br /&gt;
|logo = &lt;br /&gt;
}}&lt;br /&gt;
'''Zend Framework''' je [[Open source software|open source]], objektově orientovaný, webový aplikační [[Framework|framework]] implementovaný v [[PHP]] 5 a licencovaný pod New BSD license. Zend Framework (často označovaný jako ZF) je vyvíjen s ohledem na jednoduchý vývoj webových aplikací. Užívá modulární architektury která umožnuje vývojářům použít jen ty komponenty, které potřebují. Částečné závislosti mezi komponentami však existují. ZF v sobě zahrnuje komponenty pro MVC aplikace, autorizaci a autentifikaci, implementuje různé druhy cache, filtrů a validatorů pro uživatelská data, jazykové komponenty a mnoho dalších. Začal být vyvíjen na počátku roku 2005 kdy mnoho nových frameworků, jako [[Ruby on Rails]] a Spring Framework získávalo na popularitě. Oficiálně byl oznámen na první Zend Conference. Šéf vývojářem je [[Matthew Weier O'Phinney]].&lt;br /&gt;
&lt;br /&gt;
==Požadavky==&lt;br /&gt;
Zend Framework od verze 1.7.0 vyžaduje minimálně [[PHP]] 5.2.4. Předchozí verze si vystačily s PHP 5.1.4 nebo novějšími. V produkčním prostředí však vývojáři důrazně doporučují používat PHP 5.2.3 nebo novější z důvodu většího zabezpečení a výkonu. Ke spuštění unit testů je vyžadována knihovna PHPUnit minimálně verze 3.0. Mnoho komponent také vyžaduje některá z modulových rozšíření PHP.&lt;br /&gt;
&lt;br /&gt;
==Vlastnosti==&lt;br /&gt;
* Všechny komponenty jsou plně objektově orientované a vyhovují direktivě E_STRICT&lt;br /&gt;
* Modulární architektura typu užij-co-potřebuješ minimalizuje křížové závislosti mezi komponentami&lt;br /&gt;
* Rozšiřitelná implementace MVC s podporou layoutů a šablonovacím systémem&lt;br /&gt;
* Podpora pro multi-databázové systémy zahrnuje MySQL, Oracle, IBM DB2 MSSQL Server, PostgreSQL, SQLite a Informix Dynamix Server&lt;br /&gt;
* Kompozice e-mailu a schopnost jej odeslat / přijmout skrze mbox, Maildir, POP3 nebo IMAP4&lt;br /&gt;
* Flexibilní cache sub-systémy s podporou mnoha typů backendů jako pamět nebo soubor&lt;br /&gt;
&lt;br /&gt;
[[Soubor:Zf_zpracování.jpg|Zpracování požadavku prohlížeče dle probíhajících procesů|thumb]]&lt;br /&gt;
&lt;br /&gt;
==Komponenty==&lt;br /&gt;
Stručný výčet nejznámějších komponent frameworku:&lt;br /&gt;
&lt;br /&gt;
* Zend_Acl - Jednoduchý a flexibilný systém pro správu uživatelských oprávnění&lt;br /&gt;
* Zend_Application - Knihovna pro načtení a správu základních prvků aplikace (bootstraping)&lt;br /&gt;
* Zend_Auth - Autentifikace uživatelů s mnoha druhy úložišť&lt;br /&gt;
* Zend_Cache - Implementace cache systému s úložišti ve formě paměti, souboru, APC, SQLitea atd...&lt;br /&gt;
* Zend_Config - Slouží k nastavení aplikace skrze konfigurační soubory&lt;br /&gt;
* Zend_Controller - Implementace Model-View-Controller (MVC) architektury&lt;br /&gt;
* Zend_Date - Komponenta pro práci s datumy&lt;br /&gt;
* Zend_Db - Implementace multi-databázové vrstvy&lt;br /&gt;
* Zend_Dojo - Knihovna pro práci s javascriptovým frameworkem Dojo&lt;br /&gt;
* Zend_Filter - Komponenta pro filtrování uživatelkých dat s velkým množstvím filtrů&lt;br /&gt;
* Zend_Form - Objektový vývoj webových formulářů včetně filtrování hodnot a jejich valildace&lt;br /&gt;
* Zend_Layout - Správa layoutů aplikace&lt;br /&gt;
* Zend_Log - Komponenta pro logování určitých dat s množstvím backendů&lt;br /&gt;
* Zend_Mail - Tvorba e-mailů, správa e-mailoých schránek&lt;br /&gt;
* Zend_Memory - Podpora pro zpracování dat s omezeným množstvím dostupné paměti&lt;br /&gt;
* Zend_OpenID - Implementace OpenID klienta i serveru&lt;br /&gt;
* Zend_Paginator - Komponenta pro práci se stránkováním dat&lt;br /&gt;
* Zend_Pdf - Objektový přístup a vytváření PDF souborů&lt;br /&gt;
* Zend_Registry - Komponenta pro uchovávání objektů a hodnot v aplikační vrstvě&lt;br /&gt;
* Zend_Translate - Podpora pro překlady a různé jazykové mutace aplikací&lt;br /&gt;
* Zend_View - Šablonovací systém&lt;br /&gt;
* ZendX_Jquery - Podpora javascriptoveho frameworku jQuery&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
== Helpery ==&lt;br /&gt;
Helper je pomocná funkce, ulehčující programátorům práci. Často používaný kód či specifická funkčnost lze uložit do helperu a ten následně používat. Helpery v Zend Frameworku dělíme na action helpery a view helpery. První jsou používány v controllerech, druhé ve view. Zend Framework obsahuje některé předdefinované helpery. &lt;br /&gt;
&lt;br /&gt;
===Action helpery===&lt;br /&gt;
&lt;br /&gt;
'''ActionStack''' helper umožňuje vkládat požadavky na další zpracování action pomocí front controller pluginu Actionstack. &lt;br /&gt;
&lt;br /&gt;
'''Autocomplete''' usnadňuje práci s automatickým doplňováním formulářů ContextSwitch a jeho specializovaná verze AjaxContext nastavuje odpověď vhodnou pro použití jiného formátu.&lt;br /&gt;
&lt;br /&gt;
'''FlashMessenger''' uchovává text napříč aplikací. Umožňuje tak uchovávat výstup, který chceme použít při dalším načtení stránky. Nevýhodou FlashMessengeru je, že není schopen pojmenovávat prostor, proto je nutno k ukládanému textu přidávat další informace o něm (např. info|toto je info text). Nejlépe například nějakým znakem oddělit a následně pracovat s částmi řetězce. &lt;br /&gt;
&lt;br /&gt;
'''View Renderer''' helper zajišťuje, že se po skončení action vykreslí příslušný view, bez dalšího nastavování. Toto chování lze samozřejmě změnit.  Programátor tedy vytvoří v controlleru metodu action a k ní dle přijatých jmenných konvencí soubor view. O vlastní správné propojení se pak už postará framework. &lt;br /&gt;
&lt;br /&gt;
===View helpery===&lt;br /&gt;
&lt;br /&gt;
'''Action View''' Helper je schopen načíst konkrétní action z controlleru a vložit výsledek do view. &lt;br /&gt;
&lt;br /&gt;
'''Partial''' Helper slouží k znovupoužití často opakovaných prvků ve view. Tento prvek je uložen ve vlastním souboru a do view vkládán pomocí tohoto helperu. Poskytován je také PartialLoop, který je načítán opakovaně. &lt;br /&gt;
&lt;br /&gt;
'''Placeholder''' Helper je vhodný pro skládání obsahu stránek. Ukládá pojmenovaná data, ke kterým pak lze přistupovat v libobolném view. Skupina helperů Doctype, HeadLink, HeadMeta, HeadScript, HeadStyle, HeadTitle a InlineScript jsou pak konkrétními implementacemi Placeholder helperu. &lt;br /&gt;
'''&lt;br /&gt;
HTML Object''' vkládá do view html prvky v tagu &amp;lt;object&amp;gt;. Vhodné například pro vkládání flash animací. &lt;br /&gt;
&lt;br /&gt;
'''JSON''' Helper nastavuje správnou hlavičku odpovědi a vypíná použití layoutu.&lt;br /&gt;
&lt;br /&gt;
'''Translate''' Helper pomáhá při práci s vícejazyčnou aplikací. Využívá knihovnu Zend_Translate. &lt;br /&gt;
&lt;br /&gt;
==Jmenné konvence==&lt;br /&gt;
Všechny soubory frameworku jsou uloženy ve dvou adresářích. Hlavní a původní adresář je „Zend“ a druhý, sloužící pro ukládání dalších dílčích knihoven (Extras), je „ZendX“. PHP od verze 5.3 sice podporuje jmenné prostory (namespaces), z důvodu zpětné kompatibiliy zůstává ale Zend Framework ve verzi 1 bez jejich podpory. Zend Framework 2.0 by již měl mít plnou podporu jmenných prostorů.&lt;br /&gt;
&lt;br /&gt;
Třídy se pojmenovávají podle adresářové struktury, ve které se nachází, tj. třída v souboru Zend/Foo/Bar/Baz.php se bude jmenovat Zend_Foo_Bar_Baz. Všechny abstraktní třídy mají podle Zend Coding Standard mít název _Abstract (a tedy být v souboru abstract.php), veškerá rozhraní (interface) mají mít název _Interface (být v souboru interface.php).&lt;br /&gt;
&lt;br /&gt;
Prefixem Zend_ mohou být podle licenčních podmínek označovány pouze třídy ze samotné distribuce Zend Frameworku.&lt;br /&gt;
&lt;br /&gt;
Názvy všech chráněných (protected) a soukromých (private) metod a vlastností tříd musí začínat podtržítkem. Pro názvy všech metod a promenných se používá cammelCase, konstanty jsou naproti tomu psané VELKÝMI_PÍSMENY.&lt;br /&gt;
&lt;br /&gt;
==Reference==&lt;br /&gt;
* V článku jsou použity části textu z [http://www.mixa.name/category/zend-framework/vyvoj-webovych-aplikaci-pomoci-php-frameworku/ mixa.name - seriál Vývoj webových aplikací pomocí frameworků]&lt;br /&gt;
&lt;br /&gt;
==Návody==&lt;br /&gt;
*[http://www.zendframework.cz/zaciname-se-zend-frameworkem-preklad/ Překlad] anglického [http://akrabat.com/zend-framework-tutorial/ návodu]&lt;br /&gt;
&lt;br /&gt;
==Externí odkazy==&lt;br /&gt;
*[http://framework.zend.com Oficiální stránka]&lt;br /&gt;
*[http://zend-framework-examples.blogspot.com/ Zend Framework příklady (ZfEx)]&lt;br /&gt;
*[http://www.nabble.com/Zend-Framework-Community-f16154.html Mailing list]&lt;br /&gt;
*[http://forum.zendframework.cz/ České fórum]&lt;br /&gt;
&lt;br /&gt;
{{Aplikační frameworky}}&lt;br /&gt;
{{Článek z Wikipedie}}&lt;br /&gt;
[[Kategorie:Webové aplikační frameworky]]&lt;br /&gt;
[[Kategorie:Software v PHP]]&lt;br /&gt;
[[Kategorie:Svobodný software]]&lt;/div&gt;</summary>
		<author><name>Sysop</name></author>	</entry>

	</feed>