- Leren door doen
- Trainers met praktijkervaring
- Klassikale trainingen
- Gedetailleerd cursusmateriaal
- Duidelijke inhoudsbeschrijving
- Maatwerk inhoud mogelijk
- Trainingen die doorgaan
- Kleine groepen
In de cursus Play Framework Programming leren de deelnemers web applicaties te ontwikkelen die zijn gebaseerd op het Model View Controller design pattern en gebruik maken van de JVM taal Scala. Het Play Framework is open source en vergroot de productiviteit van developers door gebruik te maken van convention over configuration, hot code reloading en error messages in de browser.
De cursus gaat van start met een bespreking van de architectuur van Play. Ook wordt ingegaan op het gebruik van het build en dependency management tool sbt en de command line utility giter8 waarmee op basis van templates files en directories worden gegenereerd.
Vervolgens komt de MVC architectuur aan de orde en hoe in Play control flow, data presentatie en data opslag wordt gerealiseerd. Ook wordt dan aandacht besteed aan dynamische URL's en scoped objects in session en flash scope.
Het view wordt in Play web applicatie typisch gebaseerd op een template. De werking van op Scala gebaseerde template engine en de mogelijke control flow constructies en variabelen in templates worden besproken.
Dan is het tijd voor de behandeling van asynchronous calls en concurrency met multiple threads. Het Akka Framework dat bij uitstek geschikt is voor concurrent en gedistribueerde applicaties op de JVM komt dan ook aan de orde.
Onderdeel van het programma van de cursus is ook het consumeren van Web Services in Play. Daarbij wordt ingegaan op het parsen van JSON data en het parsen van XML data met JAXB en wordt ook Akka streaming behandeld.
Voorts wordt data access vanuit Play behandeld. Daarbij passeren Object Relational Mapping en zowel Ebean queries als Rawsql queries de revue.
Tenslotte wordt na een overzicht van hoe eigen Play modules kunnen worden gemaakt, aandacht besteed aan deployment van Play Applicaties op een Apache of Nginx web server.
De cursus Play Framework Programming is bedoeld voor ervaren developers die het Play Framework willen inzetten bij de creatie van Web Applicaties en Web Services.
Kennis van en ervaring met Java, C# of Scala is vereist om aan deze training te kunnen deelnemen.
De theorie wordt behandeld aan de hand van presentatie slides. Demos worden gebruikt om de theorie te verduidelijken. Er is ruime gelegenheid tot oefenen en theorie en exercises wisselen elkaar af. Het cursus materiaal is in het Engels. De cursustijden zijn van 9.30 tot 16.30.
De deelnemers krijgen na het goed doorlopen van de cursus een officieel certificaat Play Framework Programmeren.
Module 1 : Play Framework Intro |
Module 2 : Build System |
Module 3 : MVC Model |
What is Play? Play Architecture Play Versions Installing Play sbt and conscript Installing Giter8 Setting Up Play Project Directories Configuration Controller and View Testing Views Testing Controllers |
Scala Build Tool Core Principles Benefits of sbt Using sbt SBT Commands Setting Definition Resolvers sbt Plugins Application Settings Error Handlers Client Errors Server Errors |
MVC Architecture Separation of Concerns Control Flow Data Presentation Data Storage HTTP Storage Static Definition Dynamic URL Parts Passing Fixed Values Optional Parameters Scoped Objects Session and Flash Scope |
Module 4 : Views and Templating |
Module 5 : Concurrency |
Module 6 : Web Services |
General Template Composite View Special @ Character Comments Template Parameters Import Statement Conditions Iterating Lists Iterating Maps If Blocks Escaping Dynamic Contents |
Executors Runnable and Callables Asynchronous Programming Scheduled Jobs Configuring Jobs Akka Framework Actors Actor System Message Flows Fault Tolerance Scalability |
Consuming Web Services REST API's JSON Payloads Callback Methods Handling JSON JSON Request and Response Simple XML Parsing Parsing with JAXB Large Responses Source and Sinks Akka Streaming |
Module 7 : Data Access |
Module 8 : Play Modules |
Module 9 : Deployment |
SQL Database Support Object Persistence Object Relational Mapping ORM Concepts Relationships Persistence API Ebean Queries Query Constructs Using Rawsql |
What are Modules? Creating Modules Module Configuration Module Contract Module Injection Publishing Modules Play Repository Third Party Modules Popular Modules |
Action Composition Filters Configuring Cache Cache API Deployment on Apache Enabling SSL mod proxy Load Balancer Nginx Event Architecture Configure Play on Nginx |