Kursplan
Objektorienterad Programming
- Klasser och objekt
- Egenskaper och metoder
- Konstruktör- och destruktörmetoder
- Klassarv
- Attributets och metodens omfattning (synlighet)
- Felhantering med undantag
- Namnområden
Vi presenterar Symfony berömmelsen
- Introduktion av ramverket Symfony och dess ekosystem
- Installation av Symfony « Standard Edition Distribution »
- Förstå projektarkitekturen i Symfony (applikation, bundle, bibliotek etc.)
- Förstå HTTP-begäranprocesseringsschemat
- Introduktion av miljöbegreppet (utveckling, produktion och testning)
- Introducing the coding and files naming conventions
- Förstå begreppet « Bundle »
Felsökning av koden
- Få hjälp från « Web Debug Toolbar »
- Titta på de registrerade loggarna
- Profilera HTTP-begäranden med hjälp av « Web Profiler »-appen
- Hitta problem med hjälp av explicita fel och undantagsspillning
- Använda Debug och VarDumper-komponenternas funktioner
Konfigurera applikationen
- Jämföra de inbyggda konfigurationsformat som stöds: XML, YAML och PHP
- Konfigurera applikationen med hjälp av globala parametrar
- Konfigurera applikationens rutter och URL:er med anteckningar
- Upprepa konfigurationen som definierats av en inbyggd eller tredjepartsbundle
Generera innehåll för slutanvändaren
- Introduktion till Twig-mallmotor
- Jämföra Twig och rå PHP mallstrategier
- Hämta globala variabler från Twig-mallar (begäran, session, användare)
- Använda taggar, filter och funktioner för att generera och formatera innehåll i en Twig-mall
- Gör mallar verkligen utökbara med hjälp av mallarverkan
- Dela upp mallar i mindre malldelar för att undvika kodduplikationer
- Rendrera en Symfony kontroller från en Twig-mall
- Generera URL:er baserat på applikationsrutterkonfigurationen
- Rendrera Symfony-former med anpassade Twig-vyerhjälpare
Utveckla controller och analysera förfrågan
- Designa en kontroll klass med dess åtgärdsmetoder
- Mappa URL-mönster till Symfony kontroller med hjälp av anteckningar
- Generera rå svar och Twig-mallbasera svar
- Hämta klientinformation från Begäran-objektet
- Läsning och skrivning av sessionsdata
- Läsning och skrivning av cookies-data
- Starta en 404 felssida när resursen inte hittas
- Utlösa ett internomdirigering till en annan kontroll för att undvika kodduplikationer
- Omdirigera användaren till en annan sida
Interagera med slutanvändaren tack vare Formulär
- Förstå « Form »-komponenten
- Designa och bearbeta enkla webbformulär
- Lägga till valideringsrestriktioner på skickade formulärfältdata
- Prototypa formrenderingen med hjälp av Twig-vyerhjälpare
- Samlar in och bearbetar de skickade formulärdatan
- Skicka de validerade och filtrerade datan via e-post till mottagare
Internationalisering och lokalisering av användargränssnittet
- Förstå « Translation »-komponenten
- Ändra standardanvändarområde
- Definiera anpassade abstrakta översättningsnycklar i Twig-mallar
- Hantera dynamiska översättningar som inkluderar flerspråkiga meningar
Dependency Injection and Service Container
- Förstå principen för beroendehämtningsinjektion
- Börja med Symfony servicecontainern
- Lista alla inbyggda Symfony-tjänster med hjälp av kommandoradsverktyg
- Registrera nya anpassade affärstjänster i beroendehämtningscontainern
- Hämta en registrerad tjänst från servicecontainern
- Skapa och åtkomst till globala konfigurationsparametrar från containern
Ingå en kvalitetsförsäkring med automatiserade tester
- Förstå PHPUnit testautomation framework
- Förstå syftet med automatisk tester (enhetstester och funktionalitetstester)
- Konfigurera en sät av automatiserade tester
- Designa och köra en sät av enhetstester
- Designa och köra en sät av funktionsanvändartester
- Generera kodcovarage-rapporter
Interagera med slutanvändaren och formulär
- Designa och bearbeta webbformulär
- Automatisera formrenderingen med Twig-vyerhjälpare
- Anpassa formrenderingen med inbyggda och anpassade Twig-formteman
- Konfigurera formulärfälttyper som tjänster
- Tillämpa inbyggda valideringsrestriktionsregler på skickade data
- Tillämpa anpassade valideringsrestriktionsregler på skickade data
- Kontextualisera datavalideringen med hjälp av valideringsskal
Begränsning av Access till säkra områden i applikationen
- Börja med autentiserings- och auktoriseringprinciper
- Skydda vissa applikationssidor med hjälp av en formulärbaserad autentiseringsstrategi
- Implementera Security Guard underkomponent för att hantera autentisering
- Ange ett åtkomstkontrollpolicy baserat på användarroller
- Testa användarrättigheter från en kontroll och en Twig-mall
- Registrera anpassade auktoriseringsregler med hjälp av säkerhet « voters »
Förbättra applikationsprestanda med HTTP Caching och ESI
- Börja med HTTP-cachningsschemat
- Förstå de olika typerna av cachelagringssystem
- Jämföra utgångs- och valideringscachestrategier
- Tillämpa utgångs- och valideringscachestyrningsregler på genererade webbsidor
- Cachelagra sidfragment med hjälp av ESI-teknologin (« Edge Side Includes »)
- Installera och konfigurera Symfony's inbyggda omvänd proxycache
Fråga ett relationellt Database system med doktrin
- Förstå grunden i Doctrine ORM
- Begreppet « entiteter » och « repositorys »
- Automatisera PHP-klass- och SQL-frågegenerering med Doctrine
- Persistence data till databasen med hjälp av Doctrine ORM entity manager
- Hämta data från databasen med Doctrine
- Bygga och exekvera anpassade SQL frågor med Doctrine Query Builder-objektet
Krav
- Kunskap om objektorienterade Programming-koncept
- Kunskap om PHP
- Grundläggande kunskap i något MVC/MVP-ramverk
Målgrupp
- Webbutvecklare
- PHP-programmerare
- Utvecklare som vill bygga robusta program med Symfony
Vittnesmål (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
Kurs - 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
Kurs - 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.