Nedir GraphQL
API'ler için sorgu dili
GraphQL, istemcilerin yalnızca ihtiyaç duydukları verileri talep etmelerine olanak tanıyan API'ler için bir sorgu dili ve çalışma ortamıdır.
Temel Kavramlar
- Şema — veri türleri ve işlemlerin tanımı
- Sorgular — veri okuma
- Mutasyonlar — veri değiştirme
- Abonelikler — gerçek zamanlı güncellemeler
REST'e Göre Avantajlar
- Esneklik — istemci yanıt yapısını tanımlar
- Tek endpoint — birden fazla REST endpoint yerine
- Over-fetching yok — yalnızca istenen alanları al
- Tip güvenliği — doğrulama ile katı şema
Sorgu Örneği
query {
user(id: "1") {
name
email
posts {
title
}
}
}
Ne Zaman Kullanılır
Farklı istemciler (web, mobil), karmaşık veri ilişkileri ve performans gereksinimleri olan uygulamalar için idealdir.