Junior — Middle
Puoi spiegare il significato della lettera D nei principi SOLID?
sobes.tech AI
Risposta dell'AI
La lettera D nei principi SOLID rappresenta il Principio di Inversione delle Dipendenze.
L'essenza di questo principio:
- I moduli di livello superiore non devono dipendere dai moduli di livello inferiore. Entrambi devono dipendere da astrazioni.
- Le astrazioni non devono dipendere dai dettagli. I dettagli devono dipendere dalle astrazioni.
Questo aiuta a ridurre l'accoppiamento del codice e ad aumentare la sua flessibilità e testabilità.
Esempio in Dart/Flutter:
abstract class Database {
void saveData(String data);
}
class SqlDatabase implements Database {
@override
void saveData(String data) {
print('Salvataggio dati nel DB SQL: $data');
}
}
class DataManager {
final Database database;
DataManager(this.database);
void save(String data) {
database.saveData(data);
}
}
void main() {
Database db = SqlDatabase();
DataManager manager = DataManager(db);
manager.save('Dati di esempio');
}
Qui, DataManager non dipende da un'implementazione concreta del database, ma dall'astrazione Database. Questo permette di cambiare facilmente l'implementazione del database senza modificare DataManager.