Anasayfa » nasıl » API Nedir?

    API Nedir?

    Muhtemelen “API” teriminin geldiğini gördünüz. İşletim sistemi, web tarayıcısı ve uygulama güncellemeleri genellikle geliştiriciler için yeni API'ler duyurur. Fakat bir API nedir?

    uygulama programlama Arayüzü

    API terimi bir kısaltmadır ve “Uygulama Programlama Arayüzü” anlamına gelir.

    Bir restorandaki menü gibi bir API düşünün. Menü, sipariş verebileceğiniz yemeklerin bir listesini ve her yemeğin bir tanımını sunar. Hangi menü öğelerini istediğinizi belirlediğinizde, restoranın mutfağı işi yapar ve size bazı hazır yemekler sunar. Restoranın o yemeği nasıl hazırladığını tam olarak bilmiyorsunuz ve gerçekten ihtiyacınız yok.

    Benzer şekilde, bir API, geliştiricilerin ne yapabileceklerinin bir açıklaması ile birlikte kullanabileceği bir sürü işlemi listeler. Geliştiricinin, örneğin bir işletim sisteminin nasıl “Farklı Kaydet” iletişim kutusu oluşturup sunduğunu bilmesi gerekmez. Sadece uygulamalarında kullanılabileceğini bilmeleri gerekir.

    Bu mükemmel bir metafor değildir, çünkü geliştiricilerin sonuçları almak için API'ye kendi verilerini sağlamaları gerekebilir, bu yüzden belki de mutfağın çalışacağı bazı malzemeyi sağlayabileceğiniz lüks bir restoran gibi..

    Ama bu tamamen doğru. API'ler, nitty-gritty işini yapmak için bir platformun uygulamasından faydalanarak geliştiricilerin zaman kazanmasını sağlar. Bu, kod geliştiricilerin oluşturması gereken kod miktarını azaltmaya yardımcı olur ve aynı platform için uygulamalar arasında daha fazla tutarlılık oluşturmaya yardımcı olur. API'ler donanım ve yazılım kaynaklarına erişimi kontrol edebilir.

    API'ler Geliştiriciler İçin Hayatı Kolaylaştırıyor

    Bir iPhone için uygulama geliştirmek istediğinizi varsayalım. Apple'ın iOS işletim sistemi, diğer tüm işletim sistemlerinde olduğu gibi, sizin için daha kolay hale getirmek için çok sayıda API sunar..

    Örneğin, bir veya daha fazla web sayfasını göstermek için bir web tarayıcısı yerleştirmek istiyorsanız, yalnızca web uygulamanızı sıfırdan kendi uygulamanız için programlamanıza gerek yoktur. WebKit (Safari) tarayıcı nesnesini uygulamanıza yerleştirmek için WKWebView API'sini kullanın.

    İPhone'un kamerasından fotoğraf veya video çekmek istiyorsanız, kendi kamera arayüzünüzü yazmanıza gerek yoktur. İPhone'un yerleşik kamerasını uygulamanıza yerleştirmek için kamera API'sini kullanırsınız. Bunu kolaylaştırmak için API'ler mevcut değilse, uygulama geliştiriciler kendi kamera yazılımlarını oluşturmak ve kamera donanımının girdilerini yorumlamak zorunda kalacaklardı. Ancak Apple'ın işletim sistemi geliştiricileri tüm bu zor işleri yaptılar; böylece geliştiriciler bir kamera yerleştirmek için kamera API'sini kullanabilir ve ardından uygulamalarını oluşturmaya devam edebilirler. Ayrıca, Apple kamera API'sini geliştirdiğinde, ona bağlı tüm uygulamalar otomatik olarak bu geliştirmeden yararlanır.

    Bu her platform için geçerlidir. Örneğin, Windows'ta bir iletişim kutusu oluşturmak ister misiniz? Bunun için bir API var. Android'de parmak izi kimlik doğrulamasını desteklemek ister misiniz? Bunun için de bir API var, bu nedenle her Android üreticisinin parmak izi sensörünü test etmeniz gerekmez. Geliştiriciler tekerleği tekrar tekrar icat etmek zorunda kalmazlar.

    API'ler Kaynaklara Erişimi Kontrol Ediyor

    API'ler ayrıca bir uygulamanın kullanım izninin gerektirmeyebileceği donanım cihazlarına ve yazılım işlevlerine erişimi kontrol etmek için kullanılır. Bu yüzden API'ler genellikle güvenlikte büyük rol oynar.

    Örneğin, bir web sitesini hiç ziyaret ettiyseniz ve tarayıcınızda, web sitesinin tam konumunuzu görmek istediğini belirten bir mesaj gördüyseniz, bu web sitesi coğrafi konum API'sini web tarayıcınızda kullanmaya çalışıyordur. Web tarayıcıları, web geliştiricilerinin konumunuza erişmesini kolaylaştırmak için API'leri bu şekilde kullanırlar - yalnızca “neredesin?” Diye sorabilirler ve tarayıcı, fiziksel konumunuzu bulmak için GPS'e ya da yakındaki Wi-Fi ağlarına erişme konusunda sıkı çalışır.

    Bununla birlikte, tarayıcılar bu bilgiyi bir API üzerinden de gösterirler çünkü ona erişimi kontrol etmek mümkündür. Bir web sitesi tam olarak fiziksel konumunuza erişmek istediğinde, ulaşabilmelerinin tek yolu yer API'sidir. Ve bir web sitesi onu kullanmaya çalıştığında, siz-kullanıcı-bu isteği kabul etmeyi veya reddetmeyi seçebilirsiniz. GPS sensörü gibi donanım kaynaklarına erişmenin tek yolu API üzerindendir, böylece tarayıcı donanıma erişimi kontrol edebilir ve uygulamaların yapabileceklerini sınırlayabilir.

    Bu aynı ilke, mobil uygulamaların API'lere erişimi kontrol ederek uygulanabilecek izinlere sahip olduğu iOS ve Android gibi modern mobil işletim sistemlerinde kullanılır. Örneğin, bir geliştirici kameraya kamera API'si üzerinden erişmeye çalışırsa, izin isteğini reddedebilirsiniz ve uygulamanın cihazınızın kamerasına erişme imkanı yoktur..

    Windows, Mac ve Linux'taki izinleri kullanan dosya sistemleri, dosya sistemi API'si tarafından uygulanan izinlere sahiptir. Tipik bir uygulama ham fiziksel sabit diske doğrudan erişime sahip değildir. Bunun yerine, uygulamanın bir API üzerinden dosyalara erişmesi gerekir.

    API'ler Servisler Arası İletişimde Kullanılıyor

    API'ler, her türlü başka nedenlerle de kullanılır. Örneğin, bir web sitesine gömülü bir Google Haritalar nesnesi gördüyseniz, bu web sitesi bu haritayı yerleştirmek için Google Haritalar API'sını kullanıyor. Google, bunun gibi API'leri web geliştiricilerine sunar ve bu sayede API'leri doğrudan web sitelerinde karmaşık nesneleri yerleştirmek için kullanabilir. Bunun gibi API'ler mevcut değilse, geliştiricilerin bir web sitesine küçük bir etkileşimli harita koymak için kendi haritalarını oluşturmak ve kendi harita verilerini sağlamak zorunda kalabilirler.

    Ayrıca, bir API olduğu için, Google üçüncü taraf web sitelerinde Google Haritalar’a erişimi kontrol edebilir, örneğin Google Haritalar web sitesini gösteren bir çerçeveyi dağınık olarak yerleştirmeyi denemek yerine tutarlı bir şekilde kullanmalarını sağlar..

    Bu, birçok farklı çevrimiçi hizmet için geçerlidir. Google Çeviri’den metin çevirisi istemek veya bir web sitesine Twitter’dan Facebook yorumları veya tweet eklemek için API’ler var..

    OAuth standardı, başka bir hizmetle bir web sitesine giriş yapmanızı sağlayan bir dizi API'yi de tanımlar; örneğin, yalnızca bu site için yeni bir kullanıcı hesabı oluşturmadan yeni bir web sitesinde oturum açmak için Facebook, Google veya Twitter hesaplarınızı kullanma . API'ler, geliştiricilerin bir hizmetle nasıl iletişim kurduklarını ve geliştiricilerin geri almayı beklemeleri gereken çıktı türlerini tanımlayan standart sözleşmelerdir..


    Bunu başardıysanız, bir API'nin ne olduğu hakkında daha iyi bir fikriniz olur. Sonuçta, bir geliştirici olmadığınız sürece, bir API'nin ne olduğunu gerçekten bilmek zorunda değilsiniz. Ancak, bir yazılım platformu veya servisinin çeşitli donanım veya servisler için yeni API'ler eklediğini görürseniz, geliştiricilerin bu özelliklerden yararlanması daha kolay olmalı.

    Resim Kredisi: patpitchaya / Shutterstock.com.