2012-12-19 2 views
1

JavaScript, 네임 스페이스 및 축소/연결과 관련된 몇 가지 문제가 있습니다. 나는 아무런 통제력이 없다. (적어도 나는 갖고 싶지 않다.) 어떤 순서로 파일들이 연결될 것인가. 'com.example.ExampleClass'와 같은 문자열이 주어 졌을 때 단순히 객체를 반환하는 네임 스페이스 함수를 사용하면 다른 클래스에서 필요할 때 '클래스'가 정의되지 않을 수 있습니다.자바 스크립트에서 네임 스페이스를 사용하여 지연 초기화 사용

EventDispatcher의 기능이 필요한 DocumentProvider 객체가 있다고 가정합니다. 그러나 현재 설정에서 DocumentProvider는 EventDispatcher보다 먼저 연결됩니다. 프로토 타입에이 기능을 정의하려고하므로 생성자에서이 기능을 확장 할 수 없습니다.

그래서, 내 제안 된 솔루션은 게으른 초기화를 사용하는 것입니다 : 최고 레벨 namespace(alias, factory) 함수를 정의

  • 사용 의사 오버로드 지정된 이름에 공장을 할당하거나 개체를 반환 하나에 네임 스페이스에 공장에서 생성

또는 define(alias, factory)import(alias)으로 나눌 수 있습니다. 가독성을 높이고 지구 공간을 더욱 오염시키는 것이 좋습니다.

제 질문은 : overengineering입니까? 이 문제에 대해 더 우수하고 간단하며 더 많은 '표준'솔루션이 있습니까? 그리고 네임 스페이스 기능이 (다른 구현으로) 언어에 추가되는 위험은 무엇입니까?

답변

0

체크 아웃 RequireJS 체크 아웃하면 많은 시간을 절약 할 수 있습니다.

관련 문제