0Pricing
Kotlin Multiplatform Academy · Ders

Bir Depo Arayüzü Tanımlama

HTTP ayrıntılarını açığa çıkarmadan veri ihtiyaçlarını sunun.

Bir Depo Arayüzü Tanımlama, CoddyKit'te ücretsiz bir Kotlin Multiplatform Academy dersidir. Bu, 4 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Kotlin Multiplatform Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Kotlin Multiplatform Academy kursu toplamda 4 dersten oluşur.

Bu dersin bazı bölümleri henüz çevrilmemiş olup İngilizce olarak gösterilmektedir.

What a Repository Is

A repository is the single doorway your apps walk through to get data, hiding where that data actually comes from.

Start With an Interface

Define the repository as a Kotlin interface first, so callers depend on a contract instead of a concrete class.

interface UserRepository {
    suspend fun getUser(id: String): User
}

Speak in Domain Terms

Name methods after what the app needs, like getUser, not after how you fetch it. The intent stays clear and stable.

Return Domain Models

The interface returns clean domain models, never raw JSON or HTTP responses, so the UI stays simple.

suspend fun getUsers(): List<User>

No HTTP Words Allowed

Keep words like Ktor, headers, and status codes out of the interface. Callers should never know HTTP exists.

Suspend for Async Work

Mark data methods as suspend so they can do async work without blocking, and fit naturally into coroutines on both apps.

suspend fun refresh()

It Lives in commonMain

Put the interface in commonMain so Android and iOS share the exact same data contract with zero duplication.

Many Implementations Possible

One interface can have several implementations: a real network one and a fake one for tests, swapped freely.

Easier to Test

Because callers depend on the interface, you can inject a fake repository in tests and avoid hitting the real network.

class FakeUserRepository : UserRepository

Clear, Focused Methods

Keep each method small and purposeful. A focused API is easier to read, mock, and evolve over time.

A Complete Example

Here is a tidy repository contract that exposes everything the user feature needs and nothing more.

interface UserRepository {
    suspend fun getUsers(): List<User>
    suspend fun getUser(id: String): User
}

Quick Check

Where should the repository interface live in a KMP project?

Recap

A repository interface in commonMain defines what data the app needs using suspend methods and domain models, hiding all HTTP details.

Sıkça Sorulan Sorular

“Bir Depo Arayüzü Tanımlama” dersi ücretsiz mi?

Evet — “Bir Depo Arayüzü Tanımlama” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Kotlin Multiplatform Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Kotlin Multiplatform Academy kursu toplamda 4 dersten oluşur.

“Bir Depo Arayüzü Tanımlama” dersinde ne öğreneceğim?

HTTP ayrıntılarını açığa çıkarmadan veri ihtiyaçlarını sunun. Kotlin Multiplatform Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Kotlin Multiplatform Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Kotlin Multiplatform Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 1. dersidir.

“Bir Depo Arayüzü Tanımlama” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Kotlin Multiplatform Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Kotlin Multiplatform Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Bir Depo Arayüzü Tanımlama
  2. API'yi Deponun Ardında Sarmalama
  3. DTO'ları Alan Modellerine Eşleme
  4. Sonuçları Flow Olarak Dışa Açma
← Kotlin Multiplatform Academy Sayfasına Dön