SDK
Yazılım Geliştirme Kiti
- Okunuşu
- es di key
Kısaca
SDK (yazılım geliştirme kiti), belirli bir platform veya servis için geliştirme yapmaya yarayan araç, kütüphane, dokümantasyon ve örneklerden oluşan pakettir.
SDK nedir?
SDK, bir geliştiricinin tek bir platformla çalışmak için ihtiyaç duyduğu her şeyi bir araya getirir. Android SDK; Android API'leri için kütüphaneleri, derleme araçlarını, bir emülatörü ve hata ayıklama araçlarını içerir. AWS SDK ya da Stripe'ın SDK'sı gibi bir bulut ya da servis SDK'sı ise çoğunlukla servisin API'sini her dil için sıradan fonksiyonlara saran istemci kütüphaneleri sağlar.
Servis SDK'ları çok fazla tekrar eden işten kurtarır. HTTP isteklerini kurmak, imzalamak, sayfalamayı ele almak ve JSON'u kendiniz ayrıştırmak yerine stripe.customers.create(...) çağırırsınız ve tipli bir nesne geri alırsınız. İyi SDK'lar yeniden denemeleri, zaman aşımlarını ve kimlik doğrulamayı da üstlenir; API'den üretilir ya da onunla senkron tutulur, böylece yeni özellikler hızla gelir.
Platform SDK'ları çoğu zaman platformun sürümlerine bağlıdır. Android ve iOS uygulamaları bir hedef SDK sürümü seçer; bu sürüm hangi sistem özelliklerini kullanabileceklerini ve sistemin onlara nasıl davranacağını belirler; uygulama mağazaları da zamanla uygulamaların yeni sürümlere ayak uydurmasını şart koşar.
Sık yapılan bir yanlış, SDK ile API'nin aynı şey olduğunu düşünmektir. API, servisin sunduğu arayüzdür, örneğin HTTP endpoint'leri; SDK ise bu API'yi belirli bir dilde kullanmayı kolaylaştıran bir araç takımıdır. API'yi SDK olmadan da her zaman doğrudan çağırabilirsiniz.
Önemli noktalar
- SDK, tek bir platform ya da servis için kütüphaneleri, araçları, dokümanları ve örnekleri paketler.
- Android'inki gibi platform SDK'ları derleme araçları ve emülatörler içerir.
- Servis SDK'ları bir API'yi, kimlik doğrulama ve yeniden denemeler dahil, yerel fonksiyonlara sarar.
- Mobil uygulamalar platformun belirli bir SDK sürümünü hedefler.
- API arayüzdür; SDK onu kullanmak için bir araç takımıdır.
Örnek
// Without the SDK: build the HTTP request yourself
await fetch("https://api.stripe.com/v1/customers", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.STRIPE_SECRET_KEY}`,
"Content-Type": "application/x-www-form-urlencoded",
},
body: new URLSearchParams({ email: "ada@example.com" }),
});
// With Stripe's SDK: auth, encoding, retries and types are handled
import Stripe from "stripe";
const stripe = new Stripe(process.env.STRIPE_SECRET_KEY);
const customer = await stripe.customers.create({ email: "ada@example.com" });Sık sorulan sorular
SDK ile API arasındaki fark nedir?
API, bir platformun ya da servisin sunduğu işlemler bütünüdür. SDK ise bu API'yi belirli bir dilde ya da platformda çağırmayı kolaylaştıran kütüphaneler ve araçlardan oluşan bir kittir.
SDK ile kütüphane arasındaki fark nedir?
Kütüphane tek bir yeniden kullanılabilir kod parçasıdır. SDK ise genellikle bir platform için bir ya da daha fazla kütüphaneye ek olarak araçlar, dokümantasyon ve örnekler içeren daha büyük bir pakettir.
Bir servisin SDK'sını kullanmak zorunda mıyım?
Hayır. HTTP isteği yapabilen her dil bir web API'sini doğrudan kullanabilir. SDK'lar yalnızca zaman kazandırır ve kimlik doğrulama, yeniden denemeler ve sayfalama gibi ayrıntıları sizin yerinize halleder.
Sık karşılaştırılanlar
İlgili sayfalar
- APIBackend ve API'ler, s. 2API, bir yazılımın başka bir yazılımdan veri ya da işlem talep etmesini sağlayan, belgelenmiş ve öngörülebilir kurallar bütünüdür.
- KütüphaneProgramlamanın Temelleri, s. 35Kütüphane, bir programın sık yapılan işleri o kodu kendisi yazmadan yapmak için çağırdığı, fonksiyon ve sınıf gibi hazır kodlardan oluşan bir koleksiyondur.
- FrameworkProgramlamanın Temelleri, s. 22Framework, bir uygulamanın yapısını sağlayan, yeniden kullanılabilir kod, araç ve kural temelidir; geliştiriciler yalnızca kendi mantıklarını doldurur.
- REST APIBackend ve API'ler, s. 38REST API, verileri URL'lerle tanımlanan kaynaklar olarak sunan ve istemcilerin onları standart HTTP metotlarıyla okuyup değiştirmesini sağlayan web API'sidir.
- IDEProgramlamanın Temelleri, s. 25IDE (tümleşik geliştirme ortamı), bir kod editörünü hata ayıklayıcı, derleme komutları ve diğer geliştirici araçlarıyla tek bir yerde birleştiren uygulamadır.
Bu sayfada bir hata ya da eksik mi gördünüz?Düzeltme önerin