راهنمای Node.JS برای مبتدیان
ﺯﻣﺎﻥ ﻣﻄﺎﻟﻌﻪ: 5 دقیقه

راهنمای Node.JS برای مبتدیان

در این مقاله، قصد داریم شرح مختصری از نود جی اس را ارائه دهیم.

جدول محتوای Node.JS

  • نود جی اس دقیقا چیست؟
  • کاربرد نود جی اس
  • ویژگی‌های نود جی اس
  • مدیر پکیج نود (NPM)
  • ماژول‌های نود جی اس
  • ماژول اکسپورت در نود جی اس
  • فریمورک اکسپرس نود جی اس
  • پایگاه داده NoSQL

Node.JS دقیقا چیست؟

این یک فریمورک متن‌باز است که برای برنامه‌های سمت سرور در جاوااسکریپت استفاده می‌شود. در این قسمت می‌توانید مستقیما برنامه جاوااسکریپت خود را روی سرور اجرا کنید. نود جی اس مستقل از سیستم عامل است. همچنین با زبان برنامه نویسی سی پلاس پلاس نوشته شده است.

کاربرد Node.JS

  • برای تولید صفحات پویا مانند محتوا استفاده می‌شود.
  • مستقیما داده‌های موجود در سرور را دستکاری می‌کند.
  • برای جمع آوری داده‌های فرم استفاده می‌شود.

ویژگی‌های Node.JS

ویژگی‌های خاصی از نود جی اس وجود دارد و برخی از آن‌ها در زیر ذکر شده است:

  • این یک مجوز فریمورک MIT متن‌باز است که توسط انجمن گسترده‌ای تأمین می‌شود. فعالیت این گروه منجر به معرفی فناوری‌های جدید در برنامه‌های نود جی اس شده است.
  • ساده و سریع است زیرا نود جی اس مبتنی بر موتور JavaScript V8 گوگل است.
  • ویژگی بعدی Asynchronous است. همه کتابخانه‌های نود جی اس ناهمزمان هستند، به این معنی که سرورهای مبتنی بر نود جی اس هرگز منتظر نمی‌مانند API پاسخ را پس بفرستد و به API بعدی تغییر می‌کند.
  • نود جی اس می‌تواند با کمک حلقه رویداد، یک مدل تک رشته‌ای را اتخاذ کند.
  • مهمترین ویژگی آن این است که هرگز داده را بافر نمی‌کند.
  • به راحتی در سیستم عامل‌های مختلف مانند ویندوز، مک و لینوکس قابل نصب و استقرار است.

مدیر پکیج نود (NPM)

NPM کلیه بسته‌ها و ماژول‌های نود جی اس را اداره می‌کند و از خط فرمان npm کلاینت تشکیل شده است. این بر روی سیستم توسعه نود جی اس ساخته خواهد شد. پکیج‌ها و ماژول‌های مناسب برای پروژه نود با استفاده از NPM ساخته می‌شوند.

ماژول‌های Node.JS

ماژول نود جی اس یک عملکرد ساده یا پیچیده است که در فایل‌های تک یا چند جاوااسکریپت ساختار یافته است و می‌توان در اطراف برنامه نود جی اس دوباره استفاده کرد.

نود جی اس شامل سه نوع ماژول است:

  • ماژول‌های اصلی
  • ماژول‌های محلی
  • ماژول‌های شخص ثالث

ماژول‌های اصلی Node.JS

ماژول‌های اصلی در توزیع باینری آن کامپایل می‌شوند و با شروع روند نود جی اس به طور خودکار بارگیری می‌شوند. برخی از ماژول‌های هسته اصلی در نود جی اس در جدول زیر شرح داده شده است:

  1. HTTP (Hypertext Transfer Protocol)

توضیحات: ماژول HTTP شامل کلاس‌ها، متدها و رویدادها برای ساخت سرور HTTP Node.js است.

  1. URL (Uniform Resource Locator)

توضیحات: ماژول URL شامل رزولوشن URL و متد تجزیه است.

  1. query string

توضیحات: ماژول کوئری استرینگ متدهایی را برای مقابله با رشته پرس و جو ارائه می‌دهد.

  1. Path

توضیحات: ماژول path متدهایی را برای مدیریت مسیرهای اسکریپت فراهم می‌کند.

  1. Fs

توضیحات: ماژول fs شامل کلاس‌ها، متدها و رویدادها برای کار با فایل‌های ورودی / خروجی است.

ماژول‌های اصلی لودینگ

var module = require('module_name');
Node.js Local Module

ماژول‌های محلی به صورت محلی در برنامه نود جی اس شما ایجاد می‌شوند. این ماژول‌ها شامل ویژگی‌های مختلف برنامه شما در فایل‌ها و دایرکتوری‌های جداگانه هستند.

بیایید مثالی بزنیم و یک ماژول ورود به سیستم ساده بنویسیم که اطلاعات، هشدار یا خطا را در کنسول ثبت می‌کند.

