Junior — Middle
Extentionте функционалдуулук кеңейтүүдө колдонуу үчүн кандай түрдөгү баштапкы түзмөктөр бар?
sobes.tech AI
AIден жооп
Swiftте кеңейтүүлөр (Extensions) жаңы белгиленген (designated) баштапкы түзүүчүлөрдү кошо албайт, бирок аларга ыңгайлуу (convenience) баштапкы түзүүчүлөрдү кошо алат, эгер алар учурдагы менен кагылышпаса. Ошондой эле, учурдагы баштапкы түзүүчүлөрдү кайра аныктоо мүмкүн эмес.
Демек, кеңейтүүлөрдө гана ыңгайлуу баштапкы түзүүчүлөрдү ишке ашырууга болот, алар бар белгиленген баштапкы түзүүчүлөрдү чакырып, объект түзүүнү жеңилдетет.
Мисал:
extension UIColor {
convenience init(hex: String) {
// Hex сапты түскө айландыруу
self.init(red: 0, green: 0, blue: 0, alpha: 1) // мисал
}
}