Programmation orientée objet - MATLAB & Simulink

MATLAB

Programmation orientée objet dans MATLAB

Modéliser des objets du monde réel et gérer la complexité des logiciels

Utiliser la programmation orientée objet pour modéliser des objets du monde réel

La programmation orientée objet est une approche de design qui vous permet de définir de manière programmatique des structures appelées objets, qui combinent des données (propriétés) et des fonctions qui opèrent sur ces données (méthodes). Dans MATLAB®, vous pouvez créer des objets qui modélisent le comportement de dispositifs et de systèmes en conditions réelles. Ces objets peuvent ensuite être utilisés comme blocs de base dans des applications permettant de simuler et d'analyser des systèmes complexes.


Les objets MATLAB offrent une interface bien définie qui masque la complexité interne.

Utiliser la programmation orientée objet pour gérer la complexité des logiciels

Grâce à la programmation orientée objet dans MATLAB, vous pouvez gérer la complexité logicielle en organisant votre code en composants logiques qui sont plus faciles à maintenir et à étendre. Vous pouvez éviter la duplication de code en créant des objets réutilisables avec des interfaces bien définies qui masquent la complexité du code sous-jacent. De plus, les objets que vous créez peuvent évoluer au fil du temps sans introduire d'incompatibilité dans le code client.


Les composants d'une classe MATLAB

Une classe MATLAB définit un schéma conceptuel ou un ensemble d'instructions utilisé pour créer un type d'objet spécifique. Les définitions de classes commencent par le mot-clé classdef et contiennent trois composants principaux :

  • Les blocs properties définissent les propriétés qui stockent les données spécifiques à chaque objet de la classe. 
  • Les blocs methods contiennent un ensemble de fonctions qui définissent les opérations pouvant être effectuées sur chaque objet de la classe.
  • Les blocs events définissent les messages qu'un objet peut envoyer à d'autres parties d'une application lorsqu'une modification a lieu sur cet objet.

Les composants d'une classe MATLAB

Un exemple de définition de classe MATLAB.

MATLAB fournit des attributs de propriété/méthode et une syntaxe de validation pour appliquer les types, les tailles et les valeurs des propriétés.

MATLAB fournit des attributs de propriété/méthode et une syntaxe de validation pour appliquer les types, les tailles et les valeurs des propriétés.

Définir des propriétés et des méthodes

Lorsque vous définissez une classe, vous pouvez spécifier des attributs pour contrôler le comportement des propriétés et des méthodes de votre classe et la manière d'y accéder depuis l'extérieur de l'objet. Par exemple, les propriétés et les méthodes peuvent être publiques, privées ou protégées. Lorsque vous spécifiez des propriétés, vous pouvez utiliser la syntaxe de validation afin d'éviter d'avoir à rédiger manuellement du code pour la vérification des erreurs.


Travailler avec des objets

Vous pouvez créer des objets à l'aide d'une méthode spéciale appelée le constructeur de classes. Appeler le constructeur revient à appeler n'importe quelle fonction MATLAB. Il peut être utilisé pour créer un objet unique ou un tableau d'objets. Vous pouvez accéder aux propriétés des objets comme vous le feriez pour les champs d'une structure. Les méthodes d’objet sont appelées de la même manière que des fonctions MATLAB ordinaires.

Les objets MATLAB présentent des caractéristiques uniques par rapport à d'autres langages. Par exemple, vous pouvez modifier une classe à tout moment et les objets de cette classe seront immédiatement mis à jour. En outre, MATLAB gère le cycle de vie des objets sans nécessiter d'allocation ni de désallocation explicite de la mémoire et sans le type de récupération de mémoire non déterministe utilisé dans d'autres langages.

Créez et utilisez des objets MATLAB à l'aide d'une syntaxe familière.

Créez et utilisez des objets MATLAB à l'aide d'une syntaxe familière.