آموزش Node.js در 3 روز: ایجاد،انتشار،گسترش و مدیریت در Node.jsReviewed by مژده کاروانیان on Oct 2Rating: 4.0
آموزش Node.js در 3 روز: ایجاد،انتشار،گسترش و مدیریت در Node.js

آموزش Node.js در 3 روز: ایجاد،انتشار،گسترش و مدیریت در Node.js

در خدمت شما هستیم با آموزش Node.js در 3 روز: ایجاد،انتشار،گسترش و مدیریت در Node.js در ویندوز از وبسایت آموزش برنامه نویسی سورس باران.در این جلسه که بخش سوم آموزش Node.js در 3 روز است معرفی و آشنایی کامل با نحوه ایجاد ، انتشار ، گسترش و مدیریت node.js-NPM را خواهیم داشت. یک ماژول در Node.js یک کپسوله منطقی از کد در یک واحد است.  یک برنامه نویسی خوب این است که همیشه کد را به گونه ای تفکیک کنید که آن را برای اهداف بعدی کنترل و حفظ کنید . اینجاست که ماژول ها در Node.js وارد عمل می شوند. از آنجا که هر ماژول یک موجود مستقل با عملکرد محصور شده خود است ، می توان آن را به عنوان یک واحد کار جداگانه اداره کرد.

آموزش Node.js در 3 روز: ایجاد،انتشار،گسترش و مدیریت در Node.js

  • ماژول های موجود در js چیست؟

  • استفاده از ماژول ها در js

  • ایجاد ماژول های NPM

  • ماژول های در حال گسترش

  • انتشار ماژول های NPM

  • مدیریت بسته های شخص ثالث با npm

  • پرونده json چیست؟

  • ماژول های js چیست؟

 

ماژول های Node.js چیست؟

همانطور که قبلاً گفته شد ، ماژول ها در Node js راهی برای کپسوله کردن کد در یک واحد منطقی جداگانه است. بسیاری از ماژول های  آماده در بازار وجود دارد که می تواند در Node js مورد استفاده قرار گیرد.در زیر برخی از ماژول های محبوب که در یک برنامه Node js استفاده می شوند ، آورده شده است.

1- Express framework–  یک چارچوب برنامه ی کاربردی وب  Node js ، ساده و انعطاف پذیر که مجموعه ای از ویژگی های قدرتمند را برای وب و برنامه های موبایل فراهم می کند.

Socket.IO -2-  ارتباطات مبتنی بر رویداد دو طرفه را در زمان واقعی امکان پذیر می کند. این ماژول برای ایجاد برنامه های مبتنی بر چت خوب است.

Jade -3 – یک  قالب با کارایی بالا است و با استفاده از JavaScript برای گره و مرورگرها اجرا می شود.

 MongoDB -4 – درایور MongoDB Node.js یک درایور رسمی node.js پشتیبانی شده برای MongoDB است.

 restify -5 – یک چارچوب سبک وزن است ، شبیه به بیان ساخت API های REST

 Bluebird -6 – یک کتابخانه است با تمام امکانات با تمرکز بر ویژگی ها و عملکردهای نوآورانه است.

 

استفاده از ماژول ها در Node.js

برای استفاده از ماژول ها در برنامه Node.js ، ابتدا باید با استفاده از مدیر بسته Node نصب شوند.خط فرمان زیر نحوه نصب ماژول “اکسپرس” را نشان می دهد.

npm install express

Node.js NPM Tutorial: Create, Publish, Extend & Manage

  • دستور فوق پرونده های لازم را که شامل “ماژول های اکسپرس” است بارگیری می کند و از نصب نیز مراقبت می کند .
  • پس از نصب ماژول ، برای استفاده از یک ماژول در برنامه js ، باید از کلمه کلیدی “‘require” استفاده کنید. این کلمه کلیدی روشی است که Node.js برای ترکیب عملکرد یک ماژول در یک برنامه استفاده می کند.

بیایید مثالی از چگونگی استفاده از کلمه کلیدی ” require ” را بررسی کنیم. مثال کد زیر “Guru99” نحوه استفاده از تابع require را نشان می دهد.

