Skills à maîtriser

💙 OOP

<aside> 📘 L'OOP (Object-Oriented Programming) est un paradigme de programmation qui se concentre sur la modélisation des problèmes du monde réel en utilisant des objets, qui sont des instances de classes. Il favorise :

pour organiser et structurer le code, facilitant ainsi la réutilisation, la maintenabilité et la modularité des logiciels.

</aside>

Notions de base

How to explain object-oriented programming concepts to a 6-year-old

Encapsulation :

<aside> 💠 Supposons que nous ayons un programme. Il comporte quelques objets logiquement différents qui communiquent entre eux - selon les règles définies dans le programme.

L'encapsulation est réalisée lorsque chaque objet garde son état privé, à l'intérieur d'une classe. Les autres objets n'ont pas d'accès direct à cet état.

Au lieu de cela, ils ne peuvent qu'appeler une liste de fonctions publiques - appelées méthodes.

</aside>

Abstraction :

<aside> 💠 L'abstraction peut être considérée comme une extension naturelle de l'encapsulation.

Dans la conception orientée objet, les programmes sont souvent extrêmement volumineux. Et les objets distincts communiquent souvent entre eux. Il est donc difficile de maintenir une base de code aussi importante pendant des années - avec des changements en cours de route.

🎯 L'abstraction est un concept qui vise à résoudre ce problème.

L'application de l'abstraction signifie que chaque objet ne doit exposer qu'un mécanisme de haut niveau permettant de l'utiliser.

</aside>

Héritage:

<aside> 💠 Les objets sont souvent très similaires. Ils partagent une logique commune. Mais ils ne sont pas tout à fait identiques.

Alors, comment réutiliser la logique commune et extraire la logique unique dans une classe distincte ?

➡️ L'un des moyens d'y parvenir est l'héritage.

Cela signifie que vous créez une classe (enfant) en dérivant d'une autre classe (parent). De cette manière, nous formons une hiérarchie.

</aside>

Polymorphisme:

<aside> 💠 Disons que nous avons une classe mère et quelques classes enfants qui héritent d'elle. Parfois, nous voulons utiliser une collection - par exemple une liste - qui contient un mélange de toutes ces classes. Ou bien nous avons implémenté une méthode pour la classe mère, mais nous aimerions l'utiliser aussi pour les enfants.

En termes simples, le polymorphisme permet d'utiliser une classe exactement comme son parent, de sorte qu'il n'y a pas de confusion dans le mélange des types. Mais chaque classe enfant conserve ses propres méthodes telles qu'elles sont.

</aside>

Guide complet OOP

What Is Object-Oriented Programming (OOP)? A Complete Guide | Indeed.com

Dans ce guide, retrouve :