나는 PHP에 익숙하며 모든 절차가있는 웹 사이트 프로젝트를 상속 받았다. (파일 검색시 어디에서나 함수 정의조차도 존재하지 않는다.). 나는 C# 및 Java 세계에서 온 것입니다. 나는 점진적으로 OOP를 추가하는 방법을 찾고있다. (그들은 내가 프론트 엔드를 업데이트하기를 원하고, 동시에 백엔드를 수정하도록 설득하려고 노력하고 있으며 프레임 워크 (dammit)를 사용하고 싶지 않습니다.)PHP - 오토로더 구현, 모든 클래스를 미리로드
오토로더를 보면서 ... 음, 여기 내 이해가있다. 이것은 클래스가 저장된 폴더를 등록하는 방법이며, 클래스, 특성 등을 인스턴스화 할 때 클래스/파일 이름/네임 스페이스를 기반으로 폴더를 검색하고 적절한 정의를로드합니다.
가 자동 로더 폴더를 검색하고 모든 페이지 수명주기에 적절한 정의를로드 (또는 그들을 캐시 않음)을 수행합니다
나는 몇 가지 질문이?사전로드 : 은 자동 로더, 또는 대안을 사용하는 방법이 있나요, 메모리에 모든 클래스 정의로드를 사전에 모든 세션에서이를 사용할 수?
그렇다면 클래스 파일을 업데이트 할 때 클래스 파일을 변경하면이 메커니즘으로 메모리에 모든 것을 다시로드하라는 것을 어떻게 알 수 있습니까? 질문에 대한
UPDATE :
가 귀하의 답변 주셔서 모두 감사하고 조금 도움이되지만 ... I에 유래에 대한 잘못된 질문 (들) 포즈의 나쁜 버릇을해야합니까.피하고자하는 것은 클래스를 추가하여 페이지 속도를 줄이는 것입니다. 그래서 라이브러리를 추가하고 오토로더로 경로를 등록한다고합시다. 페이지는 여러 종속성이있는 클래스를 인스턴스화합니다. 종속성 그래프에 15 개의 파일이 있다고 가정 해 보겠습니다. 각 요청주기마다 서버는 한 페이지에 15 개의 다른 파일과 페이지를로드합니다.
컴파일 된 언어에서 왔기 때문에 이러한 클래스를 메모리에로드하지 않는 것이 조금 이상합니다. 모든 수업은 5MB를 넘지 않아야합니다.
(아니면 그냥 심볼릭 링크를 램 디스크를 만들고 부팅 거기에 모든 파일을 복사 만해야합니까?)
필자는 [PHP-FIG : Autoloader] (http://www.php-fig.org/psr/psr-4/)와 [Composer] (https://getcomposer.org)를 살펴볼 것입니다. /doc/01-basic-usage.md)를 다운로드하십시오. – ldg
나는이 길로 갈 필요가 있다고 생각한다. https://en.wikipedia.org/wiki/List_of_PHP_accelerators –
@PaulPerrick 링크를 제공해 주셔서 감사합니다. 내 배포 설정에 대해 생각하게 만듭니다. – BeetleJuice