C# Software Architect

Opleiding ICT en informatiemanagement 120639

Introductie

Tijdens deze 6-daagse opleiding komen de vele aspecten waarin een software architect actief is en de kennisdomeinen waarin deze moet onderlegd zijn, uitgebreid aan bod. Het is een diepgaande training om een bekwame en gewaardeerde software architect te worden die een leidende rol in een ontwikkelteam zal kunnen uitoefenen.

Omschrijving

De sofware architect is verantwoordelijk voor het ontwerpen van de high-level architectuur van de toepassing, waarbij elementen zoals onderhoudbaarheid, herbruikbaarheid, leesbaarheid van code,... inherent deel moeten uitmaken van de oplossing.

In deze opleiding leert u hoe u concreet een nieuw softwareproject opstart, welke keuzes u moet maken en welke architecturen beschikbaar zijn. Na deze opleiding kan u van a tot z uw project beheren.

De opleiding bestaat uit 4 verschillende modules waarbij de toekomstige Software Architect zowel theoretisch als praktisch getraind wordt door een ervaren Senior Software Architect die vanuit zijn ervaring de kennis en best practices zal bijbrengen.

Voor wie is deze opleiding bestemd?

  • U heeft minstens 2 jaar projectervaring als software developer of technisch software analist en u heeft een sterke interesse in software architectuur
  • U heeft de ambitie om door te groeien tot Software Architect
  • U heeft de programmeerkennis en u wil leren hoe u een nieuw softwareproject moet aanpakken

Voorkennis

Personal skills/competenties:

analytisch denkvermogen, empathie, assertief, communicatief, aanleg voor formalisme,...

Technical skills:

  • minstens 2 jaar actieve programmeerervaring in OOP-taal zoals: VB.NET, of C#.NET, JAVA, C++,...
    of
  • technische kennis equivalent aan de opleiding: "C# Webdeveloper"  (zie ook:  http://www.sbmopleidingen.be/opleidingen/netwerken_systemen_security_en_programmeren/professional__programmeren_en_web_programmeren/c__webdeveloper.html)

Methodologie

Belangrijk om weten:

  • Om de opleiding te kunnen meevolgen is het noodzakelijk dat deelnemers een Laptop met een Windows OS meebrengen.
  • Visual Studio 2017  - met  zowel .NET CORE als .NET Framework - dient vóór de start van de opleiding geïnstalleerd te worden op de laptop door de deelnemer. Hiervoor kan u eventueel de gratis Community Edition downloaden.
software-architect-agile-devel-3-traject_2012-639.png

Programma

Module 1: High-level architecture and Object-Oriented Design

Het ontwerpen van business logica componenten in een object georiënteerd model is van groot belang in het ontwikkeltraject. Een correct ontwerp zorgt voor onderhoudbare code en bevordert re-usability van de geprogrammeerde libraries.

In deze module ligt de focus op zaken zoals:

  • Domain modellen en class diagrams
  • Multi-tiered applictions
  • Layered applications
  • SOLID principes
  • Low coupling & High cohesion
  • Object composition over inheritance

 

Module 2: Design Patterns

Het gebruik van Design Patterns in een software project leidt tot een beter onderhoudbare en flexibele codebase. Het goed inzetten van de juiste patronen vraagt gespecialiseerde kennis en inzichten.

In deze module komen de meeste gebruikte patronen aan bod:

  • Creational patterns
  • Factory
  • Singleton
  • Structural patterns
  • Adapter
  • Proxy
  • Facade
  • Decorator
  • Behavioral patterns
  • Visitor
  • Observer
  • User-Interface patterns
  • Model-View-Patterns

Module 3: Service Oriented Architecture (SOA)

SOA is een veel gebruikte architectuur in moderne applicaties. Het gebruik van services zorgt voor een 'loosely coupled' implementatie model waarbij user interface losgekoppeld is van de business logica. Dit zorgt voor een hoge flexibiliteit waarbij onafhankelijk van de gekozen user interface technologie een heel open oplossing kan gebouwd worden.

Aandachtspunten in SOA zijn:

  • Service abstraction
  • Service statelessness
  • Operation contracts
  • Data transfer objects

In deze module komen standaarden en technologieën als SOAP, REST, WCF, WebAPI, websockets,... aan bod en worden praktische voorbeelden uiteengezet.

Module 4: Unit testing and source control

Hoe een team omgaat met het testen van code en met de development principes beïnvloedt de kwaliteit en onderhoudbaarheid van de code. De gekozen werkwijze naar source control, documentatie en testbaarheid van code is de verantwoordelijkheid van de architect.

Onderwerpen in deze module:

  • Unit Testing en Test Driven Design
  • Source control

 

Module 5: Asynchronous programming

Op vandaag is het ondenkbaar van enkel nog code te schrijven dat sequentieel werkt: vele routines worden in parallel geschreven om beter gebruik te maken van de resources van de machines. Sommige programmeeromgevingen geven ook geen andere opties meer dan asynchroon te programmeren. Bijvoorbeeld: in Xamarin gebeuren alle requests voor het Filesystem asynchroon. In deze module leert u wat threads zijn, hoe ermee te werken en welke patterns hiervoor gebruikt kunnen worden.

Onderwerpen in deze module:

  • Thread and Threadpool
  • Thread synchronization (monitor, Mutex and Semaphore)
  • Task Parallel Library
  • Async/Await
  • Reactive Extensions (Rx) in C#

Deze opleiding wordt georganiseerd door onze partner SBM, cvba Skilliant.

Kies eerst een locatie/tijdstip om deze gegevens te kunnen zien

Lesdata

Datum Startuur Einduur
donderdag 05/03/2020 09:00 12:00
donderdag 05/03/2020 13:00 16:00
donderdag 12/03/2020 09:00 12:00
donderdag 12/03/2020 13:00 16:00
donderdag 19/03/2020 09:00 12:00
donderdag 19/03/2020 13:00 16:00
donderdag 26/03/2020 09:00 12:00
donderdag 26/03/2020 13:00 16:00
donderdag 02/04/2020 09:00 12:00
donderdag 02/04/2020 13:00 16:00
donderdag 23/04/2020 09:00 12:00
donderdag 23/04/2020 13:00 16:00

Data onder voorbehoud van eventuele wijzigingen.

Locatie

  • SBM Gent
  • Tramstraat 63
  • 9052 Zwijnaarde
Bekijk op Google Maps

Contact

  • T: 078 35 39 30
  • F: 051/268754
  • info@escala.be