Ağ Uygulama Programlama Arabirimleri (API)

Bir Uygulama Programlama Arayüzü (API), bilgisayar programcılarının yayınlanan yazılım modülleri ve hizmetlerinin işlevselliğine erişmesini sağlar. Bir API, mevcut uygulamaları yeni özelliklerle genişletmek için kullanılabilecek veri yapılarını ve alt program çağrılarını tanımlar ve diğer yazılım bileşenlerinin üzerinde tamamen yeni uygulamalar oluşturur. Bu API'lerin bazıları özellikle ağ programlamayı desteklemektedir.

Ağ programlama, İnternet dahil bilgisayar ağları üzerinden bağlanan ve iletişim kuran uygulamalar için bir tür yazılım geliştirmedir. Ağ API'leri, protokollere ve yeniden kullanılabilir yazılım kitaplıklarına giriş noktaları sağlar. Ağ API'ları Web tarayıcılarını, Web veritabanlarını ve birçok mobil uygulamayı destekler. Birçok farklı programlama dili ve işletim sisteminde yaygın olarak desteklenmektedir.

Soket Programlama

Geleneksel ağ programlama, bir müşteri-sunucu modeli izledi. İstemci-sunucu ağ iletişimi için kullanılan birincil API'ler, işletim sistemlerinde yerleşik soket kütüphanelerinde uygulandı. Berkeley soketleri ve Windows Yuvaları (Winsock) API'ları yıllardır soket programlama için iki temel standarttı.

Uzaktan Yordam Çağrısı

RPC API'ları, uygulamaların yalnızca onlara mesaj göndermek yerine uzak cihazlardaki işlevleri çağırması için yetenek ekleyerek temel ağ programlama tekniklerini genişletir. World Wide Web'deki (WWW) büyüme patlamasıyla XML-RPC , RPC için bir popüler mekanizma olarak ortaya çıktı.

Basit Nesne Erişim Protokolü (SOAP)

SOAP, 1990'ların sonlarında mesaj formatı olarak XML kullanan bir ağ protokolü ve aktarımı için HyperText Transfer Protocol (HTTP) geliştirilmiştir . SOAP, Web hizmetleri programcılarının sadık bir takipini oluşturdu ve kurumsal uygulamalar için yaygın bir şekilde kullanılmaya başladı.

Temsili Devlet Transferi (REST)

REST, daha yakın zamanda sahneye gelen Web servislerini de destekleyen başka bir programlama modelidir. SOAP gibi, REST API'leri de HTTP'yi kullanır, ancak XML yerine REST uygulamaları genellikle bir Javascript Object Notation (JSON) kullanır. REST ve SOAP, ağ programcıları için her ikisi de önemli olan, devlet yönetim ve güvenliğine yaklaşımlarında büyük farklılıklar gösterir. Mobil uygulamalar ağ API'lerini kullanabilir veya kullanmayabilir, ancak sıklıkla REST kullanan kişiler olabilir.

API'lerin Geleceği

Hem SOAP hem de REST, yeni Web servislerinin geliştirilmesi için aktif olarak kullanılmaya devam ediyor. SOAP'tan çok daha yeni bir teknoloji olan REST'in evrim geçirmesi ve diğer API geliştirme alanlarını üretmesi daha olasıdır.

İşletim sistemleri de birçok yeni Network API teknolojisini desteklemek için gelişti. Örneğin, Windows 10 gibi modern işletim sistemlerinde, yuvalar, HTTP ve RESTful stili ağ programlaması için üstte katmanlı diğer ek desteklerle çekirdek API olmaya devam eder.

Bilgisayar alanlarında sıklıkla olduğu gibi, yeni teknolojiler eskilerden eskimiş olmaktan çok daha hızlı bir şekilde yayılma eğilimindedir. Özellikle bulut bilişim ve Nesnelerin İnterneti (IoT) alanlarında , cihazların özelliklerinin ve kullanım modellerinin geleneksel ağ programlama ortamlarından oldukça farklı olduğu ilginç yeni API geliştirmeleri olup olmadığına bakın.