OP, sorusunu Edward V. Berard'ın "Soyutlama, Kapsülleme ve Bilgi Gizleme" başlıklı bir makalesinde bulduğu çeşitli alıntılarla güncelledi . OP'nin güncellemesinin biraz genişletilmiş ve yeniden biçimlendirilmiş bir sürümünü yeniden gönderiyorum, çünkü kendi başına bir cevap olmalı.
(Tüm alıntılar yukarıda belirtilen makaleden alınmıştır.)
Soyutlama:
"Soyutlama ile ilgili bir karışıklık, hem süreç hem de varlık olarak kullanılmasıdır. Soyutlama, bir süreç olarak, bir öğenin veya bir grup öğenin temel ayrıntılarının çıkartılmasını ve gereksiz ayrıntıları göz ardı etmesini ifade eder. varlık, bir modeli, bir görünümü veya gerçek bir öğe için başka bir odaklanmış temsili belirtir. "
Bilgi gizleme:
"Arayüzü veya tanımı, iç işleri hakkında olabildiğince az ortaya çıkarmak için seçildi." - [Parnas, 1972b]
"Soyutlama, hangi bilgilerin gizlenmesi gerektiğini belirlemek için bir teknik olarak kullanılabilir."
"İnsanlar bilginin gizlenmesi ile hangi bilgilerin gizleneceğini tanımlamak için kullanılan bir teknik (örn. Soyutlama) arasında ayrım yapmadığında karışıklık meydana gelebilir."
kapsülleme:
“Bu […] bazı şeylerin toplanması etrafında kavramsal bir engel olması durumunda bir kapsül inşa etmek anlamına gelir.” - [Wirfs-Brock ve diğ., 1990]
"Bir işlem olarak, kapsülleme, bir veya daha fazla öğeyi bir […] kapsayıcısı içine alma eylemidir. Kapsülleme, varlık olarak bir veya daha fazla öğeyi barındıran (içeren, çevreleyen) bir pakete veya bir kasaya işaret eder."
“Eğer kapsülleme 'bilgi gizleme ile aynı şey' ise, 'kapsüllenmiş olan her şeyin de gizli olduğu' iddiası ortaya çıkabilir. Bu kesinlikle doğru değil. "
Sonuç:
"Soyutlama, bilgi gizleme ve kapsülleme çok farklı, ancak yüksek oranda ilişkili kavramlardır. Soyutlamanın, hangi bilgilerin görünür olması ve hangi bilgilerin gizlenmesi gerektiğini belirlememize yardımcı olan bir teknik olduğu iddia edilebilir. bilgileri, neyin gizli olması gerektiğini gizleyecek ve görünür olması istenen şeyi görünür yapacak şekilde paketlemek için. "