Node.js NPM Tutorial: Create, Publish, Extend & Manage

  1. در بیان اول ، ما از کلمه کلیدی ” require ” استفاده می کنیم تا ماژول اکسپرس را در بر گیریم. ماژول “اکسپرس” یک کتابخانه جاوا اسکریپت بهینه شده برای توسعه js است. این یکی از رایج ترین ماژول های Node.js است.
  2. پس از گنجاندن ماژول ، به منظور استفاده از قابلیت های درون ماژول ، باید یک شی ( (object ساخته شود. در اینجا یک شی از ماژول اکسپرس ایجاد می شود.
  3. هنگامی که ماژول با استفاده از دستور ” require ” گنجانده شده و “شی” ایجاد می شود ، می توان روشهای مورد نیاز ماژول اکسپرس را فراخوانی کرد. در اینجا ما از دستور set برای تنظیم موتور نمایش استفاده می کنیم که برای تنظیم موتور قالب مورد استفاده در js است.

توجه : فقط برای درک خواننده ؛  موتور قالب یک روش برای تزریق مقادیر در یک برنامه با جمع آوری داده ها از پرونده های داده است. این مفهوم در       Angular JS بسیار مشهور است که در آن از اکولاد  {{key}} برای جایگزینی مقادیر در صفحه وب استفاده می شود .کلمه “key” در پرانتزها  اساساً       متغیری را نشان می دهد که با نمایش صفحه توسط یک مقدار جایگزین می شود).

        4. در اینجا ما از روش گوش دادن به برنامه برای گوش دادن به  شماره درگاه خاصی استفاده می کنیم.

 

ایجاد ماژول های NPM

Node.js توانایی ایجاد ماژول های سفارشی را دارد و به شما امکان می دهد آن ماژول های سفارشی را در برنامه Node.js خود قرار دهید. بیایید به یک مثال ساده از چگونگی ایجاد ماژول خودمان بپردازیم و آن را در پرونده اصلی برنامه خود قرار دهیم. ماژول ما فقط اضافه کردن دو عدد  ساده ای خواهد بود. بیایید مراحل زیر را دنبال کنیم تا ببینیم چگونه می توان ماژول هایی را ایجاد کرد و آنها را در برنامه خود گنجانید.

مرحله 1) فایلی با نام “Addition.js” ایجاد کنید و کد زیر را درج کنید. این پرونده شامل منطق ماژول شما خواهد بود.

در زیر کدی که وارد این پرونده می شود وجود دارد.

Node.js NPM Tutorial: Create, Publish, Extend & Manage

  1. کلمه کلید ” exports ” برای اطمینان از اینکه کارایی های تعیین شده در این پرونده توسط سایر پرونده ها قابل دسترسی است ، استفاده می شود.
  2. سپس ما در حال تعریف عملکردی به نام “AddNumber” هستیم. این تابع برای گرفتن 2 پارامتر ، a و b تعریف شده است. این تابع به ماژول “exports” اضافه شده است تا این تابع را به عنوان یک عملکرد عمومی تبدیل کند که توسط سایر ماژول های برنامه قابل دسترسی است.
  3. ما در آخر در حال ایجاد تابع خود هستیم تا مقدار اضافه شده پارامترها را برگردانیم.اکنون که ماژول سفارشی خود را ایجاد کرده ایم که قابلیت اضافه کردن 2 عدد را دارد. اکنون زمان آن رسیده است که یک برنامه کاربردی ایجاد کنیم ، که این ماژول را فراخوانی می کند. در مرحله بعدی ، در واقع خواهیم دید که چگونه برنامه ای را ایجاد کنیم که ماژول سفارشی ما را صدا کند.

مرحله 2) فایلی با نام “app.js” ایجاد کنید که فایل اصلی برنامه شماست و کد زیر را اضافه کنید.

Node.js NPM Tutorial: Create, Publish, Extend & Manage

1- ما از کلمه کلیدی “require” استفاده می کنیم تا قابلیت های موجود در پرونده Addition.js را درج کنیم.

2- از آنجا که اکنون توابع موجود در پرونده Addition.js در دسترس هستند ، اکنون می توانیم با عملکرد AddNumber صدا بزنیم . دراین تابع ، ما در حال  اضافه کردن  2 عدد به عنوان پارامتر هستیم. سپس مقدار را در کنسول نمایش می دهیم.

Node.js NPM Tutorial: Create, Publish, Extend & Manage

