실습 준비
Node.js 설치 확인부터 ZIP을 풀고 첫 명령을 실행하는 방법까지.
준비물은 컴퓨터, 코드 편집기, 터미널, 브라우저입니다. 친구와 통신할 때는 수업에서 안내한 같은 네트워크에 연결합니다.
1. Node.js 확인
이 자료는 Node.js 24 계열과 npm을 기준으로 사용합니다. 이미 설치되어 있는지 터미널에서 확인하세요.
node --version
npm --versionNode.js가 없다면 공식 다운로드에서 운영체제에 맞는 Node.js 24 설치 방법을 고릅니다. 설치를 마친 뒤 편집기와 터미널을 새로 열어 다시 확인합니다. 수업에서는 다른 패키지 관리 도구를 추가할 필요가 없습니다.
명령을 찾을 수 없거나 버전이 다르면 표시된 메시지를 강사에게 보여 주세요. 설치 문제를 푸느라 미션 시간을 모두 쓰지 않아도 됩니다.
2. 단원 ZIP 내려받기
단원 페이지의 ZIP 링크를 누르고 압축을 완전히 풉니다. ZIP 안에서 파일 하나만 꺼내 실행하지 않습니다. 서로 연결된 소스와 설정이 필요합니다.
압축을 푼 폴더 안의 README.md를 열고, package.json이 있는 실습 폴더를 편집기에서 엽니다. 같은 폴더에서 새 터미널을 엽니다. 단원마다 독립된 프로젝트이므로 단원을 바꾸면 터미널 위치도 바꿉니다.
내려받은 ZIP에는 설치된 node_modules가 없습니다. 다음 표에 따라 설치가 필요한 단원만 설치합니다.
| 단원 | 설치 | 첫 실행 |
|---|---|---|
| 첫 성공 | 설치 없이 시작 | npm start |
| JavaScript와 Node | npm ci --ignore-scripts | npm run doctor → npm run hello |
| 통신과 웹 | 설치 없이 시작 | npm run doctor → npm run echo:server |
| HTTPS와 보안 | Node 외부 패키지 없음, 인증서는 강사와 준비 | HTTPS 실습 준비 확인 |
| 화면과 서버 | npm ci | npm run dev |
처음 의존성을 설치할 때는 인터넷이 필요합니다. JavaScript와 Node의 간단한 실행 예제는 설치 전에도 가능하지만, 패키지와 TypeScript 미션 전에는 설치를 완료하세요. 화면과 서버의 기본 연습 모드는 API 키가 필요하지 않습니다.
3. 터미널과 브라우저 구별하기
npm start 같은 명령은 터미널에 입력합니다. http://127.0.0.1:8080/ 같은 주소는 브라우저 주소창에 입력합니다.
서버가 시작되면 터미널이 계속 실행 중인 상태로 남습니다. 그 터미널을 유지한 채 브라우저를 열거나, 별도 터미널에서 클라이언트를 실행합니다. 종료할 때는 서버 터미널에서 Ctrl+C를 누릅니다.
첫 성공·통신의 첫 예제는 영문·숫자·기본 기호(ASCII)로 시작합니다. 한글은 통신 단원의 별도 문자와 바이트 실험에서 다룹니다. 코드를 수정한 뒤에는 서버를 다시 실행해야 합니다. 화면과 서버의 개발 모드는 저장한 변경을 자동으로 반영합니다.
03은 에코·소켓 채팅 다음 HTTP, 가짜 로그인 관찰로 이어집니다. 에코·채팅은 4000번, 기본 HTTP는 8080번, 가짜 로그인 HTTP는 8083번, 04의 HTTPS는 8443번을 사용합니다. 주소와 실행 중인 서버를 함께 확인하세요. Node 클라이언트로 먼저 성공한 뒤 설치되어 있는 nc·telnet을 비교하므로 다른 도구 설치가 필수는 아닙니다. Wireshark 캡처와 인증서 준비는 강사와 함께합니다.
막혔을 때
| 보이는 현상 | 먼저 볼 것 |
|---|---|
package.json을 찾을 수 없음 | 터미널이 압축을 푼 실습 폴더에 있는가? |
Missing script | npm run으로 실제 등록된 명령을 확인했는가? |
패키지나 tsc를 찾을 수 없음 | 해당 단원에서 설치 명령을 마쳤는가? |
EADDRINUSE | 같은 포트를 쓰는 이전 서버가 실행 중인가? |
| 페이지가 열리지 않음 | 서버 터미널, 주소, 포트가 맞는가? |
| 친구만 접속할 수 없음 | 친구에게 내 Wi-Fi 주소를 전달했는가? |
127.0.0.1과 localhost는 지금 사용하는 컴퓨터 자신을 가리킵니다. 친구에게 보여 줄 주소는 서버 컴퓨터에서 npm run doctor로 확인합니다. 0.0.0.0은 친구에게 전달할 접속 주소가 아닙니다.
Node 단원의 lab:types, lab:runtime, 복구 실습과 통신 단원의 서버 종료·연결 실패 관찰은 실패를 관찰하도록 만든 과제입니다. 그 안내를 확인한 뒤 실행하세요.
준비가 되었다면 내 문장을 친구 컴퓨터에 띄우기로 이동합니다.