Node.js - REPL 터미널: 당신의 인터랙티브 놀이터

안녕하세요, 프로그래밍에 도전하는 분들! 오늘은 Node.js의 흥미로운 기능인 REPL 터미널을 탐험해보겠습니다. 프로그래밍 초보자라도 걱정 마세요; 저는 이 여정을 단계별로 안내해드릴 것입니다. 수년간 수많은 학생들을 가르쳐온 경험을 바탕으로 말이죠. 그럼 커피(또는 차, 당신의 취향에 따라)를 한 잔 마시면서, 이제 시작해보겠습니다!

Node.js - REPL Terminal

REPL이란?

REPL은 Read-Eval-Print Loop의 약자입니다. 컴퓨터와 대화를 나누는 것과 같습니다. 무언가를 입력하면(Read), 컴퓨터는 그것을 생각해보고(Eval), 결과를 알려주고(Print), 다음 말을 기다립니다(Loop). Node.js를 배우고 실험하는 데 매우 좋은 방법입니다!

REPL 시작 방법

REPL을 시작하려면 터미널을 엽니다 그런 다음 다음과 같이 타이پ합니다:

node

다음과 같은 프롬프트가 보일 것입니다:

>

이제 마법이 일어나는 곳입니다! 간단한 예제를 시도해보겠습니다:

> console.log("Hello, World!")
Hello, World!
undefined

이 예제에서 우리는 컴퓨터에게 "Hello, World!"를 인쇄하도록 지시했습니다. 그리고 console.log는 값을 반환하지 않므로 undefined가 반환되었습니다.

다중 라인 표현식

이제 좀 더 복잡해져봅시다. REPL은 여러 줄에 걸쳐 코드를 작성할 수 있게 해줍니다. 함수 정의나 더 복잡한 로직을 작성할 때 특히 유용합니다.

예제: 다중 라인 함수

사람들에게 인사하는 함수를 만들어보겠습니다:

> function greet(name) {
... return `Hello, ${name}! Welcome to Node.js REPL.`;
... }
undefined
> greet("Alice")
'Hello, Alice! Welcome to Node.js REPL.'

이 예제에서 우리는 이름을 입력받아 인사를 반환하는 함수를 정의했습니다. REPL이 ...를 사용하여 우리가 여전히 함수를 작성하고 있음을 나타냅니다. 작성이 끝나면 greet("Alice")를 호출할 수 있습니다.

언더스코어 변수

REPL에는 재미있는 기능 하나가 더 있습니다: 언더스코어 변수(_)입니다. 이 특별한 변수는 마지막 표현식의 결과를 저장합니다.

예제: 언더스코어 변수 사용

> 5 + 3
8
> _
8
> _ * 2
16

이 예제에서 우리는 먼저 5 + 3을 계산하여 8을 얻었습니다. 그런 다음 _를 사용하여 이 결과를 참조하고 2배를 했습니다.

마치 마지막 답을 기억하는 미니 계산기와 같습니다!

닷 명령어

REPL은 닷(.)으로 시작되는 특별한 명령어도 제공합니다. 이 명령어는 REPL 환경을 탐색하고 제어하는 데 도움이 됩니다.

다음은 몇 가지 유용한 닷 명령어입니다:

명령어 설명
.help 모든 사용 가능한 명령어 목록을 표시합니다
.break 다중 라인 표현식에서 나갑니다
.clear REPL 컨텍스트를 지웁니다
.exit REPL을 종료합니다
.save 현재 REPL 세션을 파일로 저장합니다
.load 파일을 현재 REPL 세션으로 불러옵니다

예제: 닷 명령어 사용

이제 몇 가지를 시도해보겠습니다:

> .help
// 이 명령어는 모든 사용 가능한 명령어를 표시합니다

> for(let i = 0; i < 3; i++) {
... console.log(i);
... // 아, 우리는 생각을 바꿨어요!
... .break
>

> .save mySession.js
세션을 저장했습니다: mySession.js

> .exit

이 예제에서 우리는 먼저 .help를 사용하여 모든 사용 가능한 명령어를 보았습니다. 그런 다음 for 루프를 시작했지만, .break를 사용하여 나갔습니다. 마지막으로 세션을 파일로 저장하고 REPL을 종료했습니다.

실습: 간단한 계산기 만들기

이제 REPL을 배운 것을 활용하여 간단한 계산기를 만들어보겠습니다. 기본적인 산술 연산을 위한 함수를 정의하고 사용하겠습니다.

> function add(a, b) { return a + b; }
undefined
> function subtract(a, b) { return a - b; }
undefined
> function multiply(a, b) { return a * b; }
undefined
> function divide(a, b) { return b !== 0 ? a / b : "Cannot divide by zero"; }
undefined

> add(5, 3)
8
> subtract(10, 4)
6
> multiply(3, 7)
21
> divide(15, 3)
5
> divide(10, 0)
'Cannot divide by zero'

이 실습에서 우리는 덧셈, 뺄셈, 곱셈, 나눗셈을 위한 네 개의 함수를 정의했습니다. 그런 다음 이 함수들을 사용하여 계산을 수행했습니다. divide 함수에서는 0으로 나누는 것을 방지하기 위해 확인을 추가했습니다.

결론

축하합니다! 당신은 Node.js REPL의 세계로 첫 걸음을 뗐습니다. REPL과의 기본적인 상호작용, 다중 라인 표현식 작성, 언더스코어 변수 사용, 그리고 닷 명령어 활용을 다루었습니다. 심지어 간단한 계산기를 만들기도 했습니다!

REPL은 당신의 놀이터입니다. 실험하고 실수하고 그로부터 배우지 마세요. 모든 위대한 프로그래머들이 그렇게 시작했기 때문입니다.

저는 항상 학생들에게 말합니다, 프로그래밍은 새로운 언어를 배우는 것과 같습니다. 더 많이 연습할수록 더 유창해집니다. 그러니 계속 탐구하고, 코딩을 계속하고, 가장 중요한 것은 즐겁게 만들어보세요!

다음 수업에서는 Node.js를 더 깊이 탐구하고 더 복잡한 애플리케이션을 만들기 시작할 것입니다. 그때까지 행복하게 코딩하세요!

Credits: Image by storyset