خروجی:

  • وقتی پرونده js را اجرا می کنید ، خروجی مقدار 3 را در پرونده کنسول دریافت خواهید کرد.
  • نتیجه این است که عملکرد AddNumber در پرونده js با موفقیت فراخوانی شد و مقدار برگشتی 3 در کنسول نمایش داده شد.

توجه: – ما هنوز از “مدیر بسته نود” برای نصب ماژول Addition.js استفاده نمی کنیم. دلیل این است که ماژول در حال حاضر بخشی از پروژه ما در ماشین محلی است. مدیر بسته Node هنگامی که ماژول را در اینترنت منتشر می کند ، در تصویر ظاهر می شود که در موضوع بعدی می بینیم.

 

ماژول های در حال گسترش

در هنگام ایجاد ماژول ها ، امکان گسترش یا ارث یک ماژول از دیگری نیز وجود دارد.در برنامه نویسی مدرن ، ساخت کتابخانه ای از ماژول های رایج و سپس افزایش کارایی این ماژول های مشترک در صورت لزوم کاملاً متداول است. بیایید به نمونه ای از چگونگی گسترش ماژول ها در Node.js  نگاهی بیندازیم.

مرحله 1) ماژول پایه را ایجاد کنید.در مثال ما یک پرونده با نام “Tutorial.js” ایجاد کرده و کد زیر را قرار دهید. در این کد ، ما فقط در حال ایجاد تابعی هستیم که رشته ای را به کنسول باز می گرداند. رشته برگشت داده شده “آموزش Guru99” است.

Node.js NPM Tutorial: Create, Publish, Extend & Manage

  1. ماژول export به گونه ای استفاده می شود که هر عملکردی که در این پرونده تعریف شده باشد می تواند در سایر ماژول ها در js در دسترس باشد.
  2. ما در حال ایجاد تابعی به نام tutorial هستیم که می تواند در سایر ماژول های js استفاده شود.
  3. وقتی این تابع فراخوانی می شود رشته “” Guru99 Tutorial “را در کنسول نمایش می دهیم.

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

مرحله 2) بعد ، ماژول توسعه یافته خود را ایجاد خواهیم کرد. یک پرونده جدید با نام “NodeTutorial.js” ایجاد کنید و کد زیر را در پرونده قرار دهید.

Node.js NPM Tutorial: Create, Publish, Extend & Manage

توجه داشته باشید ، در مورد کد فوق نکات کلیدی زیر است:

1- ما در حال استفاده از تابع “require” در فایل ماژول جدید هستیم. از آنجا که ما قصد داریم پرونده ماژول موجود “Tutorial.js” را گسترش دهیم ، ابتدا باید قبل از تمدید آن را وارد کنیم.

2- سپس تابعی با نام “Nodetutorial” ایجاد می کنیم. این تابع 2 کار را انجام می دهد

  • این رشته ” Nodetutorial ” را به کنسول ارسال می کند.
  • رشته ” Node Tutorial ” را از ماژول پایه “js” به ماژول گسترده ما “NodeTutorial.js” ارسال می کند.

3- در اینجا ما در حال انجام اولین قدم برای ارسال رشته ای به ” Nodetutorial ” به کنسول هستیم.

4- مرحله بعدی فراخوانی این تابع از ماژول Tutorial است ، که رشته “Guru99 Tutorial” را به console.log می رساند.

 

مرحله 3) پرونده اصلی app.js را که فایل اصلی برنامه شماست را ایجاد کنید و کد زیر را در آن وارد کنید.

Node.js NPM Tutorial: Create, Publish, Extend & Manage

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

  • پرونده اصلی برنامه ما اکنون ماژول “NodeTutorial” را فراخوانی می کند.
  • ما در حال فراخوانی تابع “NodeTutorial” هستیم. با فراخوانی این تابع ، متن “Node Tutorial” در کنسول نمایش داده می شود.
  • از آنجا که ماژول js را گسترش داده ایم و تابعی به نام pTutor را در معرض دید قرار می دهیم. همچنین این ماژول را در ماژول Tutorial.js فراخوانی می کند و متن ” Tutorial Guru99″ نیز در کنسول نمایش داده می شود.

خروجی:

از آنجا که ما کد app.js فوق را با استفاده از Node اجرا کرده ایم ، خروجی زیر را در پرونده console.log دریافت خواهیم کرد.

  • Node Tutorial
  • Guru99 Tutorial

 

