Kapsülleme ve Soyutlama
Kapsülleme ve Soyutlama, OOP (Nesneye Yönelik Programlama) dillerinde bulunan iki farklı ancak ilgili kavramdır. Kapsülleme, veri ve davranışı tek bir varlık olarak bir araya getirme kavramıdır. Öte yandan, Soyutlama, bir varlığın nasıl uygulandığına karşı nasıl davrandığını \ nasıl gördüğünü sunma sürecidir..
Kapsülleme Nedir?
Kapsülleme, üzerinde çalışan verileri ve işlemi tek bir varlığa sarma işlemidir. Bu aslında verilere erişmek için önceden tanımlanmış belirli yöntemlerin kullanılması gerektiği anlamına gelir. Başka bir deyişle, kapsüllenmiş verilere doğrudan erişilemez. Bu, kullanıcının verilere istediği gibi doğrudan erişemediği ve değiştiremediği için verilerin bütünlüğünün korunmasını sağlar. Kullanıcılar veri değerlerini yalnızca kullanıcılar tarafından kullanılabilen yöntemlerle alır veya ayarlar. Bu yöntemler genellikle alanlara yalnızca uygun formattaki verilerin eklenmesine izin verecek şekilde veri doğrulaması sağlar. Bu nedenle, Enkapsülasyonun faydaları üç katlıdır. Kapsülleme yoluyla, programcı bir sınıfın alanlarını salt okunur veya yalnızca yazma yapabilir. İkincisi, bir sınıf, alanlarında depolananlar üzerinde tam kontrole sahip olabilir. Son olarak, bir sınıfın kullanıcılarının verilerinin nasıl saklandığından endişelenmesine gerek yoktur. Java'da, programcı tüm örnek değişkenini özel olarak bildirebilir ve özel alanlara erişmek ve değiştirmek için al ve ayarla yöntemleri (genel olan) sağlayabilir.
Soyutlama Nedir?
Soyutlama, sunum detaylarını uygulama detaylarından ayırma işlemidir. Bu, geliştiricinin daha karmaşık uygulama ayrıntılarından kurtulması için yapılır. Bunun yerine, programcı işletmenin sunumuna veya davranışsal ayrıntılarına odaklanabilir. Basit bir ifadeyle, soyutlama, belirli bir varlığın nasıl uygulandığından ziyade nasıl kullanılabileceğine odaklanır. Soyutlama esas olarak uygulama ayrıntılarını gizler, böylece uygulama metodolojisi zamanla değişse bile, programcı programını nasıl etkileyeceğinden endişe etmesine gerek kalmaz. Bir sistem birkaç katman veya seviyede soyutlanabilir. Örneğin, düşük düzeyli soyutlama katmanları donanım ayrıntılarını, yüksek düzeyli soyutlama ise yalnızca işletmenin iş mantığını ortaya koyacaktır. Soyutlama terimi, hem bir varlığa hem de bir sürece atıfta bulunmak için kullanılabilir ve bu biraz karışıklığa yol açar. Bir işlem olarak soyutlama, bir öğenin veya bir grup öğenin gereksiz ayrıntılarını yok sayarken önemli ayrıntıların çıkarılması anlamına gelirken, varlık olarak soyutlama, yalnızca temel ayrıntılara sahip bir işletmenin bir modeli veya görünümü anlamına gelir. Java'da, programcı bir sınıfı soyut bir varlık olarak ilan etmek için abstract anahtar sözcüğünü kullanabilir; bu, gerçek dünya varlığının temel tanımlayıcı özelliklerini temsil eder.
Kapsülleme ve Soyutlama arasındaki fark nedir?
Kapsülleme ve Soyutlama Nesneye Dayalı Programlama dillerinde bulunan yüksek oranda ilişkili kavramlar olsa da, önemli farkları vardır. Soyutlama neyin görünür ve neyin gizlenmesi gerektiğini tanımlamamıza yardımcı olan bir tekniktir. Kapsülleme, neyin görünür olması gerektiğini ve neyin gizlenmesi gerektiğini gizleyecek şekilde bilgiyi paketleme teknikleridir. Başka bir deyişle, kapsülleme soyutlamanın ötesinde bir adım olarak tanımlanabilir. Soyutlama, gerçek bir dünya nesnesini temel tanımlayıcı özelliklerine indirgemekle birlikte, kapsülleme, söz konusu varlığın bu işlevselliğini modelleyerek ve bağlayarak bu fikri genişletir..