Scope single vs factory
Pilih singleton atau instans baru
Scope single vs factory adalah pelajaran Kotlin Multiplatform Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Kotlin Multiplatform Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Kotlin Multiplatform Academy mencakup 4 pelajaran total.
Dua Cara untuk Membuat
Koin menyediakan dua kata kunci definisi utama: single dan factory. Keduanya berbeda dalam satu hal: seberapa sering Koin membuat objek tersebut.
single Berarti Satu Instance
single dibuat sekali dan digunakan bersama di mana saja. Setiap bagian aplikasi yang memintanya menerima objek yang sama persis. 🔁
single { UserRepository(get()) }factory Berarti Selalu Baru
factory membuat instance baru pada setiap permintaan. Tidak ada yang disimpan dalam cache, sehingga dua pemanggil tidak pernah berbagi objek yang sama.
factory { ProfileUseCase(get()) }Kapan Memilih single
Gunakan single untuk sesuatu yang menyimpan status atau mahal untuk dibuat, seperti repositori, klien HTTP, atau pengandar basis data.
Kapan Memilih factory
Gunakan factory ketika setiap pemanggil membutuhkan objeknya sendiri yang berumur singkat, seperti kasus penggunaan tanpa status atau pemeta sekali pakai.
single Bersifat Lazy secara Bawaan
single tidak dibuat saat Anda mendeklarasikannya. Koin membuatnya saat pertama kali benar-benar diminta, lalu mempertahankannya.
Paksa Pembuatan Eager
Perlu single yang siap saat aplikasi dimulai, bukan saat pertama kali digunakan? Tambahkan createdAtStart agar Koin membuatnya segera setelah wadah dimulai.
single(createdAtStart = true) { Analytics() }Mencampurnya dalam Graf
Sebuah repositori single dapat bergantung pada mapper factory. Koin dapat mencampur cakupan dengan baik, yaitu membuat factory baru di dalam single yang berumur panjang.
Waspadai Status Bersama
Jika Anda tidak sengaja membuat sesuatu sebagai single, para pemanggil mungkin berbagi status yang seharusnya bersifat pribadi. Ini merupakan sumber bug multiplatform yang sulit dilacak.
Module Praktis
Di sini, repositori berumur panjang dan kasus penggunaan baru ditempatkan berdampingan, masing-masing dengan cakupan yang sesuai dengan cara penggunaannya.
module {
single { UserRepository(get()) }
factory { LoginUseCase(get()) }
}Gunakan single sebagai Pilihan Awal
Jika ragu, mulailah dengan single. Sebagian besar layanan di seluruh aplikasi membutuhkan satu instance, dan Anda dapat beralih ke factory saat benar-benar membutuhkan objek baru.
Pemeriksaan Singkat
Pilih perilaku cakupan yang tepat.
Rangkuman
Anda telah mempelajari bahwa single menggunakan satu instance bersama, sedangkan factory membuat instance baru setiap kali. Pilih single untuk layanan bersama dan factory untuk pembantu berumur singkat. 👍
Belajar Kotlin dengan tutor AI — gratis
Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.
- Kursus
- 30
- Pelajaran
- 120
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Scope single vs factory” gratis?
Ya — teks lengkap “Scope single vs factory” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Kotlin Multiplatform Academy, upgrade ke CoddyKit PRO. Kursus Kotlin Multiplatform Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Scope single vs factory”?
Pilih singleton atau instans baru Kamu berlatih Kotlin Multiplatform Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Kotlin Multiplatform Academy?
Tidak diperlukan pengalaman sebelumnya. Kotlin Multiplatform Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.
Berapa lama pelajaran “Scope single vs factory” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Kotlin Multiplatform Academy ini?
Ya. Setiap pelajaran Kotlin Multiplatform Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Mendeklarasikan Modul Koin Bersama
- Scope single vs factory
- Memulai Koin di Android & iOS
- Injeksi ke ViewModels & Repositori