Sobes.tech
Middle

ინკაფსულაცია რა არის? რა სარგებლობა აქვს მას?

sobes.tech AI

პასუხი AI-სგან

ობიექტზე ორიენტირებული პროგრამირების ერთ-ერთი ძირითადი პრინციპია ინკაფსულაცია, რომელიც გულისხმობს ობიექტის შიდა რეალიზაციის დამალვას და მონაცემებზე წვდომის უზრუნველყოფას მხოლოდ განსაზღვრული მეთოდების (გეტერებისა და სეტერების) მეშვეობით.

ინკაფსულაციის უპირატესობები:

  • მონაცემების დაცვა არასწორი გამოყენებისა და ცვლილებებისგან გარედან.
  • კოდის შენარჩუნებისა და ცვლილების გამარტივება, რადგან შიდა რეალიზაცია შეიძლება შეიცვალოს გარეგანი ინტერფეისის ზეგავლენის გარეშე.
  • კოდის წაკითხულობისა და სტრუქტურის გაუმჯობესება.

Java-ის მაგალითი:

public class User {
    private String name; // დამალული ველი

    public String getName() {
        return name;
    }

    public void setName(String name) {
        if(name != null && !name.isEmpty()) {
            this.name = name;
        }
    }
}