Junior — Middle
SOLID prinsiplərində D hərfinin mənasını izah edə bilərsinizmi?
sobes.tech Süni İntellekt
AI-dan cavab
SOLID prinsiplərində D hərfi Dependency Inversion Principle (Asılılıqların Tərs Çevrilməsi Prinsipi) deməkdir.
Bu prinsipin mahiyyəti:
- Yuxarı səviyyəli modullar aşağı səviyyəli modullara bağlı olmamalıdır. Hər ikisi abstraksiyalara bağlı olmalıdır.
- Abstraksiyalar detallara bağlı olmamalıdır. Detallar abstraksiyalara bağlı olmalıdır.
Bu, kodun əlaqəliliyini azaltmağa və onun çevikliyini və test edilə bilməsini artırmağa kömək edir.
Dart/Flutter nümunəsi:
abstract class Database {
void saveData(String data);
}
class SqlDatabase implements Database {
@override
void saveData(String data) {
print('SQL bazasına məlumatların saxlanması: $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('Nümunə məlumat');
}
Burada, DataManager konkret verilənlər bazası tətbiqindən asılı deyil, Database abstraksiyasına bağlıdır. Bu, verilənlər bazası tətbiqini asanlıqla dəyişməyə imkan verir, DataManager-ı dəyişdirmədən.