Junior — Middle
Mit jelent a D betű a SOLID elvekben szoftverfejlesztés során?
sobes.tech MI
Válasz az MI-től
A SOLID elvek D betűje a Dependency Inversion Principle (Függőség fordított elv) jelentése. Ez kimondja, hogy:
- A magas szintű moduloknak nem szabad alacsony szintű moduloktól függniük. Mindkettőnek az absztrakcióktól kell függnie.
- Az absztrakciók nem szabad, hogy a részletektől függjenek. A részleteknek az absztrakcióktól kell függniük.
Ez segít rugalmas és könnyen bővíthető architektúrák létrehozásában, ahol a komponensek interfészeken keresztül kapcsolódnak egymáshoz, nem közvetlenül.
Swift példával:
protocol DataService {
func fetchData() -> String
}
class NetworkService: DataService {
func fetchData() -> String {
return "Hálózati adatok"
}
}
class ViewModel {
private let service: DataService
init(service: DataService) {
self.service = service
}
func getData() -> String {
return service.fetchData()
}
}
let networkService = NetworkService()
let viewModel = ViewModel(service: networkService)
print(viewModel.getData()) // Kimenet: Hálózati adatok
Itt a ViewModel nem függ a NetworkService konkrét megvalósításától, hanem az absztrakciótól, a DataService-től.