Node.js は、開発者が Web ブラウザーの外部で JavaScript コードを実行できるようにする JavaScript ランタイム環境です。 Chrome の V8 JavaScript エンジン上に構築されており、イベント駆動型のノンブロッキング I/O モデルを使用しているため、軽量かつ効率的であり、Web サーバー、API、およびリアルタイム アプリケーション。
Node.js の重要な側面は次のとおりです:
非同期: 操作の完了を待たずに複数のリクエストを同時に処理します。
シングルスレッド: シングルスレッドで実行されますが、イベント ループを使用して多くのタスクを効率的に管理します。
クロスプラットフォーム: Windows、macOS、Linux に展開できます。
NPM (ノード パッケージ マネージャー): 開発を合理化するために利用できるライブラリとツールの広大なエコシステム。
Node.js を使用すると、開発者はサーバー側で JavaScript を使用して、スケーラブルで高性能なアプリケーションを構築できます。
Node.js の上位 5 つの機能とそれぞれのサンプル例を次に示します:
1.非同期およびノンブロッキング I/O
Node.js では関数の非同期実行が可能です。つまり、サーバーは操作の終了を待たずに複数のリクエストを同時に処理できます。
例:
const fs = require('fs'); // Asynchronous file reading fs.readFile('example.txt', 'utf8', (err, data) => { if (err) { console.error("Error reading file:", err); return; } console.log("File content:", data); }); console.log("This prints before the file content is read!");
説明: ファイルは非ブロッキング方式で読み取られるため、ファイル操作が完了するまで待機している間に他のコードを実行できます。
2.イベントループを使用したシングルスレッド
Node.js はシングルスレッドであるにもかかわらず、イベント ループを使用して複数の同時リクエストを効率的に処理します。
例:
const http = require('http'); const server = http.createServer((req, res) => { res.writeHead(200, { 'Content-Type': 'text/plain' }); res.end('Hello World!\n'); }); server.listen(3000, () => { console.log('Server running at http://127.0.0.1:3000/'); });
説明: イベント ループを使用すると、サーバーはリクエストごとに新しいスレッドを作成せずに、複数の受信リクエストを処理できます。
3. V8 エンジンによる高速実行
Node.js は、速度とパフォーマンスで知られる Google の V8 JavaScript エンジンに基づいて構築されています。
例:
console.time('Execution Time'); let sum = 0; for (let i = 0; i説明: このコードは数値の合計を計算し、console.time を使用して、V8 エンジンの最適化のおかげで実行速度がいかに速いかを示します。
4. NPM (ノード パッケージ マネージャー)
Node.js にはパッケージ マネージャーである NPM が組み込まれており、これにより何千ものオープンソース ライブラリやツールにアクセスできます。
例:
npm install express const express = require('express'); const app = express(); app.get('/', (req, res) => { res.send('Hello World!'); }); app.listen(3000, () => { console.log('Express server listening on port 3000'); });説明: この例では、NPM を通じて利用できる一般的な Web フレームワークである Express フレームワークをインストールして使用し、単純な Web サーバーを作成します。
5.クロスプラットフォーム互換性
Node.js アプリケーションは、Windows、macOS、Linux などのさまざまなプラットフォームにデプロイできます。
例:
const os = require('os'); console.log('Platform:', os.platform()); console.log('Architecture:', os.arch());説明: このスクリプトは、os モジュールを使用して現在のプラットフォームとシステム アーキテクチャをチェックして出力し、異なる環境間で動作する Node.js の機能を示します。
これらの機能により、Node.js は高性能でスケーラブルなアプリケーションを構築するための汎用性が高くなります。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3