ݺߣ

ݺߣShare a Scribd company logo
Webpack
개발팀 유진의2018.08.08
The Module Bundler
웹팩을 사용하는 이유?
1. 웹 기술의 진화
과거의 웹 어플리케이션 오늘날의 웹 어플리케이션
1. 웹 기술의 진화
2. 모듈화 문제
‘모듈화’
2. 모듈화 문제
3. 크로스 브라우징
3. 크로스 브라우징
4. Npm과의 연결
Node Package Manager
4. Npm과의 연결
유사 소프트웨어와의 비교
Gulp와 Grunt
Gulp와 Grunt
Task Runner
concat, lint, minify, testing
Gulp와 Grunt
Webpack = (gulp || grunt) + browserify
웹팩이란 무엇인가?
“
웹팩은 다양해진 웹 기술을 하나로 묶어주고
여러 환경에서의 크로스 브라우징을 가능케 해주며
성능을 개선해주는 모듈 번들러(Module Bundler)이다.
“
웹팩의 동작방식
1. 웹팩의 기본 개념
Entry, Output, Loader, Plugin
1-1. Entry
Entry : 모듈 번들링의 시작점
Import
=> Dependency Graph
1-2. Output
Output : 번들링된 파일의 저장 위치
=> dist
1-3. Loader
Loader : 모듈에 대해 행동을 취해주는 블랙박스.
?모듈
(JS, PNG, CSS…)
=>
Dependency
Graph
=>
Ex) babel-loader
1-4. Plugin
Plugin : 번들링된 파일에 대해 행동을 취해주는 블랙박스.
?Bundle File => dist=>
Ex) 코드 난독화
2. 결과물
index.html index.js
모든 모듈을 하나의 파일에 압축하여
모듈 로딩과정이 생략되었으므로, 성능상의 이점 존재.
출처
웹팩 가이드 - http://jinui.kr/221333865963

More Related Content

What's hot (14)

