Formation Programmation orientée objet

Maîtrisez la POO moderne : bases, SOLID, design patterns et apprenez à intégrer un module IA dans vos projets.

Formation Programmation orientée objet

Description

Cette formation Programmation Orientée Objet vous permettra d’acquérir des bases solides en POO tout en adoptant une approche moderne du développement.

Pendant 3 jours, vous apprendrez à :

  • refactorer un code existant,
  • introduire des patterns comme Singleton, Fabrique ou Stratégie,
  • connecter une API d’IA pour automatiser des tâches (résumé, tri, classification…).

Un projet fil rouge vous accompagnera tout au long de la formation : système de gestion de bibliothèque et intégration d'un assistant d’organisation de tâches capable de proposer des priorités grâce à un module IA intégré.

Public

Cette formation s'adresse aux développeur·se·s qui maîtrisent déjà un langage (Python, JavaScript, Java, etc.) et souhaitent passer d’un code principalement fonctionnel ou procédural à une architecture objet claire et maintenable.

Formation IA-friendly

Cette formation étant IA friendly, les sessions sont adaptées aux développeur·se·s qui souhaitent utiliser de l'IA pour coder. Les exercices sont conçus pour tirer parti des IDEs agentiques. Le·a formateur·rice vous accompagnera sur les bonnes pratiques du développement assisté par IA.

Campus Atlas

Cette formation est éligible au dispositif Campus Atlas. Il permet aux entreprises relevant de l'OPCO Atlas de suivre des formations sélectionnées à tarifs négociés, avec une prise en charge pouvant aller jusqu'à 100% selon votre branche et votre situation. Ce dispositif s'adresse aux entreprises cotisantes/adhérentes à Atlas et à leurs salarié·e·s.
Voir la page Campus Atlas de la formation

Les objectifs

  • Manipuler les concepts clés de la POO (classes, objets, héritage, polymorphisme)
  • Structurer un code orienté objet propre et maintenable
  • Appliquer les principes SOLID à un projet réel
  • Refactorer un code existant vers une architecture objet
  • Mettre en œuvre des design patterns simples (Singleton, Fabrique, Stratégie)
  • Intégrer un service ou une API d’IA dans un flux orienté objet

Pré-requis

  • Avoir déjà pratiqué au moins un langage de programmation (Python, JavaScript, Java, etc.)
  • Être à l’aise avec les notions de variables, fonctions, boucles et conditions
  • Ordinateur portable à apporter

Le programme de la formation Programmation orientée objet

Jour 1 — Fondations POO + modèle mental

  • Pourquoi la POO (et quand éviter)
    • Limites du “spaghetti” : complexité, imprévisibilité
    • Notions clés : modélisation, invariants, responsabilités
    • Cohésion vs couplage : pourquoi c’est LA boussole
  • Les concepts POO
    • Classes / objets : état + comportements
    • Encapsulation : invariants, visibilité, API publique
    • Héritage vs composition : où ça aide / où ça piège
    • Polymorphisme : variations de comportement, substituabilité

Mises en pratiques :

  • À partir d’un besoin volontairement flou (ex. gestion d’emprunts), modéliser le domaine : identifier entités, responsabilités, invariants et premières collaborations entre objets
  • Refactorer un code “spaghetti” existant en modèle objet cohérent, en mesurant l’impact des choix (cohésion, couplage, lisibilité)

Jour 2 — Concevoir proprement : SOLID, refactoring, smells, testabilité + IA “assistante”

  • Principes SOLID
    • SRP / OCP / LSP / ISP / DIP : symptômes typiques + corrections
    • Smells : duplication, classes mammouth, dépendances concrètes, “feature envy”
  • Stratégies de conception
    • Interfaces et points de variation
    • Découplage : injection de dépendances
  • Testabilité (au cœur du design)
    • Tests unitaires : isoler la logique
    • Mocks/stubs : quand et pourquoi
    • Tests d’intégration : ce qu’ils révèlent sur l’architecture
  • IA : comment l’encadrer pour du design / refactoring
    • Prompts efficaces : “propose 2 designs alternatifs + trade-offs”
    • Checklist humaine : cohésion/couplage, SOLID, lisibilité, testabilité
    • Anti-pièges : l’IA qui “sur-design” ou invente des besoins

Mises en pratique :

  • Identifier les principaux smells sur un code fourni, puis appliquer des refactorings guidés par SOLID (avant / après mesuré par testabilité et lisibilité)
  • Utiliser une IA comme copilote de design : comparer deux propositions de refactoring générées par l’IA, analyser les trade-offs et valider une solution “humaine”

Jour 3 — Design patterns utiles + architecture “propre” + IA intégrée de façon réaliste

  • Patterns : peu mais bien
    • Strategy (variantes de règles : pénalités, notifications, priorités…)
    • Factory
    • Observer / Publisher-Subscriber (événements : emprunt, retour, retard)
  • Architecture & intégration
    • “Use cases” / services applicatifs vs domaine
    • Dépendances : comment garder le domaine stable
    • Metrics rapides : cohésion/couplage “à l’œil” + règles d’architecture
  • IA intégrée “utile”
    • IA comme module de recommandation (ex : suggestion de catégories / résumés)
    • IA comme assistant interne (ex : génération de plan de refacto, tests, doc)

