Sobes.tech
Junior — Middle

Nesne yönelimli programlamada kapsülleme kavramını açıklayabilir misiniz?

sobes.tech yapay zeka

AI'dan gelen yanıt

Kapsülleme, nesne yönelimli programlamanın bir ilkesidir ve bu ilke, verilerin (özelliklerin) ve bu verilerle çalışan metodların aynı nesne veya sınıf içinde birleştirilmesini içerir. Bu, nesnenin iç durumunu gizlemeye ve ona yalnızca belirli metodlar (getterlar ve setterlar) aracılığıyla erişim sağlamaya olanak tanır; böylece veriler dışarıdan doğrudan değiştirilmekten korunur.

Örneğin, JavaScript'te sembol kullanarak veya alt çizgi ile bir sözleşme takip ederek özel bir özellik oluşturabilirsiniz:

class User {
  #password; // özel alan

  constructor(name, password) {
    this.name = name;
    this.#password = password;
  }

  checkPassword(input) {
    return input === this.#password;
  }
}

const user = new User('Alice', '12345');
console.log(user.name); // Alice
console.log(user.#password); // Hata, erişim engellendi
console.log(user.checkPassword('12345')); // true

Bu şekilde, kapsülleme, verilere erişimi kontrol etmeye, güvenliği artırmaya ve kodun bakımını kolaylaştırmaya yardımcı olur.