Basic of web ref.웹을지탱하는기술_01
Basic of web ref.웹을지탱하는기술_01Basic of web ref.웹을지탱하는기술_01
Basic of web ref.웹을지탱하는기술_01
SangHun Lee
Weblockly 소개자료
Weblockly 소개자료Weblockly 소개자료
Weblockly 소개자료
Kay Sung Hyuk
프론트엔드 개발자를 위한 Layer Model
프론트엔드 개발자를 위한 Layer Model프론트엔드 개발자를 위한 Layer Model
프론트엔드 개발자를 위한 Layer Model
Han Lee
Summernote 이야기 - 홍영택님(@hackerwins)
Summernote 이야기 - 홍영택님(@hackerwins)Summernote 이야기 - 홍영택님(@hackerwins)
Summernote 이야기 - 홍영택님(@hackerwins)
이상모임
Vue
VueVue
Vue
Wonjun Hwang
VAADIN으로 스크립트 없는 자바 웹 애플리케이션 만들기
VAADIN으로 스크립트 없는 자바 웹 애플리케이션 만들기 VAADIN으로 스크립트 없는 자바 웹 애플리케이션 만들기
VAADIN으로 스크립트 없는 자바 웹 애플리케이션 만들기
Jae-il Lee
프론트엔드 개발 첫걸음
프론트엔드 개발 첫걸음프론트엔드 개발 첫걸음
프론트엔드 개발 첫걸음
DataUs
2017년 javascript의 현재주소
2017년 javascript의 현재주소2017년 javascript의 현재주소
2017년 javascript의 현재주소
윤학 권
클라우드 IDE, 구름 프로젝트 | Devon 2012
클라우드 IDE, 구름 프로젝트 | Devon 2012클라우드 IDE, 구름 프로젝트 | Devon 2012
클라우드 IDE, 구름 프로젝트 | Devon 2012
Daum DNA
[MeetUp][3rd] Prometheus 와 함께하는 모니터링 및 시각화
[MeetUp][3rd] Prometheus 와 함께하는 모니터링 및 시각화[MeetUp][3rd] Prometheus 와 함께하는 모니터링 및 시각화
[MeetUp][3rd] Prometheus 와 함께하는 모니터링 및 시각화
InfraEngineer
SoundHub 프로젝트 발표 자료
SoundHub 프로젝트 발표 자료SoundHub 프로젝트 발표 자료
SoundHub 프로젝트 발표 자료
HeeJuMun
Node.js 살펴보기
Node.js 살펴보기Node.js 살펴보기
Node.js 살펴보기
명신 김
Vue.js와 Firebase활용기
Vue.js와 Firebase활용기Vue.js와 Firebase활용기
Vue.js와 Firebase활용기
Aria (In Suk) Kim
Basic of web ref.웹을지탱하는기술_01
Basic of web ref.웹을지탱하는기술_01Basic of web ref.웹을지탱하는기술_01
Basic of web ref.웹을지탱하는기술_01
SangHun Lee
프론트엔드 개발자를 위한 Layer Model
프론트엔드 개발자를 위한 Layer Model프론트엔드 개발자를 위한 Layer Model
프론트엔드 개발자를 위한 Layer Model
Han Lee
Summernote 이야기 - 홍영택님(@hackerwins)
Summernote 이야기 - 홍영택님(@hackerwins)Summernote 이야기 - 홍영택님(@hackerwins)
Summernote 이야기 - 홍영택님(@hackerwins)
이상모임
VAADIN으로 스크립트 없는 자바 웹 애플리케이션 만들기
VAADIN으로 스크립트 없는 자바 웹 애플리케이션 만들기 VAADIN으로 스크립트 없는 자바 웹 애플리케이션 만들기
VAADIN으로 스크립트 없는 자바 웹 애플리케이션 만들기
Jae-il Lee
프론트엔드 개발 첫걸음
프론트엔드 개발 첫걸음프론트엔드 개발 첫걸음
프론트엔드 개발 첫걸음
DataUs
2017년 javascript의 현재주소
2017년 javascript의 현재주소2017년 javascript의 현재주소
2017년 javascript의 현재주소
윤학 권
클라우드 IDE, 구름 프로젝트 | Devon 2012
클라우드 IDE, 구름 프로젝트 | Devon 2012클라우드 IDE, 구름 프로젝트 | Devon 2012
클라우드 IDE, 구름 프로젝트 | Devon 2012
Daum DNA
[MeetUp][3rd] Prometheus 와 함께하는 모니터링 및 시각화
[MeetUp][3rd] Prometheus 와 함께하는 모니터링 및 시각화[MeetUp][3rd] Prometheus 와 함께하는 모니터링 및 시각화
[MeetUp][3rd] Prometheus 와 함께하는 모니터링 및 시각화
InfraEngineer
SoundHub 프로젝트 발표 자료
SoundHub 프로젝트 발표 자료SoundHub 프로젝트 발표 자료
SoundHub 프로젝트 발표 자료
HeeJuMun
Node.js 살펴보기
Node.js 살펴보기Node.js 살펴보기
Node.js 살펴보기
명신 김

Similar to 웹팩 발표자료 (20)

