나는 현대 클라이언트 측 JS 생태계를 따라 잡고 CommonJS와 AMD (브라우저 화, requirejs, onejs, jam, 수십 가지 관련 도구 포함)를 읽었습니다. Javascript 라이브러리를 작성하는 경우 가장 광범위하게 액세스 할 수 있도록 모듈화 / 패키징하는 방법은 무엇입니까 (특히 CommonJS, AMD, 특히 둘 다 맹세하는 사용자가)?
jQuery와 같은 인기있는 라이브러리는 자체 빌드를 위해 구식 파일 연결을 사용 exports
하고 전역 컨텍스트에 쓸지 여부를 동적으로 감지하는 것 같습니다 . 나는 현재 같은 일을하고 있지만 주된 단점은 (jQuery와 달리) 몇 개의 라이브러리에 의존하는 경우 사용자에게 전이 세트를 수동으로 사전 포함하도록 요구하지 않아도된다는 것입니다. (현재는 두 가지 종속성이 있습니다.) 물론 전역 네임 스페이스 오염.
아니면 각 컨텍스트마다 여러 버전의 라이브러리를 생성하는 것이 가장 깨끗합니까?
나는 또한 포장과 출판에 대해 궁금합니다. 여러 시스템이 있지만 주요 시스템은 바우어라고 생각합니다. 페치이기 때문에 처리하기 쉽습니다. 그러나 CommonJS가 필요한 구성 요소와 같은 다른 패키지 시스템을 대상으로 삼아야하는지 궁금합니다.
내가 알아야 할 다른 관련 측면이 있습니까? 이 모든 것에 대해 모범적 인 프로젝트가 있습니까?