기타

REPL이란? REPL 개념 정리

DevStory 2022. 7. 5.

REPL이란?

REPL은 Read-Eval-Print-Loop의 약자로 애플리케이션 실행 상태에서 사용자가 입력한 명령어(소스코드)를 읽고(Read) 명령어를 평가(Eval)하고 결과를 출력(Print)한 다음 다시 입력을 기다리는 상태로 돌아가는 과정을 반복(Loop)합니다.


REPL의 필요성

REPL은 주로 개발자들이 소스 코드 실행 결과를 빨리 확인해야 하는 경우 사용합니다. 특정 개발자들은 더 나은 단위 테스트를 작성하기 위해 REPL을 사용하기도 합니다.

테스트뿐만 아니라 프로그래밍 언어를 입문하는 경우에도 유용합니다. C#을 배우기 위해 컴퓨터에 VisualStudio를 설치하거나 Java를 배우기 위해 Eclipse 또는 Intelij를 설치하는 과정은 입문자에게는 어려울 수 있으며, 설치 후 환경설정, 프로젝트를 관리하는 것도 굉장히 번거롭습니다.

이러한 경우 Repl.it 또는 jsfiddle.net 등 온라인 컴파일러 사이트에서 소스 코드를 작성하고 실행 결과를 바로 확인할 수 있습니다.

 

자바 온라인 컴파일러 사이트 추천

Java를 사용하여 프로그램 또는 웹 사이트를 개발하는 경우에는 개발 환경을 셋팅해야 합니다. 하지만, 학습 또는 과제를 목적으로 간단한 코드를 작성하기 위해서 Java를 설치하고 이클립스와 같

developer-talk.tistory.com

 

C# 온라인 컴파일러 .NET Fiddle

안녕하세요. 개발이야기입니다. 이번 포스팅에서는 온라인에서 C# 코드를 작성하고 테스트 가능한 사이트 .NET Fiddle를 소개합니다. 온라인 컴파일러의 장점으로는 Visual Studio가 없어도 온라인에

developer-talk.tistory.com

그리고 FrontEnd 개발자라면 Chrome 개발자 도구를 많이 사용해봤을텐데, Chrome 개발자 도구의 콘솔 탭도 REPL 개발 도구 중 하나입니다.


REPL

REPL은 Read - Eval - Print를 Loop하는 프로그램입니다. Chrome 개발자 도구를 예시로 설명합니다.

 

Read

Read는 실행 중인 애플리케이션에서 명령어 입력을 허용한다는 의미입니다.

 

Eval

Eval은 사용자가 입력한 명령문을 평가한다는 의미입니다. Chrome 개발자 도구의 콘솔 탭은 입력한 명령문을 JavaScript에서 실행할 수 있는 명령어인지 평가합니다.

즉, console.log(10 + 20);이라는 코드가 JavaScript에서 실행할 수 있는 코드라면 정상적인 값이 출력될 것이고 그렇지 않으면 에러가 발생할 것입니다.

 

Print

Print는 Eval 단계에서 사용자가 입력한 명령문을 해석하고 실행 결과를 출력합니다.

console.log(10 + 20);이라는 코드는 JavaScript에서 실행할 수 있는 코드이며, 30이라는 결과가 출력되었습니다. 결과가 출력되면 다시 사용자 명령문을 입력받을 수 있는 단계로 돌아갑니다.


REPL 개발 도구

  • 브라우저 개발 도구(예시: Chrome 개발 도구)
  • 터미널/쉘
  • 온라인 컴파일러(예시: Repl.it, jsfiddle.net, jsbin.com)
  • 온라인 정규식 유효성 검사기

위 리스트 중 하나라도 사용해봤다면 REPL을 사용해봤다고 할 수 있습니다.


정리

  • REPL은 Read - Eval - Print 과정을 반복(Loop)하는 애플리케이션입니다.
  • REPL은 코드 실행 결과를 빠르게 확인하고 싶은 경우 유용합니다.
반응형

댓글