Kütüphane
Bilgisayar programlamasında, kitaplık terimi, yürütülebilir dosyalar, belgeler, mesaj şablonları ve yazılı kodu içerebilen, iyi belgelenmiş kararlı kaynaklar koleksiyonunu ifade eder.
Terim ayrıca kullanıldığında, belirli bir eylemi gerçekleştiren veya belirli bir çıktı üreten önceden yazılmış modüllerin bir koleksiyonuna da atıfta bulunabilir. Kütüphanedeki modüller kod, sınıf tanımları, prosedürler, komut dosyaları ve konfigürasyon verileri şeklini alabilir. Bu, geliştiricilerin her modül için kodun tamamını sıfırdan yeniden yazmak zorunda kalmadan kitaplıktaki modülleri çağırabilecekleri anlamına gelir. Başka bir deyişle, kendileri yeni modüller oluşturmak yerine diğer kütüphaneler tarafından sağlanan davranışı yeniden kullanabilirler.
Kitaplıklar, özel olmayan kullanım (örneğin, zamanı söyleme, temel matematiksel işlemler) için genelleştirilebilir veya belirli bir kullanım durumu için oldukça özel olabilir (örneğin, ses dosyası sıkıştırmasının kodunu çözme).
Bu nedenle, kod kitaplıklarını kullanmak, geliştiricilere ve bilgisayar bilimcilerine birçok avantaj sağlar. Bazıları, geliştiricilerin yazılım geliştirmesini ve yürütmesini kolaylaştıran zaman ve kaynakların daha verimli kullanılmasını içerir.
Kod kitaplıklarını kullanmanın bir dezavantajı, geliştiricinin yalnızca kullanımının girdi ve çıktısını görebildiği Kara Kutu Etkisi olarak adlandırılır; bu, çoğu zaman arada ne olduğunu çok az veya hiç anlamadıkları anlamına gelir.