2016-07-28 3 views
7

저는 Type 2를 사용하는 프로젝트에서 Angler 2로 작업 중이며 내 워크 플로우를 못 박으려고합니다.내 JS/TS 프로젝트를 안티 패턴으로 번들합니까?

어제 저는 Guy Bedford의 패키지 관리에 대해 this video을 보았습니다. 그것에서 그는 번들링을 반 패턴으로 간주한다는 사실을 언급한다.

angular-university guide 번들링에서 벗어나는 것에 대한 비슷한 언급을 보았습니다.

비디오를 본 이후로 읽은 내용에서 반 패턴이 번들링되는 이유는 병렬로 전송 된 HTTP2 allows multiple responses per request입니다. 이것은 서버에 대한 단일 요청이 개별 파일에 전체 각도 응용 프로그램을 반환 할 수 있기 때문에 매우 유용합니다.

번들로 제공되지 않는 앱으로 전환하기에 충분한 HTTP2 지원이 이제 널리 보급 되었습니까? 장단점은 무엇입니까?

편집 # 2 :

+1

파일 연결에 대한 몇 가지 의견을 알고 있습니다. 일반적으로 http2가 좋습니다. 그것은 어쨌든 미래입니다. 하지만 아직 완벽하지는 않으며 어떤 경우에는 http1 + 연결이 느려질 수 있습니다. 그리고 물론 호환성에 대해 조금 있습니다. –

+0

HTTP2는 지금은 물론 오랜 시간 동안 순수하게 이론적입니다. 만족할만한 비율의 사용자가 HTTP2를 지원할 때까지는 JS를 "구식 방식"으로 묶어야합니다. 또한 요청 수를 줄이는 것 외에도 commonjs를 사용하는 경우 번들링에 다른 장점이 있습니다. –

+1

이 질문은 (의견대로) 의견 질문입니다. ("http2 대 번들링에 대한 고려 사항은 무엇인가?") 논리적으로 너무 넓습니다 (또는 여전히 의견 기반입니다). 그것이 나 였다면 나는 두 번째 (또는 그 이상)의 개별적인 질문을 할 것입니다. "왜 가이 베드 포드는이 비디오에서 안티 패턴을 번들로 부르는 걸까요?" –

답변

2

안티 패턴이 강한 용어입니다 질문이 더 집중하기 위해 노력했다. 그것도 약간 희미한 것입니다 : 우리 모두는 그것이 의미하는 바의 직관적 인 감각을 가지고 있습니다.하지만 의심스러운 실행 x가 실제로는 반 패턴인지 여부를 논하는 잡초에서 길을 잃는 것은 확실히 쉽습니다.

그래서 라이브러리 작성자의 이야기에서 오프 노트에 너무 많이 읽으 려하지 않고 번들링에 대한 사례를 제시하고자합니다. 이 점들은 상당히 논쟁의 여지가 없어야합니다 (누군가 의견에 동의하지 않으면 의견에서 알리고 수정합니다).

시작하기 전에주의해야 할 점 : 번들. 나는 번들을 일반적으로 번들로 묶는 팬이다. 그것은 내가하는 일에 대해 완벽하게 이해할 수 있으며, 일반적으로 앞으로 나아 갔다. 그것은 많은 긍정적 인면을 가지고 있으며, 가장 좋아하는 것은 컴파일러/롤업 압축을 더 잘 닫는 것입니다. 그러나이 답변의 나머지 부분에 대해서는 잠재적 인 결함에 대해서만 머물러 있습니다.

  1. 번들링은 사소한 캐시 미스를 초래할 수 있습니다. 앱의 일부를 변경하면 브라우저 캐시가 무효화됩니다.

  2. 번들링은 공용 라이브러리의 캐시를 활용하는 것을 더 어렵게 만들 수 있습니다. 다른 모든 사용자와 동일한 버전의 jquery를 사용하는 경우 사용자가 서버를 공격하지 않아도됩니다.

  3. 번들링은 일반적으로 모든 JavaScript를 한 번에로드한다는 의미입니다. webpack 코드 분할과 같은 예외가 있지만이 방법은 빌드 파이프 라인 대 cating 파일을 복잡하게합니다.

  4. 번들링은 여러 자산 요청을 병렬로 처리하는 HTTP/2의 기능에 누락 된 것을 의미합니다. 이는 유스 케이스와 관련이있을 수도 있고 그렇지 않을 수도 있습니다. FooCorp에 내부 자산을 구축하는 경우이 인수가 비공식 인 이유 때문에 모든 사람이 IT 부서의 IE 8에 계속 잠겨 있습니다. 귀하의 고객 기반의 대부분은 동일한 이유로 중국어입니다. 의 경우 세계에서 가장인데 HTTP/2는 이제 widely supported (크롬, 파이어 폭스, 에지, iOS safari)입니다. 사용자의 대다수 인에 하위 기능이 제공 될 수 있음을 의미합니다.

관련 문제