작성
·
1.3K
답변 1
2
안녕하세요.
nodejs는 파이썬처럼 리눅스/맥/윈도우에서 구동할 수 있는 자바스크립트 런타임입니다.
파이썬처럼 nodejs도 다양한 목적으로 사용할 수 있습니다. 웹서버로서 동작하는 것은 할 수 있는 정말 수많은 일 중에 하나일 뿐입니다.
nodejs는 런타임일 뿐, 프레임워크가 아닙니다. express, nextjs, remix, nestjs 등이 프레임워크라 할 수 있겠습니다.
리액트 개발에서 원본 소스코드로서 jsx 문법을 사용하는데요. 이는 브라우저에서 바로 실행할 수 없습니다. 브라우저가 이해할 수 있는 코드로 변환을 해줘야합니다. 이 변환 작업을 nodejs를 통해 수행하는 데, 크게 2가지 변환시점이 있을 수 있습니다.
서비스 전에 리액트 소스파일을 nodejs로 빌드하여 서비스하는 방법을 본 강의에서 다루고 있습니다. 서비스 전에 빌드하기에 서비스 시에는 빌드된 html, css, js 파일만 필요할 뿐 nodejs가 필요없습니다. 그러니 nodejs는 빌드툴일뿐, 웹서버 역할은 안 하는 경우인 것입니다. => 이러한 서비스 방법을 CSR (Client side rendering)이라고 합니다.
혹은 리액트 렌더링를 서버 단에서 수행하기도 합니다. 이때 서비스 시에 nodejs가 필요하고, 프레임워크로 Next.js이나 리믹스를 사용합니다. => 이러한 서비스 방식을 SSR (Server side rendering) 이라고 합니다.
백엔드라 하면 서비스 시에 동작하는 API 서버일텐데요. 백엔드는 장고 하나입니다.
화이팅입니다. :-)