Sobes.tech
Junior — Middle

D harfi dasturlashda SOLID tamoyillarida nima anglatadi?

sobes.tech AI

AIdan javob

SOLID tamoyilarida D harfi Dependency Inversion Principle (Bog'lanishlarni teskari aylantirish prinsipi) ni anglatadi. Bu quyidagilarni bildiradi:

  • Yuqori darajadagi modullar past darajadagi modullarga bog'liq bo'lmasligi kerak. Ikkalasi ham abstraktsiyalarga bog'liq bo'lishi kerak.
  • Abstraktsiyalar detallarga bog'liq bo'lmasligi kerak. Detallar abstraktsiyalarga bog'liq bo'lishi kerak.

Bu, komponentlar to'g'ridan-to'g'ri o'zaro bog'liq bo'lmagan, interfeyslar orqali bog'langan, moslashuvchan va oson kengaytiriladigan arxitekturalar yaratishga yordam beradi.

Swiftda misol:

protocol DataService {
    func fetchData() -> String
}

class NetworkService: DataService {
    func fetchData() -> String {
        return "Tarmoqdan ma'lumotlar"
    }
}

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()) // Chiqish: Tarmoqdan ma'lumotlar

Bu yerda, ViewModel, NetworkService ning aniq amalga oshirishiga emas, balki, DataService abstraktsiyasiga bog'liq.