Junior — Middle
Kas saaksite selgitada inkapsulatsiooni kontseptsiooni objektorienteeritud programmeerimises?
sobes.tech AI
Vastus AI-lt
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 doğrudan dışarıdan değiştirilmekten korunur.
Örneğin, JavaScript'te özel bir özellik sembol kullanılarak veya alt çizgi ile bir anlaşma takip edilerek oluşturulabilir:
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.