انتشار ماژول های NPM (مدیر بسته بندی نود)

می توان ماژول خود را در مخزن GitHub خود منتشر کرد. با انتشار ماژول خود در یک مکان مرکزی ، دیگر مجبور نیستید که خود را روی هر دستگاهی که به آن نیاز باشد نصب کنید. در عوض ، می توانید از دستور install npm استفاده کرده و ماژول npm منتشر شده خود را نصب کنید. برای انتشار ماژول npm شما باید مراحل زیر دنبال شود.

مرحله 1) مخزن خود را در GitHub (یک ابزار مدیریت مخزن کد آنلاین) ایجاد کنید. این می تواند برای میزبانی مخازن کد شما استفاده شود.

مرحله 2) شما باید به نصب محلی npm خود بگویید که چه کسی هستید. این بدان معنی است که ما باید به npm بگوییم که نویسنده این ماژول ، شناسه ایمیل و  URL شرکت  ، که در دسترس است، چیست و باید با این شناسه در ارتباط باشد. همه این جزئیات هنگام انتشار، به ماژول npm شما اضافه می شوند.

دستورات زیر نام ، ایمیل و URL نویسنده ماژول npm را تعیین می کند.

npm set init.author.name “Guru99.”

npm set init.author.email “[email protected]

npm set init.author.url http://Guru99.com

مرحله 3) مرحله بعدی ورود به سیستم npm با استفاده از اعتبارهای ارائه شده در مرحله آخر است. برای ورود به سیستم ، باید از دستور زیر استفاده کنید.

مرحله 4) آماده سازی بسته – قدم بعدی آماده سازی بسته برای ایجاد پرونده pack.json است. این کار با صدور دستور زیر قابل انجام است.

هنگامی که دستور فوق را صادر می کنید ، برای برخی از سؤالات از شما تایید خواسته می شود. مهمترین شماره ، شماره نسخه برای ماژول شما است.

مرحله 5) انتشار در GitHub – قدم بعدی انتشار فایل های منبع خود در GitHub است. این کار را می توان با اجرای دستورات زیر انجام داد.

مرحله 6) انتشار ماژول خود – نکته آخر این است که ماژول خود را در رجیستری npm منتشر کنید. این کار از طریق دستور زیر انجام می شود.

 

مدیریت بسته های شخص سوم با npm

همانطور که دیدیم “مدیر بسته نود” توانایی مدیریت ماژول ها را دارد که مورد نیاز برنامه های Node.js است. بیایید نگاهی به برخی از توابع موجود در مدیر بسته گره برای مدیریت ماژول ها بیندازیم.

1- نصب بسته ها در حالت جهانی – ماژول ها را می توان در سطح جهانی نصب کرد ، که این اساساً بدان معنی است که این ماژول ها برای کلیه پروژه های js در یک دستگاه محلی در دسترس هستند. مثال زیر نحوه نصب “ماژول اکسپرس” با گزینه جهانی را نشان می دهد.گزینه جهانی در جمله فوق چیزی است که امکان نصب ماژول ها در سطح جهانی را فراهم می کند.

npm install express –global

2- لیست کردن تمام بسته های جهانی نصب شده بر روی یک دستگاه محلی. این کار را می توان با اجرای دستور زیر در خط فرمان انجام داد.

npm list –global

در صورتی که قبلاً “ماژول اکسپرس” را روی سیستم خود نصب کرده اید ، خروجی نمایش داده می شود. در اینجا می توانید ماژول های مختلف نصب شده روی دستگاه محلی را مشاهده کنید.

Node.js NPM Tutorial: Create, Publish, Extend & Manage

3- نصب نسخه خاص یک بسته – بعضی اوقات ممکن است نیاز به نصب فقط یک نسخه خاص بسته باشد. هنگامی که نام بسته و نسخه مربوط          به آن را نصب کردید ، می توانید از دستور install npm برای نصب آن نسخه خاص استفاده کنید. مثال زیر نحوه نصب ماژول تحت عنوان                        undererscore با نسخه خاص 1.7.0 را نشان می دهد.

npm install [email protected]

4-به روزرسانی نسخه ی بسته  – بعضی اوقات ممکن است نسخه قدیمی تر یک بسته را در یک سیستم داشته باشید و ممکن است بخواهید آخرین نسخه موجود در بازار را به روز کنید. برای این کار می توانید از دستور npm update استفاده کنید. مثال زیر نحوه به روزرسانی پکیج زیرین را به آخرین نسخه نشان می دهد.

npm update underscore

5-جستجوی یک بسته خاص – برای جستجوی اینکه نسخه خاصی در سیستم محلی موجود است یا خیر ، می توانید از دستور جستجو npm استفاده کنید. مثال زیر بررسی خواهد کرد که آیا ماژول اکسپرس روی دستگاه محلی نصب شده است یا نه.

npm search express

6- حذف یک بسته – همان طور که  می توانید یک بسته را نصب کنید ، می توانید یک بسته را نیز حذف کنید. حذف یک بسته با دستور حذف npm انجام می شود. مثال زیر نحوه حذف ماژول اکسپرس را نشان می دهد.

npm uninstall express

پرونده pack.json چیست؟

پرونده “pack.json” برای نگهداری ابرداده در مورد یک پروژه خاص استفاده می شود. این  اطلاعات لازم را به مدیر بسته نود ارائه می دهد تا بفهمد چگونه باید پروژه همراه با متعلقات  آن انجام شود. پرونده های pack.json حاوی اطلاعاتی مانند توضیحات پروژه ، نسخه پروژه در یک توزیع خاص ، اطلاعات مجوز ، و داده های پیکربندی هستند. پرونده pack.json معمولاً در فهرست اصلی یک پروژه Node.js قرار دارد.

بیایید مثالی از نحوه ساختار ساختار ماژول هنگام نصب از طریق npm بنگریم.عکس زیرمحتوای ماژول اکسپرس را وقتی در پروژه Node.js شما گنجانده شده است نشان می دهد. از عکس زیر ، می توانید پرونده pack.json را در پوشه اکسپرس مشاهده کنید.

Node.js NPM Tutorial: Create, Publish, Extend & Manage

اگر پرونده pack.json را باز کنید ، اطلاعات زیادی را در پرونده مشاهده خواهید کرد. در عکس زیر بخشی از پرونده را مشاهده می کنید. [email protected]~4.13.1 به شماره نسخه ماژول اکسپرس مورد استفاده اشاره می کند.

Node.js NPM Tutorial: Create, Publish, Extend & Manage

خلاصه

  • یک ماژول در js یک کپسوله منطقی از کد در یک واحد است. تفکیک در ماژول ها باعث می شود تا کد برای اهداف بعدی قابل کنترل و نگهداری شود.
  • ماژول های زیادی در بازار موجود است که می تواند در js استفاده شود. مانند express ، underscore ، MongoDB و غیره
  • مدیر بسته گره (npm) برای بارگیری و نصب ماژول ها استفاده می شود که می توانند در یک برنامه js مورد استفاده قرار گیرند.
  • می توان ماژول های NPM سفارشی ایجاد کرد ، این ماژول ها را گسترش داد و همچنین این ماژول ها را منتشر کرد.
  • مدیر بسته گره دارای مجموعه ای کامل از دستورات برای مدیریت ماژول های npm در سیستم محلی مانند نصب ، نصب مجدد ، جستجو و غیره است.
  • پرونده json برای نگه داشتن کل اطلاعات ابرداده برای ماژول npm استفاده می شود.

 

لیست تمامی جلسات آموزش Node.js

  1. آموزش Node.js در ۳ روز: آشنایی با Node.js
  2. آموزش دانلود و نصب Node.js -NPM در ویندوز
  3. آموزش Node.js در ۳ روز: ایجاد،انتشار،گسترش و مدیریت در Node.js
  4. آموزش HTTP در Node.js + ایجاد سرور و دریافت داده
  5. آموزش فریم ورک Express در Node.js در ۱۰ دقیقه
  6. آموزش promise در برنامه نویسی Node.js
  7. آموزش تولید promise با کتابخانه BlueBird در Node.js
  8. آموزش Generators در Node.js و مقایسه با توابع Callbacks
  9. آموزش جریان داده یا Streams در Node.js : کار با Filestream و Pipes در Node.js
  10. آموزش تست Node.js با Jasmine
  11. تفاوت Node.Js و AngulrJS
  12. تفاوت Node js و Python
  13. آموزش MongoDB در Node.js
  14. کتاب آموزش Node.js برای مبتدی ها بصورت کاملا گویا