Programmazione orientata agli oggetti - MATLAB & Simulink

MATLAB

Programmazione orientata agli oggetti in MATLAB

Modellazione di oggetti del mondo reale e gestione della complessità del software

Utilizzo della programmazione orientata agli oggetti per modellare oggetti del mondo reale

La programmazione orientata agli oggetti è un approccio di progettazione che consente di definire in modo programmatico strutture chiamate oggetti che combinano dati (proprietà) con funzioni che operano su tali dati (metodi). In MATLAB® è possibile creare oggetti che modellano il comportamento di dispositivi e sistemi nel mondo reale. Questi oggetti possono quindi essere utilizzati come elementi costitutivi in ​​applicazioni utilizzate per simulare e analizzare sistemi complessi.


Gli oggetti MATLAB forniscono un’interfaccia ben definita che nasconde la complessità interna.

Utilizzo della programmazione orientata agli oggetti per gestire la complessità del software

Utilizzando la programmazione orientata agli oggetti in MATLAB, puoi gestire la complessità del software organizzando il codice in componenti logici più facili da mantenere ed estendere. Puoi evitare la duplicazione del codice creando oggetti riutilizzabili con interfacce ben definite che nascondono la complessità del codice sottostante. Inoltre, i tuoi oggetti possono evolversi e cambiare nel tempo senza creare incompatibilità nel codice client.


I componenti di una classe MATLAB

Una classe MATLAB contiene un progetto o una serie di istruzioni utilizzate per costruire un tipo specifico di oggetto. Le definizioni di classe iniziano con la parola chiave classdef e hanno tre componenti principali:

  • I blocchi properties definiscono le proprietà che memorizzano i dati per ciascuno degli oggetti della classe 
  • I blocchi methods contengono una serie di funzioni che definiscono le operazioni che possono essere eseguite su ogni oggetto della classe
  • I blocchi events definiscono i messaggi che un oggetto invierà ad altre parti di un’applicazione in caso di modifiche di quell’oggetto

I componenti di una classe MATLAB

Un esempio di definizione di classe MATLAB.

MATLAB fornisce gli attributi di proprietà/metodo e la sintassi di validazione per applicare dimensioni, valori e tipi di proprietà.

MATLAB fornisce gli attributi di proprietà/metodo e la sintassi di validazione per applicare dimensioni, valori e tipi di proprietà.

Definizione di proprietà e metodi

Quando definisci una classe, puoi specificare gli attributi per controllare come si comportano le proprietà e i metodi della classe e come sono accessibili dall’esterno dell’oggetto. Ad esempio, proprietà e metodi possono essere pubblici, privati ​​o protetti. Quando si specificano le proprietà, è possibile utilizzare la sintassi di validazione per evitare di scrivere codice per il controllo degli errori.


Uso degli oggetti

Puoi creare oggetti utilizzando un metodo speciale chiamato costruttore di classi. Chiamare il costruttore è come chiamare qualsiasi funzione MATLAB e in questo modo è possibile creare un singolo oggetto o una serie di oggetti. Puoi accedere alle proprietà dell’oggetto nello stesso modo in cui accedi ai campi di una struttura. I metodi degli oggetti vengono chiamati proprio come le normali funzioni MATLAB.

Gli oggetti MATLAB hanno caratteristiche uniche rispetto ad altri linguaggi. Ad esempio, puoi modificare una classe in qualsiasi momento e gli oggetti di quella classe verranno aggiornati immediatamente. Inoltre, MATLAB gestisce il ciclo di vita degli oggetti evitando allocazioni e deallocazioni esplicite della memoria e senza il tipo di garbage collection non deterministico utilizzato in alcuni altri linguaggi.

Crea e utilizza gli oggetti MATLAB con una sintassi familiare.

Crea e utilizza gli oggetti MATLAB con una sintassi familiare.