Anda menggunakan singleton untuk menyediakan contoh kelas yang boleh diakses dan dikongsi secara global Takrifan ini bukan unik untuk dokumentasi Apple. Artikel Wikipedia yang saya pautkan di atas juga menyatakan bahawa "Pelaksanaan corak tunggal mesti menyediakan akses global kepada contoh itu. "
Mengapa singleton digunakan dalam Swift?
Singleton ialah corak reka bentuk ciptaan, yang memastikan hanya satu objek seumpamanya wujud dan menyediakan satu titik akses kepadanya untuk mana-mana kod lain. Singleton mempunyai kebaikan dan keburukan yang hampir sama dengan pembolehubah global. Walaupun ia sangat berguna, ia melanggar modulariti kod anda.
Bilakah anda tidak boleh menggunakan singleton?
Satu-satunya situasi di mana anda harus mempertimbangkan singleton ialah apabila mempunyai lebih daripada satu contoh data yang sudah global sebenarnya akan menjadi ralat akses logik atau perkakasan.
Pautan Berkaitan:
- Kerapuhan yang ditimbulkan oleh Global State dan Singletons.
- Suntikan Ketergantungan untuk Mengelakkan Singleton.
- Kilang dan Singleton.
Singleton apa yang bagus?
Singleton harus digunakan apabila mengurus akses kepada sumber yang dikongsi oleh keseluruhan aplikasi, dan ia akan merosakkan jika berpotensi mempunyai berbilang kejadian kelas yang sama. Memastikan bahawa akses kepada rangkaian sumber dikongsi selamat ialah satu contoh yang sangat baik di mana corak jenis ini boleh menjadi penting.
Adakah singleton teruk Swift?
Singleton tidak teruk secara universal, tetapi dalam banyak situasi ia datang dengan satu set masalah yang boleh dielakkan dengan mewujudkan lebih banyak perhubungan yang jelas antara objek anda dan dengan menggunakan pergantungan suntikan.