Kirishni boshqarish
Swift kirishni boshqarish (access control)
Tiplar va a’zolarning ko‘rinuvchanligini public, internal, fileprivate va private bilan cheklang.
Darajalar
Swift’ning standart sozlamalari tabiatan xavfsiz: standart daraja — internal.
Sintaksis:
public(boshqa modullarga ko‘rinadi)internal(faqat modul ichida, standart)fileprivate(shu fayl)private(shu ko‘rinish sohasidagi tip/kengaytma)
Misol
public struct APIClient {
public init() {}
public func request() {}
}
struct Repository { // internal by default
fileprivate var cache: [String: String] = [:]
private func reset() { cache.removeAll() }
}
Ushbu misolda public API’lar, modul ichidagi tip, fayl darajasidagi xususiyat va private yordamchi funksiya ko‘rsatilgan.
Tiplar va a’zolar
A’zo o‘zini o‘rab turgan tipdan ko‘proq ko‘rinuvchan bo‘lishi mumkin emas.
Sintaksis:
public struct S { internal var x: Int }(to‘g‘ri)- lekin
internal struct S { public var x: Int }emas
Misol
internal struct Box { // whole type is internal
public var value: Int // warning/error: member more visible than type
}
A’zolarning ko‘rinuvchanligi o‘z tipinikidan oshmasligi kerak; undan past yoki teng ko‘rinuvchanlikka ruxsat beriladi.
Maslahat: Foydalanishga imkon beradigan eng cheklangan kirish darajasini afzal ko‘ring.
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
