Wprowadzenie do enkapsulacji w PHP
Poniższy artykuł Encapsulation in PHP zawiera szczegółowy zarys enkapsulacji PHP.
- We wcześniejszych czasach programy komputerowe stanowiły długą sekwencję poleceń. Polecenia zostały następnie przypisane do listy poleceń zwanych funkcjami.
- Wszystkie dane były przechowywane w jednym miejscu i były modyfikowane z każdej lokalizacji, gdziekolwiek zostały wywołane, co powodowało wiele problemów, ponieważ dane zmodyfikowane w jednej funkcji wpłynęłyby również na inne funkcje. Aby rozwiązać ten problem, OOP używa enkapsulacji w PHP. Zobaczmy, na czym polega enkapsulacja.
- Hermetyzacja jest podstawowym tematem w Object-Oriented Programming Language (OOP). Określa pojęcie wiązania danych (atrybutów) i metod (funkcji) w jedną jednostkę (klasę). Termin ten jest również określany jako ukrywanie informacji.
- Osiąga się to poprzez uczynienie danych i metod klasy prywatnymi. Rozwiązuje problem na poziomie wdrożenia, a nie na poziomie projektu.
- Kapsułkowanie jest specjalnie stosowane do ochrony. Jest to proces ukrywania danych obiektu przed innymi klasami / metodami, a dostęp do danych jest zabroniony członkom klasy.
- Jeśli masz atrybut, którego inni nie widzą, i łączysz go z funkcjami lub metodami zapewniającymi pełny dostęp do elementów danych, możesz ukryć zawartość i kontrolować dostęp do obiektu.
- Użytkownicy nie będą świadomi wewnętrznej implementacji i poznają jedynie górny lub górny widok funkcjonalności, w jaki sposób klasa przechowuje dane w zmiennych. Funkcje obiektu mogą uzyskać dostęp do funkcji innych obiektów.
- W naszym codziennym życiu hermetyzacja jest jak nasza garderoba, w której możemy przechowywać nasze koszule, spodnie itp. W tym przypadku szafa będzie główną klasą, a atrybutami będą ubrania, pudełka itp.
Jak działa enkapsulacja w PHP?
- Jak wszyscy wiemy, kapsułkowanie służy do ukrywania szczegółów przed użytkownikami. Aby to osiągnąć, tworzymy obiekt klasy, a obiekt wywołuje metody i metody wykonują swoje zadania ze zdefiniowanymi właściwościami.
- Weźmy przykład producenta klimatyzatora i klimatyzatora
Załóżmy, że jesteś producentem klimatyzatora i zaprojektowałeś i zintegrowałeś projekt klimatyzatora (klasy), teraz używając sprzętu produkujesz klimatyzator (obiekt) do celów sprzedaży, kiedy sprzedajesz klimatyzator, użytkownik musi wiedzieć jak używać klimatyzatora zamiast tego, jak to działa LUB załóżmy, że masz laptopa i istnieje interfejs umożliwiający interakcję z nim, będziesz korzystać z usług laptopa zamiast wiedzieć, jak to naprawdę działa. - Oznacza to, że tworzysz klasę za pomocą funkcji i czyniąc obiekty klasy, udostępniasz funkcjonalność swojej klasy przez ten obiekt i bez ingerencji w klasę oryginalną.
- Hermetyzacja polega na tym, aby obiekty lub zmienne były widoczne w zaimplementowanym kodzie.
Przykład
class employee ( public $name; private $id; protected $tax; public $age; )
Jeśli musisz uzyskać dostęp do właściwości prywatnych / chronionych, możesz użyć metod pobierających i ustawiających w swojej klasie.
Jak sama nazwa wskazuje,
- Metoda gettera pobiera atrybut z innych klas.
- Metoda settera modyfikuje / zmienia wartość atrybutu / danych.
- W zależności od metod, które wdrażamy, możemy zdecydować, jakie uprawnienia należy udzielić. Możemy dać pełne uprawnienia tylko do odczytu, tylko do zapisu, lub w ogóle. Aby to osiągnąć, używamy specyfikatorów dostępu, takich jak publiczny, prywatny i chroniony.
- Możesz używać własności publicznej w dowolnym miejscu wewnątrz klasy, jak również poza klasą, ale nie możesz używać właściwości prywatnych i chronionych poza klasą bezpośrednio przez wywołanie jej. Dostęp do metod prywatnych można uzyskać w ramach tej samej klasy, a do metod chronionych można uzyskać dostęp tylko w podklasach. Na zewnątrz klasa nie ma dostępu do prywatnej lub chronionej metody innych klas.
- Za pomocą metod pobierających i ustawiających można uzyskać dostęp do zmiennych i metod również poza klasą. Spójrz na klasę pracowników, w klasie dodaj następującą metodę
class employee( public function employee_ID()( return $this->id; ))
I możemy uzyskać dostęp, wywołując taką funkcję
$obj = new employee(); echo $obj->employeeID()
Przykład enkapsulacji w PHP
Wdrożony kod
<_?php
Encapsulation in PHP
class Employee
(
public $employee_name;
public $employee_id;
function __construct($emp_name, $emp_id)
(
$this->employee_name = $emp_name;
$this->employee_id = $emp_id;
)
public function Employee_details()
(
echo "Employee name is $this->employee_name and Employee id is $this->employee_id";
)
)
$obj = new Employee("Abhishek", "123456");
echo $obj->Employee_details();
?>
Encapsulation in PHP
class Employee
(
public $employee_name;
public $employee_id;
function __construct($emp_name, $emp_id)
(
$this->employee_name = $emp_name;
$this->employee_id = $emp_id;
)
public function Employee_details()
(
echo "Employee name is $this->employee_name and Employee id is $this->employee_id";
)
)
$obj = new Employee("Abhishek", "123456");
echo $obj->Employee_details();
?>
Wynik
Korzyści z enkapsulacji w PHP
- Hermetyzacja pomaga nam w wiązaniu danych (zmiennych / atrybutów) i funkcji członkowskich klasy.
- Pola klasy można ustawić tylko do odczytu lub tylko do zapisu przy użyciu specyfikatorów dostępu, takich jak publiczny, prywatny i chroniony.
- Zapewnia Twojemu kodowi większe bezpieczeństwo, elastyczność i łatwość utrzymania.
- Dzięki Encapsulation twoje metody i atrybuty danych nie mogą być wywoływane bezpośrednio, dlatego użytkownicy nie mogą uzyskać nielegalnego dostępu do danych.
- Pozwala nam modyfikować zaimplementowany kod bez naruszania logiki / kodu innych, którzy używają tego samego kodu i funkcji.
- Zapewnia integralność danych obiektu.
- Użytkownik klasy nie wie, w jaki sposób klasa przechowuje dane.
- Hermetyzacja zapobiega nieoczekiwanym zmianom danych.
- Hermetyzacja poprawia również możliwość ponownego użycia i łatwo ją zmienić w zależności od nowych wymagań lub potrzeb.
Wniosek
W tym artykule poznaliśmy jedną z najważniejszych koncepcji programowania obiektowego. Kapsułkowanie jest jedną z najbardziej znanych i powszechnie stosowanych technik w celu przezwyciężenia funkcji i metod wywoływanych w wielu lokalizacjach.
Istotą enkapsulacji jest ukrycie złożonego kodu przed użytkownikiem i pokazanie użytkownikowi prawdziwej funkcjonalności. Jeśli w kodzie nie będzie przestrzegane prawidłowe enkapsulacja, prowadzi to do jego złego zaprojektowania. Odzwierciedla to fakt, że większość współczesnych języków programowania obsługuje enkapsulację, taką jak PHP, JAVA itp.
Polecane artykuły
Jest to przewodnik po enkapsulacji w PHP. Tutaj omawiamy wprowadzenie, działanie, przykłady i zalety enkapsulacji w PHP. Możesz także przejrzeć następujące artykuły, aby dowiedzieć się więcej -
- Co to jest PHP?
- Frameworki PHP
- Funkcje ciągów PHP
- Jak podłączyć bazę danych do PHP?
- Przykłady enkapsulacji w C ++
- Przykłady enkapsulacji w C.
- Zalety enkapsulacji w JavaScript