php 네 임 스페이스 디자인 사상,용법 및 단점 분석

본 논문 의 사례 는 phop 네 임 스페이스 디자인 사상,용법 과 단점 을 서술 하 였 다.여러분 께 참고 하도록 공유 하 겠 습 니 다.구체 적 으로 는 다음 과 같 습 니 다.
C\#등 언어 에 비해 php 함수 에서 변 수 를 임의로 정의 하고 값 을 부여 할 수 있 습 니 다.전역 변 수 를 덮어 쓰 거나 클래스 변 수 를 걱정 하지 않 아 도 됩 니 다.변수 앞 에$가 있 기 때문에 클래스 변 수 를 마음대로 정의 할 수 있 습 니 다.
php 의 명칭 공간 은 전역 변수,국부 변수의 디자인 사상 과 마찬가지 로 명칭 충돌 을 최대한 줄 이기 위 한 것 이다.php 의 네 임 스페이스 는 파일 시스템 과 유사 할 수 있 으 며,상대 적 으로 네 임 스페이스 와 절대 네 임 스페이스 가 있 습 니 다.
네 임 스페이스 정의
첫 번 째 문장 이 어야 합 니 다.앞 에 어떤 문장 도 있어 서 는 안 됩 니 다.주석 은 가능 합 니 다.
절대 네 임 스페이스 여야 합 니 다.

namespace bookrpg\config;
//  
namespace bookrpg\config
{
}
namespace \bookrpg\config; //  ,     \

네 임 스페이스 가 져 오기
절대 네 임 스페이스 여야 합 니 다.

use bookrpg\config\ClassName;
use \bookrpg\config\ClassName; //     \,     
use bookrpg\config\ClassName as NewClassName;
use Exception;
use \Exception; //     \,     

네 임 스페이스 사용
절대 네 임 스페이스 사용

$cls = new \bookrpg\config\ClassName();
class MyException extends \Exception
{
}

상대 네 임 스페이스 사용 하기

namespace bookrpg
{
  //   new \bookrpg\config\ClassName();
  $cls = new config\ClassName();
  //  ,php    \bookrpg\Exception,      Exception
  $ex = new Exception();
}

괴이 한 곳
C++,자바,C\#는 모두 비슷 한 네 임 스페이스 개념 을 가지 고 있 으 며,phop 의 네 임 스페이스 는 대 세 를 따 르 지 않 고 자신 만 의 독립 된 사상 을 가지 고 있 으 며,선입견 을 가 진 사람 에 게 말 하면 괴이 하고 현혹 된다.

  • 네 임 스페이스 에 역 슬 래 쉬 가 있다 니?
    점(.)은 문자열 연결 문자 로 사용 되 었 고 절대 와 상대 적 인 네 임 스페이스 를 구분 해 야 합 니 다.new.a.b.c()가 너무 아름 답지 않 으 니 역 슬 래 쉬 를 선택 하 십시오.

  • 네 임 스페이스 를 사용 하면 전역 클래스 에'\'또는 use 를 추가 해 야 합 니 다.힘 들 지 않 으 세 요?
    어 쩔 수 없 이 파일 시스템 의 개념 을 엄 격 히 비교 하기 위해 서 라 도 유형 이름 의 충돌 을 걱정 하지 않 아 도 된다.

  • 파일 시스템 을 엄 격 히 비교 하 는 이상 네 임 스페이스 를 정의 하고 가 져 올 때 앞 에\를 추가 하지 않 는 이 유 는 무엇 입 니까?
    phop 의 설계 자 는 완벽 주의 자가 아니 라 고 할 수 밖 에 없다.
  • 그러나 phop 의 네 임 스페이스 는 논리 적 완벽 성 이 부족 하 다.
  • 선도\\의 사용 이 일치 하지 않 고 똑 같이 절대 네 임 스페이스 이 며 정의 할 때 사용 할 수 없고 가 져 올 때 사용 할 수 있 습 니 다
  • 전역 클래스 라 도 전역 네 임 스페이스 가 아 닌 곳 에 서 는 선도\\를 사용 해 야 하 며,전역 함수 와 변 수 는 이 제한 을 받 지 않 습 니 다
  • 사용 제안
  • 네 임 스페이스 를 정의 하고 가 져 올 때 전도 하지 않 습 니 다.\
  • 모든 클래스 는 use 가 져 오기 를 사용 합 니 다.전체 클래스 를 포함 하고 네 임 스페이스 클래스 만 있 습 니 다.충돌 하 는 것 은 as 입 니 다
  • 상대 적 인 네 임 스페이스 를 직접 사용 하 는 것 을 금지한다phop 네 임 스페이스 의 디자인 사상 을 이해 하고 디자인 이 완벽 하지 않 은 곳 을 피 하 는 것 을 보면 phop 의 네 임 스페이스 도 쉽게 받 아들 일 수 있 습 니 다.
    더 많은 PHP 관련 내용 에 관심 이 있 는 독자 들 은 본 사이트 의 주 제 를 볼 수 있다.
    본 논문 에서 말 한 것 이 여러분 의 PHP 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.

    좋은 웹페이지 즐겨찾기