Сиз класстын глобалдык жеткиликтүү, жалпы үлгүсүн камсыз кылуу үчүн колдоносуз Бул аныктама Apple документтерине гана тиешелүү эмес. Мен жогоруда шилтеме берген Wikipedia макаласында ошондой эле "Синглтон үлгүсүн ишке ашыруу ал инстанцияга глобалдык жеткиликтүүлүктү камсыз кылышы керек" деп айтылат.
Эмне үчүн Swiftте синглон колдонулат?
Singleton - бул жаратуу дизайн үлгүсү, ал түрдөгү бир гана объект бар экенин камсыздайт жана башка коддор үчүн ага бир гана жетүү чекити менен камсыз кылат. Singleton глобалдык өзгөрмөлөр менен дээрлик бирдей жакшы жана жаман жактарына ээ. Алар абдан ыңгайлуу болгону менен, кодуңуздун модулдуулугун бузушат.
Синглтонду качан колдонбошуңуз керек?
Синглтонду карап чыгышыңыз керек болгон бирден-бир жагдай - буга чейин глобалдык берилиштердин бирден ашык инстанциясы болгондо логикалык же аппараттык кирүү катасы.
Окшош шилтемелер:
- Глобалдык штат жана Singletons тарабынан колдонулган морттук.
- Синглеттерди болтурбоо үчүн көз карандылык инъекциясы.
- Заводдор жана Синглеттер.
Синглтон эмне үчүн жакшы?
Синглтон колдонмонун бүтүндөй бөлүшкөн ресурска кирүү мүмкүнчүлүгүн башкарууда колдонулушу керек жана бул бир класстын бир нече нускасына ээ болуу кыйратуучу болушу мүмкүн. Бөлүшүлгөн ресурстардын жиптерине кирүү мүмкүнчүлүгүнүн коопсуз экенине ынануу - бул үлгүнүн маанилүү болушунун эң сонун мисалы.
Синглтон жаман Swiftби?
Singletons жалпы эле жаман эмес, бирок көп учурларда алар объектилердин ортосунда так аныкталган мамилелерди түзүү жана көз карандылыкты колдонуу менен болтурбоо үчүн бир катар көйгөйлөр менен коштолот. инъекция.