[21]변화의 시대 : 안드로이드 앱 어떻게 개발할 것인가?
[21]변화의 시대 : 안드로이드 앱 어떻게 개발할 것인가?[21]변화의 시대 : 안드로이드 앱 어떻게 개발할 것인가?
[21]변화의 시대 : 안드로이드 앱 어떻게 개발할 것인가?
NAVER Engineering
Single-page Application
Single-page ApplicationSingle-page Application
Single-page Application
Sangmin Yoon
20년된 Naver Cafe 서비스가 Modularization으로 진화 하기_정동진.pdf
20년된 Naver Cafe 서비스가 Modularization으로 진화 하기_정동진.pdf20년된 Naver Cafe 서비스가 Modularization으로 진화 하기_정동진.pdf
20년된 Naver Cafe 서비스가 Modularization으로 진화 하기_정동진.pdf
eastarJeong2
원모먼트 Vue js 적용기
원모먼트 Vue js 적용기원모먼트 Vue js 적용기
원모먼트 Vue js 적용기
우현 김
WeAreDevelopers_micro_frontend_framework.pdf
WeAreDevelopers_micro_frontend_framework.pdfWeAreDevelopers_micro_frontend_framework.pdf
WeAreDevelopers_micro_frontend_framework.pdf
janeSim13
Gradle 소개
Gradle 소개Gradle 소개
Gradle 소개
Sungjun Gwon
드래그홈2010홈페이지젵ӕ서
드래그홈2010홈페이지젵ӕ서드래그홈2010홈페이지젵ӕ서
드래그홈2010홈페이지젵ӕ서
draghome
Introduction to node.js, npm and grunt
Introduction to node.js, npm and gruntIntroduction to node.js, npm and grunt
Introduction to node.js, npm and grunt
Jaecheol Lee
Private PaaS with Docker, spring cloud and mesos
Private PaaS with Docker, spring cloud and mesos Private PaaS with Docker, spring cloud and mesos
Private PaaS with Docker, spring cloud and mesos
uEngine Solutions
Sonatype nexus 로 docker registry 관리하기
Sonatype nexus 로 docker registry 관리하기Sonatype nexus 로 docker registry 관리하기
Sonatype nexus 로 docker registry 관리하기
KwangSeob Jeong
제2회 난공불락 오픈소스 인프라 세미나 Kubernetes
제2회 난공불락 오픈소스 인프라 세미나 Kubernetes제2회 난공불락 오픈소스 인프라 세미나 Kubernetes
제2회 난공불락 오픈소스 인프라 세미나 Kubernetes
Tommy Lee
Nutch Homepage Search Engine
Nutch Homepage Search EngineNutch Homepage Search Engine
Nutch Homepage Search Engine
Kay Kim
20240325 TuistNight 모듈로 나누면 알아두면 좋을 3가지 팁
20240325 TuistNight 모듈로 나누면 알아두면 좋을 3가지 팁20240325 TuistNight 모듈로 나누면 알아두면 좋을 3가지 팁
20240325 TuistNight 모듈로 나누면 알아두면 좋을 3가지 팁
정민 안
AWS 기반 마이크로 프론트엔드 아키텍처 구축하기
AWS 기반 마이크로 프론트엔드 아키텍처 구축하기AWS 기반 마이크로 프론트엔드 아키텍처 구축하기
AWS 기반 마이크로 프론트엔드 아키텍처 구축하기
Eunsu Kim
LucideWorks Banana 소개
LucideWorks Banana 소개 LucideWorks Banana 소개
LucideWorks Banana 소개
SuHyun Jeon
Open infradays 2019_msa_k8s
Open infradays 2019_msa_k8sOpen infradays 2019_msa_k8s
Open infradays 2019_msa_k8s
Hyoungjun Kim
Toward kubernetes native data center
Toward kubernetes native data centerToward kubernetes native data center
Toward kubernetes native data center
어형 이
1. Docker Network (1)
1. Docker Network (1)1. Docker Network (1)
1. Docker Network (1)
DEVELOPER.NET
황규영 포트폴리오
황규영 포트폴리오황규영 포트폴리오
황규영 포트폴리오
Q_0
MSA를 이용해 구현하는 고가용/고확장성 서비스
MSA를 이용해 구현하는 고가용/고확장성 서비스MSA를 이용해 구현하는 고가용/고확장성 서비스
MSA를 이용해 구현하는 고가용/고확장성 서비스
DoHyun Jung
[21]변화의 시대 : 안드로이드 앱 어떻게 개발할 것인가?
[21]변화의 시대 : 안드로이드 앱 어떻게 개발할 것인가?[21]변화의 시대 : 안드로이드 앱 어떻게 개발할 것인가?
[21]변화의 시대 : 안드로이드 앱 어떻게 개발할 것인가?
NAVER Engineering
20년된 Naver Cafe 서비스가 Modularization으로 진화 하기_정동진.pdf
20년된 Naver Cafe 서비스가 Modularization으로 진화 하기_정동진.pdf20년된 Naver Cafe 서비스가 Modularization으로 진화 하기_정동진.pdf
20년된 Naver Cafe 서비스가 Modularization으로 진화 하기_정동진.pdf
eastarJeong2
원모먼트 Vue js 적용기
원모먼트 Vue js 적용기원모먼트 Vue js 적용기
원모먼트 Vue js 적용기
우현 김
WeAreDevelopers_micro_frontend_framework.pdf
WeAreDevelopers_micro_frontend_framework.pdfWeAreDevelopers_micro_frontend_framework.pdf
WeAreDevelopers_micro_frontend_framework.pdf
janeSim13
드래그홈2010홈페이지젵ӕ서
드래그홈2010홈페이지젵ӕ서드래그홈2010홈페이지젵ӕ서
드래그홈2010홈페이지젵ӕ서
draghome
Introduction to node.js, npm and grunt
Introduction to node.js, npm and gruntIntroduction to node.js, npm and grunt
Introduction to node.js, npm and grunt
Jaecheol Lee
Private PaaS with Docker, spring cloud and mesos
Private PaaS with Docker, spring cloud and mesos Private PaaS with Docker, spring cloud and mesos
Private PaaS with Docker, spring cloud and mesos
uEngine Solutions
Sonatype nexus 로 docker registry 관리하기
Sonatype nexus 로 docker registry 관리하기Sonatype nexus 로 docker registry 관리하기
Sonatype nexus 로 docker registry 관리하기
KwangSeob Jeong
제2회 난공불락 오픈소스 인프라 세미나 Kubernetes
제2회 난공불락 오픈소스 인프라 세미나 Kubernetes제2회 난공불락 오픈소스 인프라 세미나 Kubernetes
제2회 난공불락 오픈소스 인프라 세미나 Kubernetes
Tommy Lee
Nutch Homepage Search Engine
Nutch Homepage Search EngineNutch Homepage Search Engine
Nutch Homepage Search Engine
Kay Kim
20240325 TuistNight 모듈로 나누면 알아두면 좋을 3가지 팁
20240325 TuistNight 모듈로 나누면 알아두면 좋을 3가지 팁20240325 TuistNight 모듈로 나누면 알아두면 좋을 3가지 팁
20240325 TuistNight 모듈로 나누면 알아두면 좋을 3가지 팁
정민 안
AWS 기반 마이크로 프론트엔드 아키텍처 구축하기
AWS 기반 마이크로 프론트엔드 아키텍처 구축하기AWS 기반 마이크로 프론트엔드 아키텍처 구축하기
AWS 기반 마이크로 프론트엔드 아키텍처 구축하기
Eunsu Kim
LucideWorks Banana 소개
LucideWorks Banana 소개 LucideWorks Banana 소개
LucideWorks Banana 소개
SuHyun Jeon
Open infradays 2019_msa_k8s
Open infradays 2019_msa_k8sOpen infradays 2019_msa_k8s
Open infradays 2019_msa_k8s
Hyoungjun Kim
Toward kubernetes native data center
Toward kubernetes native data centerToward kubernetes native data center
Toward kubernetes native data center
어형 이
황규영 포트폴리오
황규영 포트폴리오황규영 포트폴리오
황규영 포트폴리오
Q_0
MSA를 이용해 구현하는 고가용/고확장성 서비스
MSA를 이용해 구현하는 고가용/고확장성 서비스MSA를 이용해 구현하는 고가용/고확장성 서비스
MSA를 이용해 구현하는 고가용/고확장성 서비스
DoHyun Jung

웹팩 발표자료