개발 기본
REPL(Read-Eval-Print Loop)
REPL은 코드 조각을 입력하면 실행 결과를 바로 보여 주고 다음 입력을 기다리는 환경입니다.
쉬운 설명
AI가 알려 준 문자열 처리 코드가 맞는지 짧게 시험하고 싶을 수 있어요. REPL에서는 파일을 만들어 앱 전체를 실행하지 않고 코드를 입력해 결과를 확인할 수 있어요. Read-Eval-Print Loop, 즉 입력을 읽고 실행해 결과를 보여 주는 과정을 반복한다는 뜻이에요. 여기서는 Node.js에서 JavaScript를 시험하는 예를 들어요.
이런 상황에서 만나요
입력한 이메일 앞뒤의 공백을 제거하고 싶어 AI가 trim()을 제안했다고 해 볼게요. Node.js REPL에서 예시 문자열로 동작을 확인할 수 있어요.
입력한 코드의 결과를 바로 확인해요
$ node
> ' learner@example.com '.trim() 'learner@example.com'
프로젝트의 입력 처리 코드에 반영하고 다시 확인
- 1Node.js가 설치된 환경에서 실행하는 예시예요.
- 2문자열 앞뒤의 공백을 제거한 결과예요. >는 입력 표시예요.
- 3REPL 실험과 파일 수정은 별개의 작업이에요.
예시가 예상대로 동작해도 앱 코드가 자동으로 바뀌지는 않아요. 확인한 코드를 프로젝트에 반영하고 실제 입력에서도 시험해야 해요. Node.js REPL에서 나올 때는 .exit를 입력할 수 있어요.
헷갈리기 쉬운 점
npm 명령도 REPL 안에서 실행하나요?
Node.js REPL은 JavaScript 코드를 읽는 곳이에요. npm install 같은 셸 명령을 붙여 넣으면 코드로 해석하다 오류가 날 수 있어요. 지금 JavaScript 입력 환경인지 일반 터미널의 셸인지 먼저 확인해요.
REPL에서는 이전에 만든 변수나 상태가 뒤의 실험에 영향을 줄 수 있어요. 동작을 비교할 때는 어떤 값을 넣었는지 함께 남기세요. 인터넷에서 받은 코드도 실제 실행되므로 내용을 확인해요.
왜 알아야 할까요?
앱 전체의 문제와 작은 코드 조각의 동작을 나눠 확인할 수 있어요. 예상한 입력과 실제 결과를 비교하면 AI에게 수정할 조건을 구체적으로 알려 줄 수 있어요.
조금 더 자세히
REPL은 입력을 읽고 평가한 뒤 결과를 출력하고 다시 입력을 받는 방식입니다. Node.js 외에도 여러 언어와 도구에서 제공합니다. 입력 표시나 종료 방법은 환경마다 다릅니다.
실험한 코드와 결과를 확인한 뒤 필요한 코드를 파일에 저장합니다. REPL에서 변수를 만들었다고 프로젝트의 소스 파일에 자동으로 저장되지는 않습니다.
직접 사용할 때 확인해 보세요
- 어떤 언어의 REPL인지 확인한다
- 입력한 값과 실제 결과를 비교한다
- 검증한 코드를 파일에 반영하고 다시 시험한다