GRAPHQL VS REST API

Fatih Emre KILINÇ
3 min readMay 27, 2023

--

Size bu makalede şunları anlatacağım:

  • api nedir?
  • api Çeşitleri nelerdir?
  • rest api nedir?
  • graphql api nedir?
  • graphql api vs rest api

Api Nedir?:

Api Nedir?
Api Nedir?

Api nin açılımı Application Programming Interface(uygulama programlama arayüzü) dir .Api yi backend(arka uç) ile frontend(ön uç )arasındaki köprü gibi düşünebiliriz.Bu köprü bize soyutlama ilkesini uygulamamızı sağlar.

backend devoloper önce api yi yazar ve kullanıma hazır hale getirir.Front end devoloper api ye çağrı yaparak ön yüz de gerekli şeylerin görünmesini sağlar.Bu sayede backend,frontend in işini yapmaz.frontend ise backend in işini yapmaz.bu şekilde yazılım soyutlanır.

Api Örnekleri

Peki bize api örnekleri verir misiniz ? derseniz size şöyle sıralayabilirim:

  • E-ticaret sitesi (API sayesinde bir bankanın verdiği kredi kartından para çekilmesine izin vererek alışveriş yapılmasını sağlayabiliyor)
  • Sosyal medya uygulamaları(uygulama api ye çağrı yaparak uzak sunucudaki verileri çeker)

Api Çeşitleri:

Api çeşitleri ikiye ayrılır:

  • Kullanım amaçlarına göre
  • Mimarlerine Göre

Kullanım Amaçlarına göre api ler:

kullanım amaçlarına göre apiler 3 e ayrılır:

  • Dahili api: Sadece belirli kişilerce veya belirli alanda kullanılan örneğin bir şirketin departmanları için tanımlanmış API’lere, dahili API denir.
  • Herkese Açık api:Herkesin kullanımına açık olan API’lerdir. Open API olarak da isimlendirilirler. Sadece bir şirket veya kuruma özel tanımlanmış Dahili API’lerden burada farklılık gösterir.
  • Partner API’ler belirli iş ortaklığı ile iş yürüten şirketlerin ortak operasyonlarını yürütebilmek ve birbirlerinin sistemlerinin koordinasyon sağlayabilmesine olanak sağlarlar.

Mimarilerine Göre Api ler:

mimarlerine göre api ler 3 e ayrılır.

  • Rest Api
  • Soap:(Simple Object Access Protocol), yani Basit Nesne Erişim Protokolü daha sıkı bir güvenlik yapısıyla veri transferini sağlayan API mimarisidir. Bu mimaride veri akışı XML formatı kullanılarak sağlanır. Yapılandırması Rest API’ye göre daha zor olsa da bu mimari daha güvenli bir bağlantı sağladığı söylenir.

eskiden apiler 2 ye ayrılıyordu ama artık yeni bir api türü var graphql

  • Graphql

Rest Api Nedir?

Rest Api Nedir
Rest Api Nedir?

Rest, HTTP protokolünü kullanarak, URL adresleri üzerinden veri ve dosya alışverişi sağlayan bir yapıdır. Rest API ise Rest işlemini yapabilmek için kurgulanmış modüle verilen isimdir. Bu API (Modül) yardımıyla Rest işlemleri ve veri alışverişi yapılıyor.

Graphql Nedir?

GraphQL logo
GraphQl Logo

GraphQL veri çekmek, sorgulamak, veriler üzerinde işlem yapmak için kullanılan REST tabanlı web servis sorgulama dilidir.

Neden Graphql?

Rest Tabanlı apilerde veri çekme isteği (GET) gönderdiğiniz zaman tüm veriyi çeker. Graphql tabanlı apilerde ise tüm veriyi çekmez sadece belirttiğiniz miktarda veriyi çekersiniz.

söylediğim şey i anlamadıysanız şöyle örneklendireyim.

Yemek hazırlıyorsunuz.Bir malzeme ekleyeceksiniz. O malzemenin olduğu 2 tane kap var. Biri sonuna kadar dolu. Birinde ise sadece ihtiyacınız kadar malzeme var. Hangi kap ı kullanırsınız?

Bu örnekte dolu kap “Rest api”,diğer kap ise “graphql api” dir.

graphql api vs rest api

  • Rest Api (Bundan Sonra Rest diye bahsedilecek ) de istediğimizden fazla bilgi almak zorunda olabiliriz.GraphQl de ise istediğimiz kadar bilgiyi alırız.
  • Rest de Kaynağın şekli ve boyutu sunucu tarafından belirlenir. GraphQL’de ise sunucu hangi kaynakların mevcut olduğunu bildirir ve istemci o anda neye ihtiyacı olduğunu sorar.
  • Rest de veriler,endpoint(uç nokta) listesi olarak tanımlanır. GraphQL API’leri ise , uç noktalara göre değil, türlere ve alanlara göre düzenlenir. Verilerinizin tüm özelliklerine tek bir uç noktadan erişmeye olanak tanır.
  • GraphQl,API geliştiricilerine olan bağımlılığı ortadan kaldırır. Uygulamamızın daha performanslı çalışması için REST ile çalışırken yeni bir API istemek zorunda kalabilirken bu durum GraphQl de ortadan kalkmaktadır.

Yazımı Okuduğunuz için teşekkür ederim.

--

--