Sarmalama, yazılım geliştirmede nesne yönelimli programlamanın temel taşlarından biridir. Bu yaklaşım, nesnelerin içeriklerini ve işlevlerini belirli bir kapsama alarak, dış etkenlerden korumayı hedefler. Böylece, nesneye erişim kısıtlanır ve yalnızca belirli yollarla etkileşim kurulmasına izin verilir. Bu durum, hem kodun daha güvenli hale gelmesini sağlar hem de karmaşıklığı azaltarak bakımını kolaylaştırır.
Sarmalamanın (encapsulation) amacı, bir nesnenin özelliklerinin dışarıdan kullanılmasını sınırlamak ve bu nesneyi kullanan yapıların istenmeyen değişikliklere neden olmasını engellemektir .
Bu sayede: