node.js는 웹 페이지 밖, 로컬에서도 자바스크립트를 실행할 수 있는 실행기이다.
런타임이란, 프로그램이 실행되고 있는 환경을 의미한다.
Javascript 런타임 매니저에는 npm, yarn이 있다.
런타임 매니저는 node.js 업데이트, 삭제 등 node.js를 관리하는 관리 툴이다.
자바스크립트로 만든 기능들을 관리, 무료 공유하는 사이트이다.
사진 업로드, sns기능, 팔로우 기능 등 여러 기능들이 업로드 되어있다.
패키지 설치 시 의존하는 다른 패키지를 자동으로 실행하며, 중복설치가 가능하다.
기능을 다운로드 하려면 node.js와 npm 설치가 필요하다.
페이스북이 npm의 빠른 다운로드를 위해 npm을 개조하여 만든 것이다.
yarn이 npm보다 속도가 더 빠르기 때문에 실제로는 npm보다 yarn을 사용한다.
yarn.lock, package.json을 읽어 명시된 패키지만 설치한다.
npm과 달리 중복설치가 불가능하다.
cp : 폴더 복사
폴더 안에 있는 모든 내용을 같이 복사해주어야 한다.
cp -R 복사할 폴더 새로운폴더 이름
mv : 폴더 이동
mv 이동할 폴더 이동시킬 폴더
pwd : 현재 폴더 위치확인
cd : 현재 폴더 위치변경
../ : 상위 폴더로 이동
rm : 폴더 삭제
rm -rf 폴더이름
GUI : 그림으로 작동시키는 것. 컴퓨터에서 바탕화면이나 폴더로 보이는 부분 작동시키는 것을 의미한다.
CLI (Command line interface) : 터미널에서 명령어로 작동시키는 것
react 초기 셋팅이 완료된 폴더 구조를 보일러 플레이트라고 한다.
package.json은 제품 설명서와 같은 역할을 하며, 해당 프로젝트 폴더에만 존재한다.
npm, yarn은 package.json을 읽고 패키지를 설치한다.
패키지는 package.json이 존재하는 폴더에 설치된다. (node_modules)
폴더가 변경되거나 새로 git clone할때마다 패키지 install이 필요하다. (yarn install)
모든 페이지에 공통으로 적용될 설정파일이다.
react를 편리하게 사용하기 위한 react 기반 프레임워크이다.
라이브러리 : 기능 1개 (도구)
프레임워크 : 여러가지 기능들을 묶어놓은 것 (도구모음)
JSX는 React에서 사용하는 React 전용 Html이다.
📌 웹브라우저는 HTML, CSS, JAVASCRIPT 만 읽을 수 있다.
React에서 JSX를 사용하지만, 소스코드가 실행될 때는 JSX가 HTML로 자동으로 변환되어 실행된다.
css를 javascript 상수에 저장하여 태그로 사용하는 방법이다.
태그에 의미를 부여할 수 있어서 알아보기 쉽고, 코드 길이가 짧아지고, 코드 재사용성이 증가한다는 장점이 있다.
터미널에서 설치하려는 폴더로 이동한 후, yarn add @emotion/react 해준다.
emotion에서 styled를 import해준 후에 상수에 담은 css 변수를 export 해준다.
import styled from "@emotion/styled";
export const MyEmail = styled.span`
color: red;
`;
git은 소스코드 저장을 도와주는 분산 버전 관리 시스템이다.
git을 사용하여 프로그램을 저장하면, 누가 언제 어떤 글자 또는 코드를 변경했는지 알 수 있다.
또한, 중요한 코드를 실수로 잘못 바꾼 경우 되돌리기도 가능하다.
따라서, 실무에서는 Git을 통해 파일을 저장한다.
폴더, 파일 등을 저장해 두는 공간이며, 변경 이력이 전부 저장된다.
git log --all --oneline --graph
작업이 완료되면 원래의 소스코드와 merge 하여 하나로 만든다.
임시 저장 공간에 저장하는 것을 스테이징한다고 표현한다.
스테이징 상태에서는 취소가 가능하지만, commit을 한 후에는 취소가 불가능하다.
📌 node modules는 yarn install로 재설치가 가능하므로 commit할때 삭제해 주는 것이 좋다.
각 branch에서 작업한 코드들을 merge할 수 있다.
📌 git에서 merge할 경우 충돌이 발생하게 되는데, 현재 버전과 새로운 버전 중 선택을 할 수 있다.(선택받지 못한 버전도 저장된다.)
다른 사용자가 github에 올린 코드들을 복사해올 수 있다.
git clone (복사하려는 repository 주소)
📌 git clone후, 업데이트 된 부분을 받아오기 위해서는 git pull origin master를 해준다.
이때, 내 컴퓨터에서 clone후 변경한 부분이 있을 경우 pull이 되지 않는다.
이를 해결하기 위해서는,
git stash -> 임시저장
git stash list -> 임시저장 확인
git pull origin master
git stash pop stash@{번호} -> list에서 나온 번호로 임시저장 가져오기
순서로 진행해 준다.