PHP5는 실시간 PHP 애플리케이션에서 코드를 재사용할 수 있도록 하는 이전 버전에 객체 지향 프로그래밍 접근 방식을 추가했습니다.
객체 지향 모델의 몇 가지 개념은 다음과 같습니다. 클래스, 객체, 캡슐화, 다형성, 추상 및 최종 클래스, 메서드, 인터페이스 및 상속 등...
여기에서는 추상화와 캡슐화의 기본적인 차이점에 대해 설명합니다.
캡슐화:
- 캡슐화는 데이터 멤버(변수)와 구현 세부 정보를 클래스라는 단일 단위로 결합하는 접근 방식이며, 이는 클래스가 내부에 존재하는 변수와 메서드로 구성됨을 의미합니다.
- 캡슐화는 클래스 내부에 존재하는 데이터 멤버에 대한 보호 메커니즘입니다. 즉, 데이터 멤버는 최종 사용자가 액세스할 수 없습니다.
- 캡슐화에서 클래스의 데이터 멤버(변수)는 다른 클래스에서 액세스할 수 없으며 현재 클래스의 메서드를 통해서만 액세스할 수 있습니다.
- 캡슐화는 private 및 protected 액세스 수정자를 사용하여 구현됩니다.
- 웹 애플리케이션의 복잡성을 줄이기 위해 캡슐화 사용
추상화에 대해 알아보겠습니다.
추상화:
- 배경 디테일을 포함하지 않고 필요한 기능을 표현하는 구조를 추상화로 명시한다.
- 추상화는 최종 사용자로부터 구현 세부 정보를 다루고 사용자에게만 기능을 표시하는 기술입니다.
- 추상화는 클래스와 함께 다형성 아이디어를 실행하는 데 사용됩니다. 즉, 추상화를 사용하면 클래스 내부에서만 메서드를 선언할 수 있습니다. 일반적으로 다른 파생 클래스를 사용하여 동일한 메서드를 설명합니다.
- 추상 클래스는 인스턴스화할 수 없으므로 최종 사용자가 직접 액세스할 수 없습니다.
- 애플리케이션의 복잡성을 줄이고 애플리케이션에서 코드를 재사용할 수 있도록 하는 데 사용됩니다.