La programmation orientée objet (POO) est un paradigme de programmation qui utilise l'idée d'« objets » pour représenter des données et des méthodes. Ceci est particulièrement utile lorsqu'il s'agit de créer des applications complexes, car cela permet aux développeurs de mieux organiser leur code et de le rendre plus réutilisable. Dans cette section, nous présenterons le concept de programmation orientée objet dans Dart, le langage de programmation utilisé par Flutter.
1. Classes et objets
En programmation orientée objet, une classe est un plan ou un modèle à partir duquel des objets sont créés. Dans Dart, vous définissez une classe à l'aide du mot-clé class
. Par exemple, vous pourriez avoir une classe appelée Person
qui possède des propriétés telles que name
et age
. Une fois que vous avez une classe, vous pouvez créer un objet à partir de celle-ci. Par exemple :
Dans cet exemple, Person
est la classe et person
est l'objet. Notez que vous pouvez attribuer des valeurs aux propriétés des objets en utilisant la notation par points.
2. Méthodes
Les méthodes sont des fonctions qui appartiennent à une classe. Ils manipulent généralement les propriétés de la classe. Par exemple, vous pourriez avoir une méthode greet
dans la classe Person
qui imprime un message d'accueil personnalisé :
3. Constructeurs
Un constructeur est une méthode spéciale appelée lorsqu'un objet est créé à partir d'une classe. Dans Dart, le constructeur porte le même nom que la classe. Vous pouvez utiliser le constructeur pour initialiser les propriétés de l'objet. Par exemple :
Dans cet exemple, le constructeur Person
accepte deux paramètres et les utilise pour initialiser les propriétés name
et age
.
4. Héritage
L'héritage est une fonctionnalité de la programmation orientée objet qui permet à une classe d'hériter des propriétés et des méthodes d'une autre classe. Dans Dart, vous utilisez le mot-clé extends
pour créer une classe enfant. Par exemple, vous pourriez avoir une classe Employee
qui hérite de Person
:
Dans cet exemple, Employee
est une classe enfant de Person
et hérite de ses propriétés et méthodes. Notez l'utilisation de super
dans le constructeur Employee
pour appeler le constructeur Person
.
5. Encapsulation
L'encapsulation est le principe qui consiste à masquer les détails de l'implémentation et à autoriser l'accès uniquement via des méthodes. Dans Dart, vous pouvez utiliser le mot-clé _
(trait de soulignement) pour rendre une propriété ou une méthode privée. Par exemple :
Dans cet exemple, les propriétés _name
et _age
sont privées, ce qui signifie qu'elles ne sont pas accessibles en dehors de la classe Person
.
Voici les concepts de base de la programmation orientée objet dans Dart. Ils constituent la base de la création d'applications Flutter plus complexes et réutilisables.