Sobes.tech
Junior — Middle

Boshqaruvni teskari aylantirish konseptini va Spring ramkafurashida qo'llanilishini tushuntiring

sobes.tech AI

AIdan javob

Kontrolning Inversioni (Inversion of Control, IoC) — bu tamoyil, bunda obyektlarni yaratish va ulanishni boshqarish tashqi konteyner yoki ramka tomonidan amalga oshiriladi, bu esa to'g'ridan-to'g'ri dastur kodida emas. Bu komponentlar o'rtasidagi bog'liqlikni kamaytiradi va moslashuvchanlikni oshiradi.

Springda IoC obyektlarning (beanlarning) hayot aylanishi va bog'liqliklarini boshqaradigan konteyner orqali amalga oshiriladi. Dasturchi bog'liqliklarni tavsiflaydi va Spring kerakli komponentlarni avtomatik ravishda in'ektsiya qiladi.

Bog'liqlikni in'ektsiya qilish misoli:

@Component
public class UserService {
    private final UserRepository userRepository;

    @Autowired
    public UserService(UserRepository userRepository) {
        this.userRepository = userRepository;
    }
}

Bu yerda Spring UserRepository nusxasini yaratadi va UserService ga o'tkazadi, bog'liqliklar avtomatik ravishda boshqariladi.