- Leren door doen
- Trainers met praktijkervaring
- Klassikale trainingen
- Gedetailleerd cursusmateriaal
- Duidelijke inhoudsbeschrijving
- Maatwerk inhoud mogelijk
- Trainingen die doorgaan
- Kleine groepen
PHP developers die robuste en onderhoudbare Web Applications willen ontwikkelen met het Symfony PHP Framework.
Ervaring met PHP Programmeren en object georiënteerd programmeren met PHP is vereist om aan deze cursus te kunnen deelnemen.
De theorie wordt behandeld aan de hand van presentatie slides. De concepten worden toegelicht met demo's. De theorie wordt afgewisseld met oefeningen. De cursustijden zijn van 9.30 tot 16.30.
De deelnemers krijgen na het goed doorlopen van de cursus een officieel certificaat Symfony Framework Programming.
In de cursus Symfony Framework Programmeren leren de deelnemers moderne PHP applicaties te bouwen met de nieuwste versie van het state of the art Symfony Framework.
Symfony heeft zich ontwikkeld tot een van de meest populaire PHP frameworks. Dit is dankzij het gebruiksgemak, de goede performance, het dependency injection mechanisme en rechtstreeks inzetbare componenten.
In de cursus leert u Symfony te installeren en een omgeving to prepareren voor applicatie ontwikkeling. Aan de orde komen Symfony's routing architecture, het opvangen van requests en het genereren van responses.
Hierbij wordt ook aandacht besteed aan de Twig templates en template inheritance.
Vervolgens wordt ingegaan op de Doctrine Object Relational Mapping implementatie waarmee PHP classes en hun relaties worden opgeslagen in de database.
Symfony biedt veel faciliteiten voor Forms en ook deze worden uitgebreid besproken. Hierbij komt ook form validatie aan de orde.
Vervolgens wordt ingegaan op service classes, de service architecture en het registreren van services bij de container.
Eveneens wordt ingegaan op de security faciliteiten die Symfony te bieden heeft, zoals authentication en authorization met de User Entity class.
Verder komen ook geavanceerde onderwerpen zoals de kernel van Symfony, het ingrijpen op de routering en de implementatie van dependency injection aan bod.
Tenslotte is er aandacht voor de creatie van een Rest API met Symfony. Aan het eind van de cursus heeft u een uitgebreide cases study met Symfony doorlopen en bent u in staat robuuste Web applicaties met Symfony maken.
Module 1 : Symfony Intro |
Module 2 : Bundles |
Module 3 : Data Access |
Why Symfony? Installing Symfony Console commands Namespaces Controller and Route How bright is the future? Installation Composer and Packagist Installing Symfony via Composer The road map Checking the installation |
Request and Response Life Cycle Anatomy of a bundle Generating a new bundle Best practices Custom bundles versus AppBundle Creating templates with TWIG Controller/View interaction Conditional templates Installing bundles Data fixtures Defining and prioritizing features |
Database configurations Generating an entity What is Object Relational Mapping Entity Classes Using doctrine Inserting new Objects Adding Columns Updating Table Schema Database Migrations Migrations Workflow Nullable Columns |
Module 4 : Caching in Symfony |
Module 5 : Presentation Layer |
Module 6 : Security in Symfony |
Caching in Symfony Definition of a cache Caches in a Symfony project Key players in the Reverse proxy cache Set expiration for dashboard page Expiration stategies Validation strategies Doctrine cache ESI for selective caching Sophisticated bundles |
Asset management How templates are organize Navigate or not to navigate What is Bootstrap? Bootstrap configuration Creating menus Rendering the menu Dashboard template Overriding templates Profile-related templates Changing the backend logo |
Authentication Authorization User Class Dashboard and Security Security is organization Authentication Authorization FOSUserBundle Security settings Adding FOSUserBundle Adding routes |
Module 7 : Testing |
Module 8 : Forms and Validation |
Module 9 : Rest API |
TDD and BDD with Codeception Creating a functional test Developing the missing code Creating the unit tests Setting up the database Recreating the database for test Creating unit tests Writing code to pass test Running functional and unit tests On the CI side of the story |
Form Input Filtering Validating Forms Creating Forms Save and Redirect Flash Messages Utilities Validators Decorators Sub Forms |
What is REST? Resource ID’s REST Web Services Simple REST Examples REST Web Service Principles Multiple Representations Embedded Path Parameters Common REST Patterns Resources URI Access JavaScript Object Notation (JSON) |
Al onze cursussen zijn klassikale cursussen waarbij de cursisten aan de hand van een ervaren trainer met diepgaande materie kennis door de stof worden geleid. Theorie wordt steeds afgewisseld met oefeningen.
We doen ook maatwerk en passen dan de cursusinhoud aan op uw wensen. Op verzoek gaan we ook in op uw praktijkcases.
De cursustijden zijn in pricipe van 9.30 tot 16.30. Maar we zijn hierin flexibel. Soms moeten mensen namelijk kinderen naar de opvang brengen of halen en komen andere tijden hun beter uit. In goed overleg kunnen we dan andere cursustijden afspreken.
Wij zorgen voor de computers waarop de cursus gehouden kan worden. Op deze computer is de voor de cursus benodigde software al geinstalleerd. U hoeft geen laptop mee te nemen om aan de cursus te kunnen deelnemen. Als u liever op uw eigen laptop werkt kunt u hem desgewenst meenemen. De benodigde software wordt dan aan het begin van de cursus geinstalleerd.
Onze cursussen worden over het algemeen gegeven met Open Source software zoals Eclipse, IntelliJ, Tomcat, Pycharm, Anaconda en Netbeans. Het digitale cursusmateriaal krijgt u na de cursus mee naar huis.
De cursus is inclusief lunch die we in een restaurantje op loopafstand van het cursuslokaal gebruiken.
De cursussen worden op diverse plaatsen in het land gepland. Een cursus gaat op een locatie door als er zich minimaal 3 mensen voor die locatie inschrijven. Als er inschrijvingen voor verschillende locaties zijn gaat de cursus door op onze hoofdlocatie is Houten net onder Utrecht. Een cursus op onze hoofdlocatie gaat ook door bij 2 inschrijvingen en regelmatig ook bij 1 inschrijving. Overigens doen we ook cursussen op de locatie van de klant als men daar prijs op stelt.
De intellectuele eigendomsrechten van de gepubliceerde cursus inhoud, ook wel aangeduid als infosheet, behoren toe aan SpiralTrain. Het is niet toegestaan de cursusinformatie, de infosheet, te publiceren in schiftelijke dan wel digitale vorm zonder de uitdrukkelijke toestemming van SpiralTrain. Onder de cursus inhoud dient te worden verstaan de beschrijving van de cursus inhoud in zinnen alsmede de indeling van de cursus in modules en onderwerpen in de modules.