Suntikkan Implementasi Platform
Sediakan actual yang tepat melalui Koin atau pabrik.
Suntikkan Implementasi Platform adalah pelajaran Kotlin Multiplatform Academy gratis di CoddyKit. Ini adalah pelajaran 4 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.
Siapa yang Menyediakan Implementasi Nyata
Antarmuka mendefinisikan kemampuan, tetapi sesuatu harus memberikan implementasi platform yang sebenarnya kepada kode bersama. Penghubungan itu disebut injeksi dependensi.
Hindari new dalam Kode Bersama
Logika bersama tidak boleh membuat kelas platform sendiri. Sebagai gantinya, logika tersebut menerima implementasi dari luar agar tetap terpisah dan dapat diuji.
Suntikkan melalui Konstruktor
Pendekatan paling sederhana adalah parameter konstruktor. Masukkan kemampuan tersebut, dan kelas tidak perlu mengetahui platform mana yang membuatnya.
class Profile(private val info: DeviceInfo)Sediakan Instans Android
Di Android, modul aplikasi membuat actual yang sebenarnya dan meneruskannya saat membuat objek bersama.
val profile = Profile(DeviceInfo())Sediakan Instans iOS
Di iOS, Swift membuat DeviceInfo milik kerangka kerja dan menyuntikkannya dengan cara yang sama, sehingga kode bersama tetap identik di seluruh platform.
let profile = Profile(info: DeviceInfo())Perluas dengan Koin
Untuk banyak dependensi, pustaka DI seperti Koin mendeklarasikan setiap kemampuan satu kali dalam modul bersama dan menyelesaikannya saat diperlukan.
val appModule = module {
single<DeviceInfo> { DeviceInfo() }
}Hubungkan Antarmuka ke Implementasi Aktual
Di Koin, Anda menghubungkan tipe antarmuka ke implementasi platform, sehingga pemanggil meminta DeviceInfo dan mendapatkan implementasi konkret yang tepat.
single<Storage> { PlatformStorage() }Selesaikan di Tempat yang Membutuhkan
Di mana pun dalam kode bersama, Anda dapat mengambil dependensi dari grafik berdasarkan tipenya, tanpa perlu membuatnya secara manual.
val info: DeviceInfo by inject()Tukar dengan Palsu dalam Pengujian
Karena semuanya disuntikkan, sebuah pengujian cukup menyediakan implementasi palsu. Tidak ada platform, emulator, atau perangkat yang terlibat. ✅
Profile(FakeDeviceInfo())Satu Titik Perakitan per Aplikasi
Tempatkan injeksi di titik masuk setiap aplikasi. Satu lokasi penyiapan itu menentukan implementasi aktual yang dijalankan, sementara kode bersama tidak perlu mengetahuinya.
Pabrik untuk Kasus Sederhana
Jika pustaka DI terasa terlalu berat, fungsi pabrik biasa juga dapat digunakan. Fungsi itu membuat objek platform di satu tempat lalu memberikannya kepada kode bersama.
fun deviceInfo(): DeviceInfo = DeviceInfo()Pemeriksaan Cepat
Pikirkan alasan kode bersama menerima dependensinya.
Ringkasan
Anda telah mempelajari cara menyuntikkan implementasi platform melalui konstruktor atau Koin, dengan menghubungkan antarmuka ke implementasi aktual agar kode bersama tetap bersih dan mudah diuji. 🎉
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 “Suntikkan Implementasi Platform” gratis?
Ya — teks lengkap “Suntikkan Implementasi Platform” 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 “Suntikkan Implementasi Platform”?
Sediakan actual yang tepat melalui Koin atau pabrik. 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 4 dari 4.
Berapa lama pelajaran “Suntikkan Implementasi Platform” 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
- Rancang Antarmuka Kapabilitas
- expect/actual untuk Info Perangkat
- Sistem File & Jalur per Platform
- Suntikkan Implementasi Platform