API Nedir ve Nasıl Yapılır?
Tarih: Mayıs 28th, 2009 | Yazar: Ertuğrul Erkan | Kategori: Makaleler | Etiketler: api, api nedir, api yazmak, application, php api, uygulama, web service, web servis, web uygulaması | 1 Yorum »Herkese merhaba. Bugün sizlere kaliteli bir sistem için gereken en önemli terim hakkında bilgiler vereceğim. Arkadaşlar API’ nin tam anlamı Application’ dan gelir. Application’ ın Türkçe anlamı ise “Uygulama”dır. API’ler genelde Web Services yani Web Servisleri üzerine yazılırlar. Bu sayede verdiğiniz hizmet, betik için geliştiricilere yol gösterilir.
Daha çok servisler için yapılan API’ler sayesinde sistem yapısı da inşa haline gelir. Yani daha düzgün ve anlamlı, fonksiyonel olur. Geliştiriciler API’yi kullanarak işlemlerini gerçekleştirir veya betiği geliştirir. Mesela WordPress’ de bir API üzerine kurulmuştur. Hatta genel hatlı olan API’ yi yorumlar,yazılar vs vs şeklinde bölmüşlerdir…
Peki biz neden API kodlamalıyız? Daha öncesinde OOP yani nesne tabanlı kodlamanın her zaman için sistemi daha da kuvvetlendirdiğini söylemiştim. İşte OOP’ un OOP’ una API deniyor. Birden fazla sistemler tek çatı halinde “paylaşılabilir” oluyor. API kodlama yapıldığında ise geliştiriciler neyin çekirdek neyin yan fonksiyon olduğunu çok daha kolay anlayabiliyorlar. Mesela Twitter, Vimeo gibi büyük sistemlerde API üzerine kurulmuştur. Bu sayede bizler onları daha kolay anlayabiliyor ve katkıda bulunabiliyoruz…
Peki nasıl API kodlayacağız? Arkadaşlar öncelikle bu işe tam olarak nereden başlamanız gerektiğini bilmeniz lazım. Eğer ki tam anlamıyla bir sistem üzerine API yazacaksanız kendinizi tanımanız lazım. Mesela WordPress’ i ele alalım;
WordPress çekirdek ve gerekli yan fonksiyonları bulunduran sınıflar üzerine kurulmuştur. Çekirdek kısmında en hayati veriler; sınıf kısmında ise sistemin ihtiyaç olduğu fonksiyonlar yer alması lazım. Mesela çekirdeğe Mysql, dosyalar ve üyelik sistemi için gerekli veriler girilir. Sonrasında mysql sınıfını kullanan yazıların sınıfı, kullanıcıların sınıfı yer alır. Dosyalar da ise tema sisteminin fonksiyonları olur. Üyelik sisteminde ise mysql sınıfına bağlı kullanıcılar ile bağlantılı olarak veriler alınır, incelenir vs.
Gördüğünüz gibi daha da anlamlı oldu. Diyelim yazılarda sorun çıktı. O zaman orada burada araştırma yerine tek bir noktada kodları değiştirebileceksiniz. Ayrıca yapı itibariyle anında bir eklenti yazabileceksiniz. Çünkü çekirdek sayesinde bütün kodlar elinizin altında. Toplamda ise 4 tane anahtar var. Hatta ve hatta daha da mantıklı yazarsanız ( pek önermiyorum ) bunu tek anahtara da düşürebilirsiniz…
Arkadaşlar ayrıca API sayesinde bütün sistemi tek bir merkeze de oturtabiliriz. Yani diyelim ki ayar.php diye bir dosya yarattık. Anahtarlarımızı tek tek yazdık. Sonrasında yönetim.php yarattık ve bütün anahtarları, sistemleri buradan yönetebilecek hale geldik. Her fonksiyon çalışıp çalışmayacağına veritabanından bakıp işlem yapacak şekilde ayarladık. Şimdi tek bir izin ile yorumlar açılacak veya kapatılacak…
Ayrıca arkadaşlar AIR, Flash, Js gibi konularda da API kullanarak daha da anlamlı bir halde kod yazabiliriz. Sonuçta bütün yollar anlamlı ve günümüz teknolojilerine uygun hale geliyor..
Şimdilik herkese iyi günler, iyi çalışmalar…

[...] biraz daha ilerlettim ve Facebook, Twitter gibi sosyal ağların API dillerine el attım. (bkz: API nedir?). Şimdi “ee ne güzel la geliştiriyon kendini?” diyebilirsin. Ama gel gör ki [...]