API Nedir?

Bir uygulama programlama arayüzü veya API, web tabanlı bir yazılım uygulamasına erişmek için kullanılan bir dizi veri yapısı, protokol, rutin ve araçtır. Kolayca programlar geliştirmek için tüm yapı taşlarını sağlar. Bir uygulama programlama arayüzü dile bağlı veya dilden bağımsız olabilir. Dile bağlı bir API sadece belirli bir programlama dilinde kullanılabilir. Dilden bağımsız olan API'ler belirli bir dile, sisteme veya sürece bağlı değildir. Birkaç programlama dilinden çağrılabilirler.

API'ler arka planda sessizce çalışır. Yazılım kullanıcıları ve web sörfçüleri için tamamen görünmezdir. Başlıca rolü, kullanıcının gerekli işlevselliği ve bilgiyi aldığından emin olmak için uygulamaların birbirleriyle çalışması için bir kanal sağlamaktır.

Örneğin, bir kullanıcı çevrimiçi bir ürün satın aldığında ve kredi kartı bilgilerini girdiğinde, ürün web sitesi, kredi kartı bilgilerini başka bir uygulamaya göndermek için bir API kullanır. Uygulama bilgilerin doğru olup olmadığını doğrular. Ardından, bilgi doğrulandıktan ve ödeme onaylandıktan sonra ürün web sitesine satın alınan ürünü çıkarması için yetki verir. Bir web sitesinde, API'leri kullanarak birlikte çalışan birçok uygulama vardır.

Uygulama programlama arayüzleri, yazılım geliştiricilerin bina uygulamalarını sıfırdan başlatmak zorunda kalmamasını sağlar. Her işlevi gerçekleştiren bir uygulama oluşturmaya gerek yoktur. Uygulama, belli sorumlulukları uzak bir uygulamaya devredebilir. Bu nedenle, API'ler SaaS'a (Hizmet Olarak Yazılım) benzer.

Bir yazılım şirketi, API'sini programcılara bir yazılım geliştirme kiti (SDK) biçiminde sunar. SDK, programcının işini kolaylaştırmak için programlama araçları, uygulama programlama arayüzü ve sürüm belgeleri içerir.

Bir şirket, API’leri geliştiricilere yayınlamadan önce bazı yayıncılık politikalarını izler:

  • Bir uygulama programlama arayüzü hakkında temel bilgiler şirketten kimseye verilemez.
  • Şirketler API'leri halka ücretsiz olarak sunmak zorundadır. Örneğin, Microsoft® DirectX®'i ve tüm API'lerini geliştiricilere ücretsiz kılar. Bu bileşenlere erişmek için SDK'yı indirmeleri gerekiyor. Microsoft®, Windows® API'yi işletim ortamına uygun uygulamalar oluşturmak için geliştiricilere de ücretsiz kılmıştır. Apple®, geliştiricilerin iPhone için faydalı uygulamalar oluşturması için API'leri Carbon® ve Cocoa®'yı da piyasaya sürdü.
  • Bir şirket bilgileri halktan korur. Örneğin, resmi PlayStation® 2 API'si yalnızca lisanslı PlayStation® geliştiricilerine Sony® tarafından yayımlandı. Böylece, Sony® oyunlarının kalitesi üzerinde tam kontrol sahibi olmuş ve olası lisans gelirlerinden yararlanmıştır.