C# Intermédiaire : Optimiser le modèle objet

Inter-company training

How long does the training course last?

 3,00 day(s)

In which language(s) is the training course taught?

EN FR

When will the next session take place?

Who is organising this training course?

Dawan is a training organisation that offers more than 2000 training courses in IT, management, project management and sales in instructor-led live online or on-site trainings. We have 11 centres in France and we have developed partnerships with local structures in Brussels, Luxembourg and Geneva. Our catalogue includes hundreds of topics: Java, PHP, Webmaster, E-Marketing, Linux, Windows Server, Vmware, Autocad, Photoshop, IA etc. Our courses have been created and designed by in-house trainers who have over 20 years of teaching experience. Constantly renewed, they are adapted to the requirements of our customers and to the evolution of technologies.

Who is the training course aimed at?

Développeurs C#

What are the prerequisites?

Avoir suivi la formation C# Initiation+Approfondissement ou notions équivalentes

What are the aims or the skills being targeted?

Maîtriser les fondements de la POO - Comprendre la décomposition d'une application d'entreprise en objets (conception/design OO) - Appliquer les principes de regroupement, de structuration et de communication entre les objets d'un système complexe - Concevoir des systèmes OO de manière à favoriser la maintenabilité et faciliter le changement dans un contexte itératif - Appliquer les principes S.O.L.I.D. - Comprendre certains modèles de conception d'entreprise (Repository, Factory, DTO) - Connaître la place et les différences entre les styles architecturaux - Connaître quelques modèles architecturaux (DDD, Clean Architecture...) - Concevoir des applications faiblement couplées et cohésives

What does the training course cover?

Maîtriser les fondements de la conception objet

Encapsulation: intérêt, bonnes pratiques
Agrégation d'objets
Héritage: cas d'usage, préférence pour la composition
Polymorphisme: ad-hoc, sous-typage, types paramétriques
Objets Valeurs (Value Objects)
Cercle vertueux de l'ignorance

Atelier: construire un schéma de classes cohérent

Gérer l'interaction entre les objets du système

Tell don't ask
Gestion des dépendances
Découpage des règles d’affaires basé sur l’interaction
Conception basée sur les comportements
Loi de Déméter

Atelier: implémentation de comportements

Concevoir un domaine et découper des objets

Conception par concepts plutôt que par données: concepts, types d'objets
Architecture Héxagonale
Présentation des principes SOLID
Principe de la responsabilité unique (SRP)
Principe de l’ouverture-fermeture (OCP)

Atelier: multiples exemples de mauvaise/bonne implémentation

Introduire une abstraction

Métrique de l'Abstraction-Instabilité (R. C. Martin)
Principe de substitution de Liskov (LSP)
Composition versus héritage
Principe de la ségrégation des interfaces (ISP)

Atelier: analyse d'un code et présentation des métriques - ré-écriture d'exemples concrets

Concevoir une application en couches

Conception modulaire
Conception d'un domaine d'affaires (aperçu du DDD)
Séparation de l’infrastructure (persistance, UI, ORM, etc.)
Principe d’inversion des dépendances (DIP)
Entrepôts référentiels (Repositories)
Objet de transport (DTO)
Présentation de la clean architecture

Atelier: implémentation d'une application en couches

What teaching methods are used?

Méthodologie basée sur l'Active Learning : 75% de pratique minimum. Chaque point théorique est systématiquement suivi d'exemples et exercices.

How is the assessment organised?

Contrôle continu

What will you receive at the end of the training course?

Attestation de fin de stage mentionnant le résultat des acquis

What course materials are provided?

Sources des exercices + Support papier

How to contact the training provider?

Dawan - Service commercial

These courses might interest you