일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 프로그래머스 완전탐색
- 코틀린
- codesandbox
- 코딩테스트 고득점 Kit 완전탐색
- react hook
- useEffect
- 프로그래머스
- 데이터모델링과마이닝
- JavaScript
- 장고
- 컴퓨터 네트워크
- 리액트 훅
- react firebase
- Java
- 프로그래머스 자바
- react
- 디자인 패턴
- websocket
- 자바 공부
- 자바스크립트
- 코딩테스트 고득점 Kit
- 리액트
- vanillaJS
- NextJS
- 프로그래밍 언어론
- React JS
- design pattern
- 백준
- useState
- 자바
- Today
- Total
기록하는 개발자
<React 파헤치기-01> npm이랑 webpack은 무엇일까? 본문
1. npm이란 무엇일까?
npm. react를 사용하면서 라이브러리를 설치하거나, 코드 작성 후 로컬에서 결과 확인을 위해 'npm run start'를 입력하며 이미 수백번 마주했던 단어이다. 이 npm은 어떤 역할을 수행하고 있었을까?
npm : Node Package Manager
npm의 동작 방식
npm은 http://www.npmjs.com에서 필요한 라이브러리를 내려받아 설치하고 삭제하는 등의 관리를 해주는 프로그램이다. npm은 실제로 node_modules 폴더에 라이브러리를 내려받아 저장하고 package.json 파일에 설치된 라이브러리의 정보를 저장한다.
라이브러리와 라이브러리의 명세 파일을 따로 관리하는 이유는 무엇일까?
node_modules에 저장되는 라이브러리의 용량은 매우 크다. 개발자 A가 개발자 B에게 프로젝트를 공유할 때, 용량이 큰 라이브러리까지 전달할 필요없이 라이브러리 명세인 package.json을 전달함으로써 개발자 B는 필요한 라이브러리를 손쉽게 설치할 수 있다.
추가로 yarn은 페이스북에서 npm의 단점을 ㅂ완하여 성능과 속도를 개선한 라이브러리 관리 도구로, npm과 비슷한 방식으로 동작한다.
2. webpack이란 무엇일까?
webpack은 프로젝트에 사용된 파일을 분석해 기존 웹 문서 파일로 변환해주는 도구이다.
webpack이 필요한 이유
프레임 워크가 .html, .js, .css 등과 같은 기존 웹 문서 파일을 사용하지 않기 때문이다. 예로 트위터의 부트스트랩 템플릿은 .css가 아닌 .sass파일을 통해 스타일을 작성한다. 웹 브라우저는 기존 웹 문서가 아닌 .sass 파일을 해석하지 못하기 때문에 중간에서 해석해 줄 역할이 필요하다. 이 역할을 하는 도구가 바로 webpack이다.
webpack은 js, png, jpg등의 파일을 적절한 크기로 자르거나 묶어주는 역할도 수행한다. 이러한 작업을 통해 불필요한 파일을 제외하거나 압축하여 프로젝트의 용량을 줄여준다.
'Web > React' 카테고리의 다른 글
<React 파헤치기-03> ES6주요문법 - 1.템플릿 문자열과 전개 연산자 (0) | 2021.12.10 |
---|---|
<React 파헤치기-02> Prettier를 적용해보자! (0) | 2021.12.09 |
[React, Firebase] TwitterCloneCoding 4.0 Edit Profile (0) | 2021.10.18 |
[React, Firebase] TwitterCloneCoding 3.0 File Upload, Delete file (0) | 2021.10.17 |
[React, Firebase] TwitterCloneCoding 2.1 Tweet 삭제, 수정 (4) | 2021.10.12 |