Junior — Middle
Klass konstruktoridan foydalanib, bog'liqliklarni qanday in'ektsiya qilish mumkin?
sobes.tech AI
AIdan javob
Klassning konstruktor orqali bog'lanishni ta'minlash - bu ob'ektni yaratishda kerakli bog'lanishlarni konstruktor parametrlar orqali uzatish usulidir. Bu klassni yanada modulli va test qilish osonroq qiladi, chunki bog'lanishlar aniq tashqaridan uzatiladi.
Java misoli:
public class Service {
private final Repository repository;
// Konstruktor bog'lanishni qabul qiladi
public Service(Repository repository) {
this.repository = repository;
}
public void perform() {
repository.save();
}
}
// Foydalanish:
Repository repo = new DatabaseRepository();
Service service = new Service(repo);
Shunday qilib, Service klassi Repository bog'lanishini o'zi yaratmaydi yoki boshqarmaydi, balki tashqaridan oladi, bu esa amalga oshirishni o'zgartirish va test qilishni osonlashtiradi.