- Leren door doen
- Trainers met praktijkervaring
- Klassikale trainingen
- Gedetailleerd cursusmateriaal
- Duidelijke inhoudsbeschrijving
- Maatwerk inhoud mogelijk
- Trainingen die doorgaan
- Kleine groepen
In de cursus Design Patterns leert u hoe design patterns kunnen worden toegepast bij het object georiënteerd ontwerpen van systemen.
Na een inleiding over de rol die design patterns spelen en hoe ze kunnen worden gebruikt om de non functional requirements van systemen te realiseren, wordt aandacht besteed aan hoe design patterns beschreven en gecatalogiseerd worden.
Ook de rol van design patterns in de architectuur van applicaties wordt besproken evenals de verschillende categorieën van design patterns die kunnen worden onderscheiden.
In de module Creational Patterns komen de Factory patterns en het Builder, Prototype en Singleton pattern aan de orde. U leert uit welke classes, relations, responsibilities en collaborations een typische design pattern oplossing kan bestaan.
Vervolgens worden in de module Structural Patterns van het Adapter, Composite, Bridge, Decorator, Proxy en FlyWeight pattern besproken. U leert wat de gevolgen zijn van de toepassing van de design patterns, de voordelen en mogelijke nadelen wat betreft tijd en ruimte en welke overwegingen u kunt hanteren om een bepaald pattern te gebruiken.
Vervolgens worden in de module Behavioral Patterns de Chain of Responsibility, Interpreter, Iterator, Mediator, State en Strategy patterns besproken.
En tot slot worden in de module Architectural Patterns patterns besproken die betrokken zijn bij de architectuur van software, waaronder Operating Systems en Frameworks. Deze module richt zich onder andere op het Layer pattern, het Micro Kernel pattern en het Model View Controller (MVC) pattern.
De cursus Design Patterns is bestemd voor ervaren developers en software architecten met kennis van object georiënteerd programmeren en systeemanalyse die Design Patterns willen toepassen bij het ontwerpen van deze systemen.
Kennis van een object georiënteerde programmeertaal zoals C++, C# of Java en ervaring met object georiënteerde analyse en design met UML is vereist.
De concepten worden behandeld aan de hand van presentatie slides. De theorie wordt geïllustreerd met demo's van patterns in C++, C# en Java. Er zijn oefeningen in design problemen waarbij patterns worden toegepast. De cursustijden zijn van 9.30 tot 16.30.
De deelnemers krijgen na het goed doorlopen van de cursus een officieel certificaat Design Patterns.
Module 1 : Intro Design Patterns |
Module 2 : Creational Patterns |
Module 3 : Structural Patterns |
What is a design pattern? Describing design patterns Reuse through design patterns Structure of patterns Classification of patterns Catalog of Design Patterns Creational Patterns Structural Patterns Behavioral Patterns Sample design patterns Selecting Design Patterns Solving problems with design patterns |
Factory Patterns Factory Method Pattern Connect parallel class hierarchies Abstract Factory Pattern Concrete Class Isolation Promoting Consistency Builder Pattern Controlling the build process Prototype Dynamic configuration Singleton Pattern Controlled access |
Adapter Pattern Pluggable Adapters Composite Pattern Sharing Components Decorator Pattern Lots of little objects FaÇade Pattern Reducing client-subsystem coupling Flyweight Pattern Reducing number of instances Proxy Pattern Copy-on-write |
Module 4 : Behavioral Patterns |
Module 5 : Architectural Patterns |
|
Chain of responsibility Command Pattern Interpreter Pattern Iterator Pattern Mediator Pattern Memento Pattern Observer Pattern State Pattern Strategy Pattern Template Pattern |
Architectural patterns versus design patterns Patterns for real-time software Layers Pipes and Filters Blackboard Broker Model-View-Controller Presentation-Abstraction-Control Microkernel Reflection |
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.
Na afloop van iedere cursus worden de deelnemers verzocht de cursus te evalueren ten aanzien van cursusinhoud, cursusmateriaal, trainer en locatie. Het evaluatie formulier staat op https://www.klantenvertellen.nl/reviews/1039545/spiraltrain. De evaluaties van voorgaande deelnemers en voorgaande cursussen kunnen daar ook worden teruggevonden.
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.