Junior — Middle
გაახალისეთ კონტროლის ინვერსია და მისი გამოყენება Spring ჩარჩოში
sobes.tech AI
პასუხი AI-სგან
მართვის გადაბრუნება (Inversion of Control, IoC) — ეს პრინციპია, რომლის მიხედვითაც ობიექტების შექმნისა და დაკავშირების მართვა გადაეცემა გარეგან კონტეინერს ან ჩარჩოს, ხოლო არა პირდაპირ აპლიკაციის კოდში. ეს საშუალებას აძლევს კომპონენტების კავშირი შემცირდეს და მოქნილობა გაიზარდოს.
Spring-ში IoC რეალიზებულია კონტეინერის მეშვეობით, რომელიც მართავს ობიექტების (ბინების) ციკლს და დამოკიდებულებებს. ობიექტების ხელით შექმნის ნაცვლად, დეველოპერი აღწერს დამოკიდებულებებს, ხოლო Spring ავტომატურად ინექცირებს საჭირო კომპონენტებს.
დამოკიდებულების ინექციის მაგალითი:
@Component
public class UserService {
private final UserRepository userRepository;
@Autowired
public UserService(UserRepository userRepository) {
this.userRepository = userRepository;
}
}
აქ, Spring ქმნის და გადმოსცემს UserRepository-ის ინстанციას UserService-ს, ავტომატურად მართავს დამოკიდებულებებს.