var log = {
            info: function (info) { 
                console.log('About_Information: ' + info);
            },
            warning:function (warning) { 
                console.log('About_Warning: ' + warning);
            },
            error:function (error) { 
                console.log('About_Error: ' + error);
            }
    };

module.exports = log

در برنامه فوق، ما یک شی با سه متد info()، warning() و error() ایجاد کردیم. در پایان شی را به module.exports اختصاص دادیم.

ماژول محلی لودینگ

برای استفاده از ماژول‌های محلی در برنامه خود، باید تابع ()Require را به همان روشی که ماژول اصلی را بارگیری می‌کنید، انجام دهید.

var myLogModule = require('./Log.js');
myLogModule.info('Node.js started');  

در مثال فوق، ماژول ورود به سیستم را با استفاده از روش ()Require و مسیر مشخص شده در آنجا ماژول Logging ذخیره می‌شود.

ماژول‌های خارجی (ماژول شخص ثالث)

برای نصب ماژول‌های خارجی فقط از NPM می‌توانید استفاده کنید. چنین ماژول‌هایی که معمولا به صورت رایگان ساخته می‌شوند، برای سایر توسعه دهندگان استفاده می‌شوند.

npm install --g <module_name>

فایل ماژول را در پکیج اصلی برنامه خود قرار دهید:

npm install --save <module_name>

ماژول اکسپرت در Node.JS

Module.exports یا export یک شی خاص است که به طور پیش فرض در هر فایل JS در برنامه نود جی اس استفاده می‌شود.

بیایید یک مثال ساده از مرجع در نود جی اس بزنیم:

var object1= {
  Name: "Mary",
  Course: "BBA"
}
var new_object= object1;
new_object.Name= "james";
console.log(object1.Name);

خروجی:

برای توصیف کاربرد == و === در نود جی اس مثالی می‌زنیم:

== فقط برای بررسی سینتکس استفاده می‌شود، اما از === برای بررسی سینتکس و نوع داده استفاده می‌شود.

مثال ==:

console.log(10== "10");

خروجی:

مثال ===:

console.log(10=== "10");

خروجی:

این تابع در نود جی اس:

 var object1= {
  Print_name: function() {
    console.log(this=== object1)
  }
};
object1.Print_name();

خروجی:

نمونه سازی نود جی اس:

function Student(name) {
  this.name= name
}
Student.prototype= {
  geet: function() {
    console.log("hello my name is: " + this.name)
  }
}
var frank= new Student("mary");
frank.geet()

خروجی:

فریمورک اکسپرس Node.JS

Express.js دقیقا چیست؟

express.js یک فریمورک سرور برنامه‌های کاربردی وب جاوااسکریپت است که اساسا برای ایجاد یک برنامه وب تک صفحه‌ای، چند صفحه‌ای و ترکیبی ساخته شده است.

MEAN یک فریمورک نرم‌افزار جاوااسکریپت رایگان و متن‌باز برای ایجاد وب سایت‌های تعاملی و برنامه‌های وب با اجزای زیر است:

  • استاندارد پایگاه داده MongoDB-NoSQL.
  • Express.js - فریمورک پیش فرض برنامه های وب.
  • Angular.js - از فریمورک JavaScript MVC برای ایجاد برنامه‌های وب استفاده می‌شود.
  • Node.js - این یک فریمورک است که برای برنامه‌های شبکه سمت سرور و مقیاس‌پذیر استفاده می‌شود.

پایگاه داده NoSQL

پایگاه‌های داده NoSQL مانند MongoDB و MySQL به عنوان پایگاه‌های داده ذخیره اطلاعات بسیار محبوب شده‌اند.

برای استفاده از هر یک از این پایگاه‌ها، باید ماژول‌های لازم را با استفاده از Node Package Manager دانلود و استفاده کنید. ماژول مورد نیاز برای MySQL ، "mysql" نامیده می‌شود و ماژول صحیحی که برای MongoDB نصب می‌شود "Mongoose" است.

امیدوارم که این مقاله برایتان مفید واقع شود. در صورت تمایل می‌توانید نظرات خود را در بخش زیر برایمان ارسال کنید.

منبع

چه امتیازی برای این مقاله میدهید؟

خیلی بد
بد
متوسط
خوب
عالی
5 از 1 رای

/@heshmati74
عرفان حشمتی
Full-Stack Web Developer

کارشناس معماری سیستم های کامپیوتری، طراح و توسعه دهنده وب سایت

دیدگاه و پرسش

برای ارسال دیدگاه لازم است وارد شده یا ثبت‌نام کنید ورود یا ثبت‌نام

در حال دریافت نظرات از سرور، لطفا منتظر بمانید

در حال دریافت نظرات از سرور، لطفا منتظر بمانید

عرفان حشمتی

Full-Stack Web Developer

مقالات برگزیده

مقالات برگزیده را از این قسمت میتوانید ببینید

مشاهده همه مقالات