두 부분이 서로 밀접하게 관련되어 있지만 두 부분으로 구성된 질문입니다.팩토리 및 자동 로딩 위험에 대한 자동로드
필자는 웹 사이트 용 페이지 데코레이터 API를 만들고 사이트 전체의 포함 파일에 데코레이터 클래스 용 오토로더를 넣었습니다. 다른 개발자는 어디서나 오토로더를 사용하는 것은 매우 위험하기 때문에 이상한 아이디어라고 생각했습니다. 이상한 오류가 발생할 수 있습니다. 예를 들어, 객체를 세션에 직렬화하고 자동로드 된 클래스 중 하나가 동일한 이름이고 __wakeup()
인 경우 실행됩니다 (시도했지만 재현 할 수 없음). 자동로드가 위험하다는 것은 사실입니까? 그렇다면 어떤 잠재적 인 위험이 있으며 어떻게 피할 수 있습니까? 나는 __autoload()
을 사용하고 있지 않지만, 오토로드 기능은 spl_autoload_register()
입니다.
그가 자동로드를 사용하는 것에 대한 또 다른 주장은 파일을 직접 포함하는 것보다 속도가 느릴 수 있다는 것입니다. 이는 분명히 분명합니다. 나는 데코레이터가 각 페이지에서 작동하도록 보장하기 위해 모든 데코레이터 클래스를 포함해야한다고 주장 했으므로 그의 제안은 포함을 가져와 원하는 클래스를 만드는 팩토리 클래스를 만드는 것이 었습니다. 나는 계속해서 갈 수 있지만, 많은 사람들이 자동 로딩의 장점에 대해 듣고 모든 애플리케이션을 더 빠르게 만들었다 고 들었다. 나는 그것을 아주 좋아하지만, 여전히 가장 좋고 빠른 것을하고 싶다. 어떤 제안? 예를 들어