도구 태그
객체와 데이터 구조
객체 및 데이터 구조
1. getter 및 setter 사용 객체 캡슐화 사용
2. 객체에는 비공개 또는 보호된 멤버 변수를 사용하세요
1. getter와 setter를 사용하세요
PHP에서는 메소드에 public, protected, private를 사용하여 객체 속성의 변경 사항을 제어할 수 있습니다.
-
객체의 속성을 얻는 것 이외의 작업을 수행하려는 경우 코드에서 각 속성 액세스 방법을 찾아 수정할 필요가 없습니다.
-
set해당 속성 메소드가 있는 경우 매개변수 확인 추가가 용이함 -
패키지 내부 표현
-
set和get및get을 사용할 때 로깅 및 오류 제어를 쉽게 추가할 수 있습니다. -
현재 클래스를 상속할 때 기본 메서드 함수를 재정의할 수 있습니다.
-
get*,set*원격 서버에서 개체 속성을 가져올 때 지연 로딩을 쉽게 사용할 수 있습니다.
또한 이 접근 방식은 OOP 개발의 열기 및 닫기 원칙을 준수합니다.
나쁜:
으아악좋아요:
으아악2. 객체에는 비공개 또는 보호된 멤버 변수를 사용하세요
-
공용 메서드와 속성을 수정하는 것은 외부 코드에 쉽게 의존할 수 있고 제어할 수 없기 때문에 매우 위험합니다. 이에 대한 수정 사항은 이 클래스의 모든 사용자에게 영향을 미칩니다. 공용 메서드와 속성은 변경에 가장 위험합니다. 왜냐하면 일부 외부 코드는 쉽게 이에 의존할 수 있고 어떤 코드가 이에 의존하는지 제어할 수 없기 때문입니다. 클래스의 수정은 클래스의 모든 사용자에게 위험합니다.
-
protected에 대한 수정은 하위 클래스에서 사용할 수 있기 때문에 public에 대한 수정만큼 위험합니다. 유일한 차이점은 호출 가능한 위치가 다르며 수정하면 이 클래스를 통합하는 모든 위치에 영향을 미친다는 것입니다. protected 수정자는 모든 하위 클래스의 범위에서 사용할 수 있기 때문에 공개만큼 위험합니다. 이는 사실상 공개와 보호의 차이는 액세스 메커니즘에만 있지만 클래스의 수정은 모든 하위 클래스에 대해 동일하게 유지된다는 것을 의미합니다. .
-
프라이빗 수정은 코드의 이 부분이 현재 클래스에만 영향을 미치도록 보장합니다. 프라이빗 수정자는 코드가 단일 클래스의 경계에서만 수정되는 것이 위험하다는 것을 보장합니다(수정해도 안전하며 Jenga 효과가 없습니다).
따라서 클래스의 코드에 액세스할 수 있는지 여부를 제어해야 하는 경우에만 public/protected,其他时候都用private를 사용하세요.
Fabien Potencier의 이 블로그 게시물을 읽을 수 있습니다.
나쁜:
으아악좋아요:
으아악관련 동영상
핫 AI 도구
무료로 이미지를 벗다
사진에서 옷을 제거하는 온라인 AI 도구입니다.
사실적인 누드 사진을 만들기 위한 AI 기반 앱
더 현명한 결정을 위한 AI 기반 투자 연구
인기 기사
뜨거운 주제
20516
7
13629
4
11965
4
8981
17
8505
7
인기 있는 도구
사용하기 쉬운 무료 코드 편집기
중국어 버전, 사용하기 매우 쉽습니다.
강력한 PHP 통합 개발 환경
시각적 웹 개발 도구
신 수준의 코드 편집 소프트웨어(SublimeText3)












![PHP 실용 개발 시작하기: 빠른 PHP 생성 [중소기업 포럼]](https://img.php.cn/upload/course/000/000/035/5d27fb58823dc974.jpg)
