Test aşamasıBu ortam lansman öncesi test aşamasında — tüm veriler lansmanda sıfırlanacak.
Skip to content

Başlarken ​

Bu bölüm, yeni bir kullanıcının ilk erişimden güvenilir bir ilk iş akışına tek oturumda geçmesine yardımcı olur. Sonunda, eşleştirilmiş verilere sahip çalışan bir domain modeli, sorgulayabileceğin canlı bir GraphQL API ve bundan sonra ne yapacağına dair net bir anlayış elde edeceksin.

Ne Oluşturacaksın ​

Bu rehberde şunları yapacaksın:

  1. Mockomat'a eriş ve çalışma modunu seç.
  2. Gerçek bir iş konseptini temsil eden bir domain tablosu oluştur.
  3. Uygun türler ve eşleştirmelerle attribute'lar ekle.
  4. Başka bir entity ile en az bir ilişki kur.
  5. Canlı runtime üzerinden modelini önizle.
  6. API'nin beklediğin veri yapılarını döndürdüğünü doğrula.

Tüm süreç yaklaşık 15 dakika sürer.

Screenshot gs-01-start-entryScreenshot gs-01-start-entry
gs-01-start-entryMissing

Landing sayfasından uygulama workspace'ine giriş noktası.

Adım 1: Erişim Modunu Seç ​

Mockomat, her biri farklı bir çalışma aşaması için tasarlanmış iki erişim modu sunar:

Misafir Modu (Hızlı Başlangıç) ​

Misafir modu, çalışan bir mock API'ye ulaşmanın en hızlı yoludur. Kayıt yok, kurulum yok — Mockomat'ı aç ve modellemeye başla.

Ne elde edersin:

  • Mock endpoint'i paylaşım token'ı ile açılan geçici bir proje
  • Modelleme panosu, attribute yapılandırması ve önizlemeye tam erişim
  • Her plandakiyle aynı ortak veri havuzu ve eşleştirme türleri
  • Hemen sorgulayabileceğin canlı bir GraphQL endpoint

Kısıtlamalar:

  • Çalışman, 24 saatlik misafir oturumun bitene kadar bu tarayıcıda kalır. 24 saat, uygulamanın bu tarayıcıda ilk açılışında başlattığı misafir oturumunun başlangıcından itibaren işler; yani daha sonra oluşturduğun bir projenin süresi daha kısadır. Saatte bir çalışan bir temizlik ardından projeyi siler; bu yüzden proje bir saate kadar daha uzun kalabilir.
  • Çerezleri temizlemek çalışmanı daha erken kaybettirir; saklamak için kaydol — uygulama projeyi hesabına taşımayı önerir
  • Aynı anda yalnızca bir proje
  • Takım paylaşımı veya proje yönetimi yok
  • API key yok — endpoint, projenin paylaşım token'ı ile açılır

Misafir modu, hızlı fikir doğrulaması, demolar ve Mockomat'ın iş akışına uygun olup olmadığını değerlendirmek için idealdir.

Hesap Modu (Kalıcı Workspace) ​

Hesap modu, kalıcılık, proje yönetimi ve zaman içinde kullanımını büyütme imkânı ekler.

