Junior — Middle
Môžete vysvetliť význam písmena D v princípoch SOLID?
sobes.tech AI
Odpoveď od AI
Písmeno D v princípoch SOLID znamená Princip závislosti na obrácení.
Podstata tohto princípu:
- Moduly vyššej úrovne by nemali závisieť od modulov nižšej úrovne. Oba by mali závisieť od abstrakcií.
- Abstrakcie by nemali závisieť od detailov. Detaily by mali závisieť od abstrakcií.
Toto pomáha znižovať prepojenosť kódu a zvyšovať jeho flexibilitu a testovateľnosť.
Príklad v Dart/Flutter:
abstract class Database {
void saveData(String data);
}
class SqlDatabase implements Database {
@override
void saveData(String data) {
print('Ukladanie dát do SQL DB: $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('Príkladové dáta');
}
Tu DataManager nezávisí od konkrétnej implementácie databázy, ale od abstrakcie Database. To umožňuje ľahko meniť implementáciu databázy bez nutnosti upravovať DataManager.