مشخصات مقاله
معرفی و آموزش کار با ماژول ها (Modules) در Node.js
ماژول (Module) در Node.js چیست؟
ماژولها در Node.js به معنای بخشهای کوچک و جداگانه از کد هستند که میتوانند ساده یا پیچیده باشند. درست شبیه کتابخانه ها (Libraries) در جاوا اسکریپت.هر ماژول یک یا چند تابع (Function) است که می توانید آن ها را در برنامه خود به کار بگیرید.
هر ماژول در Node.js به صورت مستقل عمل میکند و نمیتواند بر روی ماژولهای دیگر اثر بگذارد یا فضای سراسری (Global Scope) برنامه را تغییر دهد. این به این معنی است که هر ماژول دارای فضای خاص خود است و به راحتی میتواند در فایلها و پوشههای جداگانه سازماندهی شود. ماژولها میتوانند در فایلهای جاوا اسکریپت جداگانه قرار بگیرند و در سراسر برنامه شما استفاده شوند.
Node.js از استاندارد CommonJS برای ماژولها استفاده میکند که یک استاندارد عمومی برای استفاده از ماژولها در جاوا اسکریپت است.
ماژول های پیش ساخته (Built-in Moduels) در Node.js
Node.js دارای تعداد زیادی ماژولهای درونساخته (Built-in Modules) است. این ماژول ها درواقع، ماژولهای پیشفرضی هستند که به طور مستقیم در محیط Node.js وجود دارند و نیازی به نصب و تنظیم خاصی ندارند. این ماژولها مجموعهای از عملکردها و ویژگیهای مفید را ارائه میدهند که به شما کمک میکند تا بسیاری از وظایف متداول برنامهنویسی را به سادگی انجام دهید.
در بخش " آموزش مرجع ماژول پیش ساخته (Modules) در Node.js" از آموزش گام به گام Node.js به طور کامل به معرفی و کاربرد هر یک از این ماژول ها میپردازیم.
آموزش اضافه کردن یک ماژول به برنامه
برای اضافه کردن یک ماژول (module) به برنامه خود، بایستی از دستور تابع ()require به همراه نام ماژول به شکل زیر استفاده کنید :
var http = require('http');
اکنون برنامه شما به ماژول HTTP دسترسی داشته و می تواند یک سرور ایجاد نماید :
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/html'});
res.end('Hello World!');
}).listen(8080);
آموزش ایجاد ماژول سفارشی در Node.js
شما میتوانید به راحتی ماژولهای مورد نظر خود را در Node.js ایجاد کرده و از آنها در برنامههای خود استفاده کنید. به عنوان مثال، کد زیر یک ماژول ساده ایجاد میکند که تاریخ و زمان جاری را برمیگرداند.
مثال عملی: در کد ماژول زیر، تابعی به نام myDateTime ایجاد شده است که با فراخوانی آن، تاریخ و زمان جاری را برمیگرداند:
exports.myDateTime = function () {
return Date();
};
در این کد: از exports استفاده کردهایم تا تابع myDateTime در دسترس سایر فایلها قرار گیرد. این کد را در یک فایل با نام myfirstmodule.js ذخیره کنید.
با این روش، میتوانید ماژولهای سفارشی خود را ایجاد کرده و از آنها در پروژههای Node.js خود بهرهبرداری کنید.
آموزش به کارگیری ماژول ایجاد شده در پروژه
پس از این که ماژول مورد نظر خود را ایجاد کردید، می توانید با استفاده از دستور ()require و نام ماژول ، آن را در هر فایل Node.js دلخواه، به کار ببرید .
مثال عملی : در کد مثال زیر، نحوه استفاده از ماژول ایجاد شده “myfirstmodule” در فایل Node.js نشان داده شده است :
var http = require('http');
var dt = require('./myfirstmodule');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/html'});
res.write("The date and time are currently: " + dt.myDateTime());
res.end();
}).listen(8080);
دقت کنید که در کد فوق، از کاراکتر “/.” برای آدرس دهی ماژول استفاده شده است و این بدان معناست که ماژول ایجاد شده درون همان پوشه ای قرار دارد که فایل Node.js می باشد.
کد فوق را در یک فایل به نام “demo_module.js” ذخیره کرده و با دستور زیر، آن را بر روی سرور بارگذاری اولیه کنند :
C:\Users\Your Name>node demo_module.js
حال اگر مرورگر کامپیوتر خودتان را باز کرده و آدرس http://localhost:8080 را درخواست نمایید، تابع ماژول اجرا شده و خروجی مورد نظر را تولید خواهد کرد.