Django

Django & GraphQL

Django ile GraphQL, Strawberry/Graphene, schema, queries, mutations, subscriptions, kimlik doğrulama, DataLoader, N+1 sorunu

24 mülakat soruları·
Senior
1

GraphQL nedir ve REST'ten temel farkı nedir?

Cevap

GraphQL, Facebook tarafından geliştirilen API'ler için bir sorgu dilidir. Sabit veri yapıları döndüren birden fazla endpoint sunan REST'in aksine, GraphQL tek bir endpoint kullanarak istemcinin ihtiyaç duyduğu verileri tam olarak belirtmesine olanak tanır. Bu, REST'te yaygın olan over-fetching (çok fazla veri alma) ve under-fetching (birden fazla istek yapma zorunluluğu) sorunlarını çözer.

2

Django için mevcut iki ana GraphQL kütüphanesi nedir?

Cevap

Strawberry ve Graphene-Django, Django için iki ana GraphQL kütüphanesidir. Graphene-Django daha olgun ve yaygın olarak benimsenmiştir, sınıf tabanlı bir söz dizimi kullanır. Strawberry daha modern olup native Python type hints kullanır ve typing araçlarıyla daha iyi entegrasyon sunar. Strawberry, daha pythonic söz dizimi ve native async desteği sayesinde yeni projeler için önerilir.

3

Bir Django User modelini temsil etmek için Strawberry ile basit bir GraphQL tipi nasıl tanımlanır?

Cevap

Strawberry'de bir GraphQL tipi tanımlamak için @strawberry.type dekoratörü bir dataclass sınıfı üzerinde kullanılır. Alanlar standart Python type hints (str, int vb.) ile bildirilir. Bu yaklaşım Python'un native tip sistemini kullanarak kodu daha okunabilir hale getirir ve IDE'ler ile mypy gibi tip denetim araçlarıyla daha iyi entegrasyon sağlar.

4

GraphQL'de resolver nedir ve görevi nedir?

5

GraphQL'de Query ile Mutation arasındaki fark nedir?

+21 mülakat soruları

Bir sonraki mülakatın için Django'de uzmanlaş

Tüm sorulara, flashcards'a, teknik testlere, code review alıştırmalarına ve mülakat simülatörlerine eriş.

Ücretsiz başla