Kütüphane

Başlangıç Seviyesi

Bilgisayar programlamasında library yani kütüphane terimi, yürütülebilir dosyalar, belgeler, mesaj şablonları ve yazılı kodu içerebilen, iyi belgelenmiş kararlı bir kaynaklar koleksiyonunu ifade etmektedir.

Buna ek olarak kütüphane terimi kullanıldığında, belirli bir eylemi gerçekleştiren veya belirli bir çıktı üreten önceden yazılmış modüller koleksiyonuna da atıfta bulunabilmektedir. Kitaplıktaki modüller kod, sınıf tanımları, prosedürler, komut dosyaları ve yapılandırma verileri biçimini alabilmektedir. Bu durum, geliştiricilerin her modül için tüm kodu sıfırdan yeniden yazmak zorunda kalmadan kitaplıktaki modülleri kullanabileceği anlamına gelmektedir. Diğer bir deyişle, sıfırdan yeni modüller oluşturmak yerine diğer kitaplıkların sunduğu fonksiyonları tekrar tekrar kullanabilmektedirler.

Kitaplıklar, özel olmayan kullanım için genelleştirilebilir (örnek olarak, zamanı söyleme, temel matematiksel işlemler) veya belirli bir kullanım durumu için oldukça spesifik bir hale getirilebilmektedir (örnek olarak, ses dosyası sıkıştırmasının kodunu çözme diğer bir adıyla decoding). Bu nedenle kod kütüphanelerini kullanmak, geliştiricilere ve bilgisayar bilimcilerine birçok avantaj sağlamaktadır. Bunlardan bazıları, geliştiricilerin yazılım geliştirmesini ve çalıştırmasını kolaylaştıran zaman ve kaynakların daha verimli kullanımını içermektedir.

Kod kitaplıklarını kullanmanın dezavantajı ise, geliştiricinin yalnızca kullanımının girdisini ve çıktısını görebildiği Kara Kutu Etkisi'dir; bu durum, kütüphanelerin nasıl işledikleri hakkında hiç bir bilgi sahibi olamayacakları veya az bilgi sahibi olacakları anlamına gelmektedir.