Ne elde edersin (Starter, ücretsiz):

  • 1 kayıtlı proje (Professional'dan itibaren daha fazlası)
  • Tarayıcı oturumlarından bağımsız kalıcı modeller
  • Günlük 1.000 API isteği
  • Uygulamada her projenin runtime önizlemesi (kendi kodundan yapılan çağrılar API key gerektirir — Professional planından itibaren)

Ne zaman geçmeli:

  • İlk modelin faydalı çıktığında ve saklamak istediğinde
  • Çalışmanı paylaşmak istediğinde — önizleme ve iş birliği bağlantılarıyla ya da Professional'dan itibaren takım arkadaşlarını davet ederek
  • Birden fazla oturumda iterasyon yapmak istediğinde
Screenshot gs-02-guest-workspaceScreenshot gs-02-guest-workspace
gs-02-guest-workspaceMissing

İlk domain tablosuyla misafir workspace'i.

Adım 2: Gerçek Bir Domain Dilimini Modelle ​

Domain dilimi, iş modelinin küçük, tutarlı bir alt kümesidir. Sisteminde gerçek bir şeyi temsil eden bir veya iki entity ile başla.

Anlamlı İsimler Seç ​

Genel örnek adlarından kaçın. Takımının halihazırda kullandığı gerçek iş dilini kullan:

İyi örnekler:

  • Customer, Subscription, Invoice
  • Order, Payment, Shipment
  • Product, Category, Review
  • Employee, Department, TimeEntry

Kaçınılması gerekenler:

  • Table1, TestEntity, MyModel
  • Data, Item, Thing

Anlamlı isimler modelini kendi kendini belgeleyen hâle getirir ve takım tartışmaları için hemen faydalı kılar.

Attribute Ekle ​

Her entity, verisini tanımlayan attribute'lara ihtiyaç duyar. Attribute eklerken şunları dikkate al:

ÖzellikAmaçÖrnek
NameTanımlayıcı isimfirstName, totalAmount, isActive
TypeVeri türüString, Integer, Boolean, Date
RequiredHer zaman bir değeri olmalıemail için true, middleName için false
SearchablesearchTerm aramasına katılırname, title için true

Sortable ve Filterable bayrakları mock API'yi değiştirmez: bir veri sütununa bağlı her attribute'a göre sıralayabilirsin, filtreleme ise API design'da bir işlemde tanımladığın parametreleri kullanır.

Pratik ipucu: Entity başına 4-6 temel attribute ile başla. Daha sonra her zaman ekleyebilirsin, ancak odaklanmış bir model geniş ve yüzeysel bir modelden daha iyi geri bildirim verir.

Alan Eşleştirmelerini Seç ​

Her attribute'un bir veri kaynağına ihtiyacı vardır. Mockomat üç eşleştirme türünü destekler:

Veri kaynağı (SOURCE) — İçe aktarılmış veriler

Attribute'u ortak veri havuzunun bir sütununa bağla — içe aktarılmış veri setleri: doğrulanmış bir kaynağın bulunduğu yerde açık veriler, blueprint'ler için üretilmiş örnek veriler. Runtime içe aktarılmış satırları sunar ve asla değer uydurmaz. İsimler, adresler, ürün verileri, kategoriler, tarihler ve tutarlar için en iyisi.

Sabit (CONSTANT) — Sabit değerler

Attribute'a tek bir sabit değer atar, örneğin varsayılan bir durum ("active"). Runtime bu değeri her satırda döndürür: içe aktarılan verilerin satırlarında da, değer havuzlarından oluşturulan satırlarda da.

Hesaplanmış (COMPUTED) — İfadeler

Diğer alanlar üzerinde bir ifade saklar, örneğin ad ve soyaddan tam ad. Runtime ifadeleri değerlendirmez; bu yüzden hesaplanmış bir alan yanıtın parçası değildir. Attribute düzenleyici artık Hesaplanmış seçeneğini sunmaz; zaten hesaplanmış eşleştirmesi olan bir attribute bunu korur ve değerlendirilmiyor olarak işaretlenir.

Screenshot gs-03-first-tableScreenshot gs-03-first-table
gs-03-first-tableMissing

İlk tablo oluşturma ve attribute kurulumu.

Bir İlişki Kur ​

Bir entity modellendikten sonra ikinci bir entity ekle ve bunları bağla:

  1. İkinci bir tablo oluştur (örneğin ilkin Customer ise Order).
  2. İlişki türünü tanımla: Bir müşterinin birçok siparişi var mı (1:n)? Bir sipariş tam olarak bir müşteriye mi ait?
  3. Yönü belirle: ilişkinin sahibi hangi entity?

İlişkiler, API'nin iç içe veriyi nasıl işlediğini test etmek için kritik öneme sahiptir. En az bir ilişkiye sahip bir model, çok daha zengin önizleme geri bildirimi sağlar.

Screenshot gs-03b-first-relationScreenshot gs-03b-first-relation
gs-03b-first-relationMissing

İki entity arasında ilk ilişki kurulumu.

Adım 3: Önizleme ile Doğrula ​

Önizleme yalnızca demolar için değildir. Model kalitesi kontrol noktasıdır. Modelini her değiştirdiğinde, değişikliğin beklendiği gibi davrandığını doğrulamak için bir önizleme çalıştır.

Neleri Kontrol Etmeli ​

Alan okunabilirliği — Dönen alan adları anlamlı mı? Tutarlılar mı (hepsi camelCase, kısaltma yok)?

Veri yapısı tutarlılığı — Her alan beklenen türü döndürüyor mu? String'ler gerçekten string, sayılar gerçekten sayı mı?

İlişki davranışı — Üst entity'yi sorgularken alt entity'ler doğru bir şekilde iç içe görünüyor mu? Kardinalite doğru mu (1:n için dizi, 1:1 için tekil nesne)?

Eksik eşleştirme sinyalleri — Bir tablo içe aktarılan verilere bağlı değilse önizleme bunu belirtir ve API o tablo için satır döndürmez. Devam etmeden önce tabloyu bağla.

Filtre ve sıralama davranışı — İşlemde tanımladığın bir parametreyi dene ve sortField ile bir attribute'a göre sırala. Sonuçlar mantıklı mı?

Yaygın Önizleme Sorunları ​

SorunOlası NedenÇözüm
Alan null döndürüyorEşleştirme yapılandırılmamışAttribute'u bir veri sütununa bağla (Veri kaynağı eşleştirmesi)
İlişki boş dizi döndürüyorİlişki düzgün tanımlanmamışİlişki yönünü ve hedef entity'yi kontrol et
Sıralama etkisi yoksortField eşlenmiş bir attribute'un adı değilBir veri sütununa bağlı attribute'un adını kullan
Filtre tüm kayıtları döndürüyorİşlem bu argüman için parametre tanımlamıyorParametreyi API design'da ekle
Screenshot gs-04-first-previewScreenshot gs-04-first-preview
gs-04-first-previewMissing

Eşleştirilmiş ve eşleştirilmemiş alanlarla ilk önizleme çalışması.

Adım 4: API'ni Sorgula ​

Önizleme doğru göründüğünde, mock API'n zaten canlı durumdadır. Onu projenin bir API key'i ile herhangi bir GraphQL veya HTTP istemcisinden çağır — API key'ler Professional planından itibaren dahildir. Misafir bir proje bunun yerine paylaşım token'ını (?token=…) kullanır. Ayrıntılar için Entegratörler sayfasına bak.

Projenin endpoint'i:

POST /mock/{proje-slug'iniz}/graphql
Authorization: Bearer mck_your_api_key

Basit bir liste sorgusu dene:

graphql
query {
  customers(page: 1, pageSize: 10) {
    items {
      id
      firstName
      lastName
      email
      orders {
        id
        totalAmount
        createdAt
      }
    }
    total
  }
}

Yanıt, eşleştirmelerinin işaret ettiği içe aktarılmış satırları içerir ve ilişkiler otomatik olarak çözümlenir.

Screenshot gs-04b-first-queryScreenshot gs-04b-first-query
gs-04b-first-queryMissing

Canlı mock endpoint'e karşı ilk GraphQL sorgusu.

Adım 5: Sonraki Yolu Belirle ​

İlk başarılı model ve sorgu döngünden sonra birkaç yönün vardır:

  • Modelini derinleştir — daha fazla entity ekle, attribute'ları iyileştir, ek ilişkiler kur.
  • API açılımını yapılandır — hangi işlemlerin mevcut olacağını tanımla, sorgu adlandırma kurallarını belirle.
  • Dışa aktarıma yönel — model yeterince kararlıysa, üretime hazır bir NestJS backend elde etmek için kod üretimini keşfet.
  • Blueprint'leri kullan — gelecekteki projeleri hızlandırmak için hazır domain şablonlarını keşfet.
  • Takımınla paylaş — bir hesap oluştur (misafir modundaysan) ve iş birlikçi davet et.
Screenshot gs-05-next-stepsScreenshot gs-05-next-steps
gs-05-next-stepsMissing

İlk başarılı önizleme döngüsü sonrası karar noktası.

Şimdi Elinde Ne Var ​

Bu rehberi tamamladıktan sonra elinde şunlar vardır:

  • En az bir entity, anlamlı attribute'lar ve yapılandırılmış veri eşleştirmelerine sahip bir domain modeli
  • Veri havuzunun satırlarını döndüren canlı bir GraphQL API endpoint'i
  • Modelinin gerçek sorgular altında beklendiği gibi davrandığının doğrulanması
  • Model → önizleme → sorgu iş akışının net bir şekilde anlaşılması

Buradan, az önce oluşturduğunun arkasındaki mimariyi anlamak için Temel Kavramlar sayfasını keşfet veya modelleme araçları için detaylı bir rehber olan Workspace sayfasına dal.