Sobes.tech
Junior — Middle

Kunt u het concept van encapsulatie in objectgeoriënteerd programmeren uitleggen?

sobes.tech AI

Antwoord van AI

Incapsulatie is een principe van objectgeoriënteerd programmeren dat bestaat uit het samenvoegen van gegevens (eigenschappen) en methoden die met deze gegevens werken binnen één object of klasse. Het stelt je in staat de interne toestand van het object te verbergen en alleen via bepaalde methoden (getters en setters) toegang te bieden, wat de gegevens beschermt tegen directe wijziging van buitenaf.

Bijvoorbeeld, in JavaScript kun je een privé-eigenschap maken met behulp van een symbool of door een conventie met een onderstreping te volgen:

class User {
  #password; // privéveld

  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); // Fout, toegang geweigerd
console.log(user.checkPassword('12345')); // true

Zo helpt encapsulatie bij het controleren van de toegang tot gegevens, verhoogt het de veiligheid en vereenvoudigt het onderhoud van de code.