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について学んだことを活かして、シンプルな計算機を構築してみましょう。基本的な算術演算のための関数を定義し、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'

この演習では、加算、減算、乗算、除算のための4つの関数を定義しました。その後、これらの関数を使用して計算を行いました。divide関数では、0除算を防ぐためのチェックを追加しました。

結論

おめでとうございます!あなたは刚刚Node.js REPLの世界への第一歩を踏み出しました。REPLとの基本対話、複数行表現、下線変数の使用、ドットコマンドの利用、そしてシンプルな計算機の構築について学びました。

REPLはあなたの遊び場です。実験を恐れず、間違えを恐れず、学びましょう。それがすべての偉大なプログラマーが旅を始めた方法です。

私が生徒たちにいつも言うように、プログラミングは新しい言語を学ぶのと同じです。練習をすればするほど、よりスムーズになります。ですから、探索を続け、コードを書き続け、そして何より楽しみましょう!

次回のレッスンでは、Node.jsをさらに深く掘り下げ、より複雑なアプリケーションを構築することに挑戦します。それまでに、ハッピーコーディング!

Credits: Image by storyset