POO (Programmation Orienté Objet)
Ressources en cours d'écriture à titre informatif
Dernière mise à jour
Ressources en cours d'écriture à titre informatif
Dernière mise à jour
Souvent en tant que débutant, vous faites du code procédural.
La solution procédural
le Afin de traiter les données, on appréhende le problème en raisonnant de façon logique, d'un état initial vers un état final. Les données entrent dans l'algorithme, on applique les actions définies, et on termine. La programmation procédurale tend à une capitalisation dans l'écriture du programme. On tente de trouver des parties qui se répetent, identiques, de trouver des comportements types. Ce seront des procédures et fonctions, qu'on pourra stocker dans des bibliothéques, puis réutiliser.
Les défauts du procédural
Principe de Wirth (inventeur du langage Pascal) : Programme = algorithme + structure de données =>Forte dépendance du programme aux données => Peu de réutilisabilité => Peu d'interfaçage entre applications => Collaboration difficile entre programmeurs... => Evolution difficile, effet de bords, régressions...
L'idée de la POO
La Programmation Orientée Objet, c'est la tentative de réunir les données ET les traitements en une unité cohérente et maintenable. Dans le monde réel, tout est à la fois données et traitements... Une facture contient à la fois des données, et des calculs associés... Toute chose est à la fois dotée de caractéristiques (des données, des valeurs) et des comportements (des actions, des réactions à des stimulus, des messages).
Objet et POO pour bien comprendre :
[Développeur avancé]
Requis : POO (Programmation Orienté Objet => pas orienté Prototype comme dans JS) Pour ceux qui sont avancé comme @Thomas | blind-thomas family @Axone ... Je vous recommande un site pour apprendre la suite à la POO sur les patrons de conceptions (design pattern).
Refactoring.Guru vous facilite l’accès à tout ce que vous devez savoir sur la refactorisation, les patrons de conception, les principes SOLID, et d’autres sujets intéressants de la l'architecture et de la programmation.
C'est des notions général, mais on peut retrouver les mêmes patrons dans tous les langages POO.
Le site est vraiment complet :