Mises en pratiques :

  • Introduire progressivement des patterns (Strategy, Factory, Observer) sur un code fourni pour gérer des variations métier sans complexifier le domaine
  • Intégrer un module IA réaliste (recommandation ou assistance interne) en respectant les frontières d’architecture et la stabilité du cœur métier

Télécharger le programme

Formateurs

Arnaud BECHELER

Arnaud Becheler, docteur en écologie évolutive et expert en C++, s'est forgé une réputation unique en associant ses compétences scientifiques à une expertise technique pointue. Spécialisé dans la conception de modèles prédictifs et de simulations en C++, il a utilisé son expertise pour modéliser des dynamiques écologiques complexes.

Outre ses contributions scientifiques, Arnaud continue d'enrichir la communauté open-source avec ses projets en C++. Ses outils logiciels ont été présentés lors de conférences internationales et approuvés par de nombreux experts du domaine. Passionné par le partage des connaissances, il a organisé de nombreux workshops et conférences sur des sujets liés au C++ et au machine learning.

Arnaud est un membre très actif dans la communauté C++, il organise notamment des meetups et partage ses connaissances lors de conférences internationales.

Avec plus de 10 ans d'expérience, il intervient aujourd'hui en tant que consultant, offrant son savoir-faire en intelligence artificielle, machine learning et architectures logicielles.

Evan BOISSONNOT

Du plaisir, du fun, avant tout passer un bon moment, c'est ce qui caractérise l'état d'esprit d'Evan tous les jours.
Passionné de code depuis plus de 20 ans, Evan a mis à profit sa passion en créant une entreprise de développement logiciel (durant 8 ans, avec 14 salariés).

Soucieux de la qualité logicielle, et adepte des démarches craftsmanship, TDD et BDD, il a une vision agile et essaye de s’améliorer et progresser en permanence.

Ses amours fous : .net avec C# (ASP.NET Core), JavaScript, Angular, Node.js
Ses IDEs favoris : Visual Studio, Visual Studio Code
Ses découvertes du moment : React, Python (oui, faut pas mourir idiot quand même :=p)

Evan continue aujourd’hui à développer, pour lui, pour ses clients (audits, conseils, et réalisation).
Former est pour Evan une vocation : il aime transmettre et souhaite donner le goût de coder au plus grand nombre !!

FAQ

Nos formations sont éligibles à plusieurs dispositifs de financement, selon votre situation. Human Coders est certifié Qualiopi, ce qui permet la prise en charge par des organismes comme Pôle emploi, votre OPCO ou encore le CPF (Compte Personnel de Formation) pour certaines formations.

Pour en savoir plus, veuillez consulter notre page : Comment financer votre formation ?

Oui, la formation peut être proposée en présentiel ou en distanciel. Pour les inter-entreprises, les modalités (présentiel ou à distance) sont fonction de la session.

Nous pouvons organiser des sessions à d'autres dates ou dans d'autres villes (Bordeaux, Lille, Lyon, Marseille, Montpellier, Nantes, Nice, Paris, Strasbourg, Toulouse...)

Les formations se déroulent toujours en petit groupe de 3 à 6 stagiaires. Nous souhaitons que les formateurs et formatrices puissent passer un maximum de temps avec chacun·e.

Voici une journée type :

  • 9h : vous êtes accueillis par votre formateur·rice autour d'un petit déjeuner (croissants, pains au chocolat, jus de fruit, thé ou café...)
  • 9h30 : la formation commence
  • 12h30 : pause de midi. Le·a formateur·rice mangera avec vous. C'est l'occasion d'avoir des discussions plus informelles.
  • 14h : reprise de la formation
  • 18h : fin de la journée

8 raisons de participer à une formation Human Coders

  • Satisfaction client élevée : Un taux de statisfaction de 4,6/5 depuis 2012 (sur 1802 sessions réalisées). 99% des participants se disent satisfaits de nos formations
  • Approche pédagogique unique : Des formations en petit groupe, des formateurs passionnés et expérimentés, de véritables workshops... (Plus d'infos sur notre manifeste)
  • Catalogue de formations complet : 214 formations au catalogue, de quoi vous accompagner sur tout vos projets
  • Écosystème dynamique : Nous accompagnons les dev depuis 13 ans avec des initiatives comme Human Coders News, les Human Talks, le podcast ou encore notre serveur Discord
  • Financement facilité : Organisme certifié Qualiopi, indispensable pour que vous puissiez obtenir des aides au financement via votre OPCO
  • Références clients prestigieuses : De nombreux clients qui nous font confiance depuis des années
  • Accompagnement sur mesure : Nous vous proposons un accompagnement personnalisé par nos consultants pour vous aider dans vos projets au-delà de la formation
  • Valorisation professionnelle : Remise d'un diplôme, d'une attestation et d'une certification, suivant les formations effectuées, que vous pourrez afficher sur vos CV et réseaux sociaux

* Nombre de personnes ayant répondu au questionnaire de satisfaction sur cette formation depuis 2012