Návrh Školení
Objektově orientovaný Programming
- Třídy a objekty
- Vlastnosti a metody
- Konstruktor a destruktor metody
- Dedice tříd
- Rozsah atributů a metod (viditelnost)
- Chybové zpracování s výjimkami
- Nesprostředné obory názvů (namespaces)
Představujeme Symfony famework
- Zavedení Symfony frameworku a jeho ekosystému
- Instalace Symfony « Standard Edition Distribution »
- Vyšetřování architektury projektu Symfony (aplikace, balíčky, knihovny atd.)
- Pochopení pracovního postupu zpracování HTTP požadavků
- Výklad konceptu prostředí (vývoj, produkce a testování)
- Zavedení kódových pravidel a pravidel pojmenovávání souborů
- Poznávání konceptu « Bundle »
Ladění kódu
- Získání pomoci od nástroje « Web Debug Toolbar »
- Introspekce zaznamenaných protokolů
- Vyhodnocování HTTP požadavků pomocí aplikace « Web Profiler »
- Nalezení problémů díky explicitním chybovým hláškám a stack trace výjimek
- Použití funkcí komponent Debug a VarDumper
Konfigurace aplikace
- Porovnání podporovaných formátů interních konfigurací: XML, YAML a PHP
- Konfigurace aplikace pomocí globálních parametrů
- Nastavení tras a URL aplikace s využitím anotací
- Predefinování konfigurace definované interním nebo třetí stranou « bundle »
Generování obsahu pro koncového uživatele
- Zavedení motivačního stroje Twig šablon
- Porovnání Twig a surových PHP strategií šablonování
- Volání globálních proměnných z twig šablon (žádost, sezení, uživatel)
- Použití tagů, filtrů a funkcí pro generování a formátování obsahu v Twig šabloně
- Díky funkci dědičnosti šablon usnadňuje rozšiřitelnost šablon
- Rozdělení šablon na menší části, aby se zabránilo duplicitnímu kódu
- Vykreslování Symfony kontroleru z Twig šablony
- Generování URL na základě konfigurace tras aplikace
- Vykreslování Symfony formulářů s využitím vlastních pomůcek Twig pro vykreslování formulářů
Vývoj kontroléru a analýza požadavku
- Návrh třídy kontroleru s akčními metodami
- Mapování vzorů URL na Symfony kontrolery pomocí anotací
- Vytváření surovinových odpovědí a odpovědí založených na Twig šablonách
- Volání informací klienta ze zprávy Request
- Čtení a psaní dat sezení
- Práce s cookies
- Spuštění stránky s chybou 404, pokud není zdroj nalezen
- Vnitřní přesměrování na jiný kontroler k vyhnutí duplicitnímu kódu
- Přesměrování uživatele na jinou stránku
Interakce s koncovým uživatelem díky formulářům
- Zavedení komponenty « Form »
- Návrh a zpracování jednoduchých webových formulářů
- Přidání validačních omezujících pravidel na data zadaná do polí formuláře
- Prototypování vykreslování formulářů pomocí pomůcek Twig pro vykreslování formulářů
- Sběr a zpracování dat odeslaných v rámci formuláře
- Odeslání ověřených a filtrovaných dat formuláře e-mailem příjemci
Internacionalizace a lokalizace uživatelského rozhraní
- Zavedení komponenty « Translation »
- Změna výchozího místního prostředí uživatele
- Definování vlastních abstraktních klíčů překladu v Twig šablonách
- Práce s dynamickými překlady, zahrnující množné číslo vět
Závislostní vstřikovací a servisní kontejner
- Pochopení principu injektace závislostí
- Úvod do Symfony služebního kontejneru
- Seznam všech interních Symfony služeb pomocí nástrojů řádky příkazového řádku
- Zaregistrování nových vlastních podnikatelských služeb ve kontejneru injektace závislostí
- Volání zaregistrované služby ze služebního kontejneru
- Vytvoření a přístup ke globálním konfiguračním parametrům z kontejneru
Sjednání pojištění kvality s automatickými testy
- Zavedení automatizovaného rámce pro testování PHPUnit
- Pochopení cílů automatizace testů (jednotkových a funkčních testů)
- Konfigurace automatizované sady testů
- Návrh a provádění jednotkové sady testů
- Návrh a provádění funkční sady testů
- Vytvoření zpráv o pokrytí kódu
Interakce s koncovým uživatelem a formuláři
- Návrh a zpracování webových formulářů
- Automatizace vykreslování formulářů pomocí pomůcek Twig pro vykreslování formulářů
- Vlastní vykreslování formulářů s využitím interních a vlastních témat formuláře Twig
- Nastavení typů polí formuláře jako služeb
- Používání uvnitřních validačních omezujících pravidel na data odeslaná v rámci formuláře
- Používání vlastních validačních omezujících pravidel na data odeslaná v rámci formuláře
- Kontextualizace validace dat pomocí skupin validace
Omezení Access na zabezpečené oblasti aplikace
- Úvod do principů autentizace a autorizace
- Zabezpečení stránek aplikace pomocí strategie ověřování na základě formuláře
- Přidání podkomponenty Security Guard pro zpracování autentizace
- Nastavení politiky ovládání přístupu na základě rolí uživatelů
- Testování oprávnění uživatele ze strany kontroler a Twig šablony
- Zaregistrování vlastních pravidel autorizace pomocí security « voters »
Zlepšení výkonu aplikací pomocí mezipaměti HTTP a ESI
- Úvod do pracovního postupu mezipamětí HTTP
- Poznávání různých typů systémů mezipaměti
- Porovnání strategií vypršení platnosti a validace mezipaměti
- Aplikace omezujících pravidel vypršení platnosti a validace na generované webové stránky
- Mezipaměť fragmentů stránek pomocí technologie ESI (« Edge Side Includes »)
- Nainstalování a konfigurace interních reverzní proxy mezipaměti Symfony
Dotazování na relační Database systém s doktrínou
- Poznávání základů ORM Doktríny
- Výklad konceptu « entity » a « repozitáře »
- Automatizace generování kódu tříd PHP a dotazů SQL pomocí Doktríny
- Persistence dat do databáze pomocí manazeru entit ORM Doktrína
- Sběr dat zpět ze systému databáze s využitím Doktríny
- Vytváření a spouštění vlastních dotazů SQL pomocí objektu Query Builder
Požadavky
- Znalost konceptu objektově orientovaného programování Programming
- Znalost PHP
- Základní znalost jakékoli architektury MVC/MVP
Cílová skupina
- Webové vývojáři
- Programátoři PHP
- Vývojáři hledající, jak vyvíjet robustní aplikace s Symfony
Reference (3)
Abhinav did an excellent job! Within four days he covered all the important concepts that are used in REAL software development. I am so thankful have him as our trainer!.
Vijay Joseph
Kurz - Web Development with Symfony3
I liked the trainer's communication & knowledge in Symphony 3 and associated technologies. He had taken enough effort to teach and demonstrate with some examples in the respective topics. I can say my symphony knowledge and confidence level is gone up after this training.
Hari Kumar
Kurz - Web Development with Symfony3
I like the Doctrine concept in Symphony taken by the trainer. The trainer is more energetic and make the sessions more interactive. I think it is a great capability of the trainer.