저는 현대의 클라이언트 측 JS 생태계를 따라 잡고 CommonJS 및 AMD와 같은 모듈 시스템 (브라우저 도구, 요구 사항, onejs, 잼 및 기타 수십 가지 관련 도구 포함)에서 읽어 왔습니다. Javascript 라이브러리를 작성하는 경우 가장 널리 액세스 할 수있는 패키지 (CommonJS, AMD, 그리고 특히 어느 것에 의해서도 맹세하지 않는 사용자가 이상적입니다)를 어떻게 포장합니까?오늘 클라이언트 측 Javascript 라이브러리를 패키지하는 방법은 무엇입니까?
jQuery와 같은 인기있는 라이브러리는 건물 자체에 오래된 학교 파일 연결을 사용하고 내보내기 또는 전역 컨텍스트에 쓸 것인지 여부를 동적으로 감지하는 것 같습니다. 저는 현재 동일한 일을하고 있습니다 만, 주된 단점은 (jQuery와는 달리) 몇 개의 라이브러리에 의존하는 경우 사용자에게 전이 집합을 수동으로 미리 포함시키지 않아도된다는 것입니다. (현재 저는 두 가지 의존성 만 가지고 있습니다.) 물론 전역 네임 스페이스 오염도 있습니다.
또는 각 컨텍스트에 대해 내 라이브러리의 여러 버전을 생성하는 것이 가장 쉽습니다.
또한 포장 및 게시에 영향을줍니다. 몇 가지 시스템이 있지만, 주요한 것은 배수관 (bower)이라고 생각합니다. 그러나 구성 요소 용으로 패키지화하려면 CommonJS 모듈이 필요합니다.
내가 알고 있어야하는 다른 관련 측면이 있습니까? 이 모든 것을 수행하기위한 훌륭한 예제 프로젝트가 있습니까?