Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Course Outline
Objectgeoriënteerd Programming
- Klassen en objecten
- Eigenschappen en methoden
- Constructor- en destructormethoden
- Klasse erfenis
- Attributen en methodenbereik (zichtbaarheid)
- Foutafhandeling met uitzonderingen
- Naamruimten
Introductie van het Symfony roemwerk
- Introductie van het Symfony raamwerk en zijn ecosysteem
- Installatie van de Symfony «Standaard Editie Distributie»
- Ontdekken van de Symfony projectarchitectuur (applicatie, bundels, bibliotheken, bundels enz.)
- Inzicht in de workflow voor het verwerken van HTTP-aanvragen
- Het concept van de omgeving begrijpen (ontwikkeling, productie en testen)
- Introductie van de codering en naamgevingsconventies voor bestanden
- Het concept van een « Bundel » ontdekken
Foutopsporing in de code
- Hulp krijgen van de «Web Debug Toolbar»
- Introspectie van de opgenomen logs
- Profilering van HTTP-verzoeken dankzij de applicatie « Web Profiler »
- Problemen opsporen dankzij expliciete fouten en uitzonderingen stapelt sporen op
- De componentenfuncties Debug en VarDumper gebruiken
Het configureren van de applicatie
- Vergelijking van de ondersteunde ingebouwde configuratie-indeling: XML, YAML en PHP
- Configuratie van de applicatie dankzij globale parameters
- Routes en URL's van de configuratietoepassing met annotaties
- De configuratie overschrijven die is gedefinieerd door een ingebouwde ‘bundel’ of een ‘bundel’ van derden
Inhoud genereren voor de eindgebruiker
- Maak kennis met de Twig-sjablonenengine
- Vergelijking van Twig- en onbewerkte PHP sjabloonstrategieën
- Accessglobale variabelen uit Twig-sjablonen (verzoek, sessie, gebruiker)
- Tags, filters en functies gebruiken om inhoud in een Twig-sjabloon te genereren en op te maken
- Sjablonen echt uitbreidbaar maken dankzij de functie voor het overnemen van sjablonen
- Sjablonen opsplitsen in kleinere sjablonenbrokken om codeduplicaties te voorkomen
- Een Symfony-controller renderen vanuit een Twig-sjabloon
- URL's genereren op basis van de routeconfiguratie van de applicatie
- Rendering Symfony van formulieren met aangepaste Twig-weergavehelpers
Ontwikkelen van een controller en analyseren van de aanvraag
- Een controllerklasse ontwerpen met zijn actiemethoden
- URL-patronen toewijzen aan Symfony controllers dankzij annotaties
- Het genereren van onbewerkte antwoorden en op Twig-sjablonen gebaseerde antwoorden
- Accessde klantinformatie uit het Request-object
- Sessiegegevens lezen en schrijven
- Cookiegegevens lezen en schrijven
- Activering van een 404-foutpagina wanneer de bron niet wordt gevonden
- Het activeren van een interne omleiding naar een andere controller om dubbele code te voorkomen
- De gebruiker doorverwijzen naar een andere pagina
Interactie met de eindgebruiker dankzij Formulieren
- Ontdek de component « Formulier »
- Ontwerpen en verwerken van eenvoudige webformulieren
- Validatiebeperkingen toevoegen aan de gegevens van ingediende formuliervelden
- Prototyping van de formulierweergave dankzij Twig-weergavehelpers
- Het verzamelen van de ingezonden formuliergegevens en het verwerken ervan
- Het verzenden van de gevalideerde en gefilterde gegevens per e-mail naar een ontvanger
Internationalisering en lokalisatie van de gebruikersinterface
- Ontdek de component «Vertaling»
- De landinstelling van de standaardgebruiker wijzigen
- Aangepaste abstracte vertaalsleutels definiëren in Twig-sjablonen
- Omgaan met dynamische vertalingen inclusief meervoudige zinnen
Afhankelijkheidsinjectie en servicecontainer
- Het principe van afhankelijkheidsinjectie begrijpen
- Aan de slag met de Symfony servicecontainer
- Een overzicht van alle ingebouwde Symfony services dankzij de opdrachtregelhulpmiddelen
- Nieuwe aangepaste zakelijke services registreren in de container voor afhankelijkheidsinjectie
- Accesseen geregistreerde service uit de servicecontainer Accessen
- Globale configuratieparameters maken en openen vanuit de container
Een kwaliteitsverzekering afsluiten met geautomatiseerde tests
- Het PHPautomatiseringsframework voor eenheidstests ontdekken
- Inzicht in de doelstellingen van het automatiseren van tests (unit- en functionele tests)
- Een geautomatiseerde testsuite configureren
- Ontwerpen en uitvoeren van een unit-testpakket
- Ontwerpen en uitvoeren van een functionele testsuite
- Codedekkingsrapporten genereren
Interactie met de eindgebruiker en formulieren
- Ontwerpen en verwerken van webformulieren
- Formulierweergave automatiseren met Twig-weergavehelpers
- Formulierweergave aanpassen met ingebouwde en aangepaste Twig-formulierthema's
- Formulierveldtypen configureren als services
- Ingebouwde validatiebeperkingsregels toepassen op ingediende gegevens
- Aangepaste validatiebeperkingsregels toepassen op ingediende gegevens
- Contextualisering van de datavalidatie dankzij validatiegroepen
Beperking van Access tot beveiligde delen van de applicatie
- Aan de slag met authenticatie- en autorisatieprincipes
- Het beveiligen van de pagina's van sommige applicaties dankzij een op formulieren gebaseerde authenticatiestrategie
- Implementatie van de subcomponent Security Guard om de authenticatie af te handelen
- Het opzetten van een toegangscontrolebeleid op basis van de rollen van de gebruiker
- Het testen van gebruikersmachtigingen van een controller en een Twig-sjabloon
- Registratie van aangepaste autorisatieregels dankzij de beveiliging « kiezers »
Applicatieprestaties verbeteren met HTTP-caching en ESI
- Aan de slag met de HTTP-cachingworkflows
- Ontdek de verschillende soorten cachesystemen
- Vergelijking van de verval- en validatiecachestrategieën
- Het toepassen van verval- en validatiecachebeperkingen op gegenereerde webpagina's
- Paginafragmenten in cache opslaan dankzij de ESI-technologie ("Edge Side Included")
- Installeren en configureren van de ingebouwde reverse-proxy-cache van de Symfony.
Een relationeel Database systeem bevragen met doctrine
- Ontdek de basisprincipes van de Doctrine ORM
- De concepten van ‘entiteiten’ en ‘repository’s’ begrijpen
- Automatisering van het genereren van PHP klassen en SQL querycodes met Doctrine
- Gegevens in de database bewaren dankzij de Doctrine ORM-entiteitsmanager
- Gegevens terughalen uit de database dankzij Doctrine
- Op maat gemaakte SQL queries bouwen en uitvoeren dankzij het Doctrine Query Builder-object
Requirements
- Kennis van het objectgeoriënteerde Programming-concept
- Kennis van PHP
- Basiskennis van elk MVC/MVP-framework
28 Hours
Getuigenissen (4)
koen depoorter
Cursus - Web Development with Symfony3
Elena Rouvier
Cursus - Web Development with Symfony3
Guillaume Martens
Cursus - Web Development with Symfony3
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!