قراره تو این دوره چی یاد بگیرم؟

  • معرفی و مقدمات یادگیری Node.js
  • آموزش Object Global
  • آموزش کار با فایل‌های سیستم
  • آموزش استریم و بافر در Node.js
  • آموزش ساخت سرور مجازی با Node.js
  • آموزش کار با پکیج‌های NPM، Nodemon، Loadash و File
  • آموزش مقدمات دیتابیس MangoDB
  • و...

سرفصل های دوره

۱ فصل
۵۰ جلسه
۷ ساعت
۱

لیست ویدئوهای دوره

۵۰ قسمت
۰۶:۴۶:۲۸
1

توضیح و مقدمات

رایگان
۰۸:۴۱
2

نصب و راه اندازی

رایگان
۰۶:۰۲
6

خواندن فایل های سیستم

۰۶:۳۶
7

نوشتن در فایل های سیستم

۰۵:۱۲
8

کار با فولدرهای سیستم

۰۵:۱۰
9

حذف فایل های سیستم

۰۵:۰۶
10

استریم و بافر

۱۲:۵۱
11

کلاینت و سرور

۰۲:۰۳
12

دامنه و IP

۰۹:۱۰
13

ساخت سرور مجازی

۰۹:۳۱
14

نام هاست و عدد پورت

۱۱:۰۱
15

آبجکت درخواست

۰۳:۵۸
16

آبجکت پاسخ

۰۵:۴۲
17

ارسال یکجا کل پکیج

۰۴:۳۹
18

سیستم روتینگ ساده

۰۸:۱۶
19

کدهای Status

۰۷:۱۸
20

انتقال صفحات

۰۳:۵۱
21

مدیریت پکیج نود - NPM

۰۶:۰۷
22

پکیج Nodemon

۰۵:۴۵
23

پکیج فایل

۰۳:۲۱
24

پکیج Loadash

۰۶:۵۵
25

وابسته های پروژه

۰۳:۵۶
26

نصب و راه اندازی اکسپرس

۰۷:۲۶
27

صفحات HTML و سیستم روتینگ

۰۶:۰۲
28

انتقال صفحات و صفحه 404

۰۷:۰۵
29

نیم نگاهی به View Engine

۰۲:۴۲
30

بررسی View Engine

۱۱:۳۱
31

ارسال داده به فایل های Ejs

۲۲:۱۲
32

بررسی partials

۰۶:۵۵
33

استایل دهی

۰۵:۵۹
34

بررسی Middleware

۰۷:۵۵
35

مفهوم ()next

۰۷:۲۸
36

معرفی Midlleware

۰۴:۲۸
37

فایل های استاتیک

۰۶:۳۹
38

مقدمات mongoDB

۰۳:۱۸
39

نصب و راه اندازی mongo

۱۰:۳۰
40

بررسی mongoose

۱۶:۴۱
41

دریافت و ذخیره داده

۱۲:۲۶
42

حذف داده

۰۸:۱۳
43

قرار دادن داده ها در ویو

۰۷:۵۵
44

انواع درخواست

۰۵:۲۳
45

نوع درخواست پست

۱۲:۵۴
46

پارامترهای درخواست

۱۸:۵۹
47

نوع درخواست حذف

۲۰:۳۳
48

بررسی Express Router

۱۳:۱۱
49

مقدمات MVC

۰۶:۲۵
50

کنترل کننده ها

۱۲:۵۸

نود جی اس، یکی از فریمورک‌های برجسته در حوزه توسعه سمت سرور یا «بک‌اند» است؛ اما در واقع، بیش از یک فریمورک است. Node.js محیط اجرایی است که مجموعه‌ای از کتابخانه‌های متن باز و کراس پلتفرم را برای توسعه بک‌اند با استفاده از زبان برنامه‌نویسی جاوااسکریپت در اختیار قرار می‌دهد. این فریمورک از سال 2009 در حال توسعه است و فرصت‌های شغلی فراوانی را در شرکت‌های مختلف جهان ایجاد کرده است. دوره آموزش node js دانشجویار، پله‌ای برای ورود به دنیای توسعه بک‌اند با استفاده از جاوااسکریپت است. این دوره، مباحث مختلف را از سطح مقدماتی تا پیشرفته به صورت پروژه محور آموزش می‌دهد.

مزیت دوره آموزش node js

دوره آموزش node js دانشجویار فرصتی عالی برای افرادی است که به زبان جاوا اسکریپت مسلط هستند و می‌خواهند در زمینه توسعه Back End نیز فعالیت داشته باشند. این دوره، مباحث مربوط به نود جی اس را از سطح مقدماتی تا پیشرفته شامل شده و به خوبی مسیر یادگیری Node.js را هموار می‌کند. با توجه به محبوبیت بالای این فریمورک در جهان، فرصت‌های شغلی زیادی پیرامون آن وجود دارد. بنابراین با گذراندن دوره آموزش node js و انجام تمرین‌های کاربردی، می‌توانید به عنوان یک توسعه دهنده بک اند در شرکت‌ها مشغول به کار شوید.

آیا دوره آموزش node js پروژه محور است؟

بله، دوره بر پایه پروژه‌ ها است. به مسائل عملی توسعه Node.js می‌پردازد و شما را از طریق پروژه‌های مختلفی مانند تغییر فایل، ایجاد سرور، مسیریابی و ادغام پایگاه داده هدایت می‌کند. این رویکرد کمک می‌کند تا مفاهیم از طریق تجربه عملی تقویت شوند.

سرفصل‌های دوره آموزش node js دانشجویار

  • معرفی و مقدمات یادگیری Node.js
  • نصب و راه اندازی محیط اجرای Node.js
  • آموزش مقدمات نود جی اس
  • آموزش Object Global
  • بررسی ماژول‌ها
  • آموزش کار با فایل‌های سیستم
  • آموزش استریم و بافر در Node.js
  • آموزش کلاینت و سرور
  • آموزش ساخت سرور مجازی با Node.js
  • کدهای وضعیت
  • آموزش کار با پکیج‌های NPM، Nodemon، Loadash و File
  • آموزش تعریف وابسته‌های پروژه
  • نصب، راه اندازی و استفاده از پکیج Express
  • آموزش مقدمات دیتابیس MangoDB
  • و…

آموزش node js دانشجویار برای چه افرادی مناسب است؟

  • برنامه نویسان مسلط به Java Script
  • علاقمندان به یادگیری توسعه Back end
  • علاقمندان به توسعه Full Stack
  • افرادی که نیاز به یادگیری یک فریمورک سازگار با Java Script برای توسعه Back end دارند.

پیش‌نیازهای دوره آموزش node js چیست؟

Node.js چیست؟

همانطور که در ابتدا نیز گفته شد، Node.js یک محیط اجرایی برای توسعه Back end است که برای زبان برنامه نویسی Java Script توسعه داده شده است. این فریمورک، تمامی امکاناتی که برای توسعه برنامه‌های نوشته شده با جاوااسکریپت در هر دو بخش سمت سرور و سمت کاربر موردنیاز است را ارائه می‌دهد.

در گذشته، زبان Java Script به صورت کلی برای نوشتن اسکریپت‌های موردنیاز سمت کاربر (Client) مورداستفاده قرار می‌گرفت. بنابراین توسعه دهندگان مجبور به استفاده از دیگر زبان‌های برنامه نویسی نظیر PHP و Ruby برای توسعه سمت سرور بودند. همچنین در برخی موارد، نیاز به استفاده ار فریمورک‌های واسط وجود داشت که پروسه توسعه پروژه را پیچیده می‌کرد. در سال 2009، شخصی به نام رایان دال (Ryan Dahl) تصمیم به توسعه محیطی برای توسعه بک اند با استفاده از JavaScript گرفت. در همین سال، وی Node.js را با استفاده از جاوااسکریپت، C و C++ توسعه و به صورت متن باز منتشر کرد.

امروز این فریمورک در نسخه 15.14 خود قرار دارد که در سال 2021 معرفی شده است.

Node.js با استفاده از موتور V8 جاوا اسکریپت، در مرورگها اجرا می‌شود. با استفاده از این فریمورک می‌توانید برنامه‌های کاربردی در بستر شبکه و سمت سرور را به خوبی پیاده کنید و با استفاده از آن، پروژه‌های مختلفی را توسعه دهید.

Node Js و پکیج هایش !

Node.jsرا دنیای package‌های بی‌شمار آن قدرتمند کرده است.

تا کنون package‌های زیادی برای پلتفرم Nodejs نوشته شده است.

سیستم مدیریت پکیج‌های Nodejs با عنوان NPM مخفف (Node Packages Manager) وظیفه‌ی مدیریت Packageهای Nodejs را بر عهده دارد.

کجا از Node JS استفاده کنیم؟

اگر سایت یا اپلیکیشنی مد نظر دارید که تبادل اطلاعات سنگین نیاز دارد و می‌خواهیم چند ارتباط همزمان داشته باشیم Nodejs انتخاب خوبی نسبت به زبان‌هایی نظیر Php خواهد بود.

مثلا اگر سایتی داریم که صرفا عملیات ساده CRUD دارد حتی یک وردپرس ساده انتخاب بهتری هست اما اگر یک سایت با عملیات I/O بالا یا به صورت Realtime نیاز داریم آنجا هست که نود جی اس گزینه خوبی هست.

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

به‌طور کلی برای موارد زیر نود جی اس انتخاب خوبی هست :

  • نرم‌‌افزارهای محدوده‌ی I/O
  • نرم‌‌افزارهای جریان داده‌ای (Data Streaing)
  • داده‌‌های نرم‌افزارهای در لحظه (Real-Time)
  • برنامه‌های مبتنی بر Json API
  • برنامه‌‌های تک صفحه‌ای

بازار کار Node JS

کافیست به سایت jobinja   که در حوزه اشتغال فعال هست نگاهی بیاندازیم، آگهی هایی مشاهده خواهیم کرد که برای برنامه نویس نود جی اس، دستمزدهای ماهیانه بین ۵ میلیون تا ۸ میلیون ثبت کرده اند

یادگیری Nodejs ارزشش را دارد پس حرفه ای شوید و تلاش کنید تا سوپراستار این حوزه باشید.

آیا Node.js یک زبان برنامه نویسی است؟

به طور مختصر؛ خیر!

فریمورک Node.js یک محیط اجرایی برای اجرای کدهای جاوا اسکریپت در سمت سرور یا همان Back End است. البته این محیط با استفاده از زبان‌های برنامه نویسی جاوا اسکریپت، C و C++ توسعه داده شده؛ اما به عنوان یک زبان برنامه نویسی درنظر گرفته نمی‌شود. نکته جالب این است که از نظر فنی، Node.js یک فریمورک نیز محسوب نمی‌شود؛ اما به فریمورک‌ها و زبان JS برای اجرا در سمت سرور کمک می‌کند.

بنابراین Node.js یک زبان برنامه نویسی یا یک فریمورک نیست. اما برنامه نویسان برحسب عادت، آن را فریمورک صدا می‌کنند.

مزایای Node.js چیست؟

امنیت بالا، اولین مزیت نود جی اس است. در زمان‌هایی نظیر حملات DDos که فعالیت سرور به‌شدت افزایش پیدا می‌کند، این فریمورک تمامی سنگینی را به دوش می‌کشد و سرور با مشکل مواجه نمی‌شود. بنابراین امنیت پروژه تا حد زیادی افزایش پیدا می‌کند.  

سازگاری بالا با بسیاری از سیستم عامل‌های رایج دسکتاپ، دیگر مزیت Node.js است. شما می‌توانید از این فریمورک و برنامه‌های ساخته شده با آن روی سیستم عامل‌های ویندوز، Mac و لینوکس استفاده کنید.

این فریمورک از تنها یک رشته برای پردازش استفاده می‌کند؛ بنابراین انجام عملیات‌ها و تسک‌ها به سرعت انجام می‌شود. در نتیجه امکان انجام چندین کار به صورت همزمان در سرور وجود دارد. این کار باعث افزایش سرعت اجرای برنامه شده و در پروژه‌های بزرگ، اهمیت آن قابل درک است.

از آنجایی که Node.js به صورت متن باز ارائه شده، طیف گسترده‌ای از برنامه نویسان روی آن کار کرده‌اند. بنابراین کتابخانه‌های متعدد و پرشماری برای آن توسعه داده شده که دست شما را برای توسعه هرچه بهتر پروژه‌هایتان باز می‌گذارد. علاوه بر این، با توجه به تنوع بالای کتابخانه‌ها، دیگر نیازی به اضافه کردن کدهای پیش پا افتاده و ساده درون پروژه‌ها نیست! تنها کافیست روی بخش‌های مهم پروژه تمرکز کنید.

دلایل استفاده از Node.js

یکی از سوالاتی که ممکن است برای برنامه نویسان علاقمند به توسعه Back End پیش بیاید، این است که چرا باید از Node.js استفاده کنیم؟

دلایل زیادی برای این کار وجود دارد که در ادامه، به 4 مورد از آنها پرداخته می‌شود.

بازدهی، مقیاس پذیری و انعطاف پذیری بالا

این فریمورک همگام با بروزرسانی‌های جدید JavaScript، به‌روز شده و مشکلات نسخه‌های قبلی آن برطرف می‌شود. علاوه بر این از آنجایی که با استفاده از زبان C++ توسعه پیدا کرده، سرعت اجرای بالایی دارد که آن را به پروژه منتقل می‌کند. عاوه بر این موارد، این فریمورک بسیار مقیاس پذیر است. برای مثال، علاوه بر اینکه می‌توانید از آن برای ساخت یک چت‌روم ساده استفاده کنید، می‌توانید پلتفرم‌های بزرگ و قدرتمندی نظیر یوتیوب را هم با استفاده از Node.js پیاده کنید.

عدم نیاز به یادگیری زبان جدید

در گذشته برنامه نویسان مسلط به جاوااسکریپت، در صورت تمایل به کدنویسی Back-End باید به سراغ یک زبان برنامه نویسی دیگر نظیر PHP می‌رفتند. با استفادهاز Node.js، این افراد نیازی به یادگیری یک زبان جدید ندارند و می‌توانند با استفاده از جاوااسکریپت، Back-End برنامه خود را توسعه دهند.

کراس پلتفرم

در مواردی، نیاز است علاوه بر نسخه وب یک محصول، یک نسخه دسکتاپ از آن توسعه داده شود. با استفاده از پلتفرم‌هایی نظیر NW.js و Electron.js، می‌توانید برنامه‌های دسکتاپ نوشته و اجرا کنید. به این صورت، همان تیم توسعه دهنده‌ای که روی نسخه تحت وب کار می‌کند، می‌تواند بدون نیاز به زبان C# یا دیگر زبان‌های مشابه، برنامه‌های دسکتاپ بسازند.

سازگاری با میکروسرویس‌ها

معمولا زمانی که سرویس‌ها یا پروژه‌ها در فاز اجرایی قرار می‌گیرند، با استفاده از معماری MVP توسعه داده می‌شوند. اما این معماری برای پروژه‌های بزرگ مناسب نیست و اضافه کردن ویژگی‌ها و سرویس‌های جدید به آنها، کابوسی وحشتناک برای برنامه نویسان است. استفاده از میکروسرویس‌ها، برنامه را به بخش‌های کوچک‌تر تقسیم کرده و امکان کار روی آنها با تیم یا حتی زبان برنامه نویسی متفاوت را فراهم می‌کند. نود جی اس با استفاده از میکروسرویس‌ها، توسعه پروژه‌های بزرگ را ساده‌تر می‌کند.

کاربردهای Node.js

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

ساخت برنامه‌های تک صفحه‌ای یا SPA

برنامه‌های تک صفحه‌ای، برنامه‌هایی هستند که بخش‌های مختلف آن در یک صفحه پیاده سازی می‌شوند. یکی از بارزترین انواع این برنامه‌ها، پلتفرم یوتیوب است که محتواهای مختلف درون آن، در صفحاتی کاملا مشابه به نمایش درمی‌آید. با توجه به پتانسیل و مقیاس پذیری بالای Node.js، می‌توان از آن برای ساخت چنین برنامه‌هایی در ابعاد مختلف استفاده کرد. برنامه‌هایی نظیر مدیریت ایمیل، سایت‌های اشتراک ویدیو، شبکه‌های اجتماعی و موارد مشابه نیز به عنوان SPA شناخته می‌شوند.

ساخت برنامه‌های RTA

ابتدا اجازه دهید برنامه‌های RTA را تعریف کنیم. RTA مخفف عبارت Real-Time App یا برنامه‌های بلادرنگ، به برنامه‌هایی گفته می‌شود که در لحظه بروزرسانی می‌شوند. برای مثال، برنامه‌هایی نظیر Google Sheets یا چت روم‌های تحت وب را درنظر بگیرید. به محض ارسال اطلاعات، تغییرات ذخیره شده و برنامه بروز می‌شود. با توسط به ویژگی مقیاس پذیری و سرعت پردازش بالای اطلاعات در فریمورک Node.js، می‌توان از آن برای ساخت چنین برنامه‌هایی استفاده کرد.

اینترنت اشیاء

برنامه‌های اینترنت اشیا، دارای حسگرهایی هستند که داده‌ها و اطلاعات زیادی را در لحظه دریافت می‌کنند. با استفاده از نود جی اس می‌توانید سرعت دریافت و پردازش اطلاعات را افزایش دهید و به حجم قابل توجهی از اطلاعات در کمترین زمان پاسخ دهید.

قابلیت پخش جریانی داده‌ها

با توجه به ویژگی سرعت بالا، سبک بودن و مقیاس پذیری این فریمورک، از آن برای پخش جریانی اطلاعات نیز استفاده می‌شود. شرکت نتفلیکش (Netflix) بزرگترین شرکتی است که از Node.js به این منظور استفاده می‌کند.

در ادامه، برخی از برنامه‌های ساخته شده با استفاده از این فریمورک را با یکدیگر بررسی می‌کنیم.

نمونه‌هایی از برنامه‌های ساخته شده با Node.js

شرکت‌های بزرگی در دنیا از فریمورک Node.js استفاده می‌کنند که هرکدام دلایل خاص خودشان را دارند. در ادامه، برخی از بزرگترین برنامه‌های ساخته شده با Node.js را معرفی و بررسی می‌کنیم. این اعتماد خود نشان از قدرت Nodejs است که به راحتی نمی‌توان از آن گذشت.

netflix

شرکت نتفلیکس که یکی از بزرگترین شرکت‌های پیشرو در زمینه سرگرمی آنلاین و بزرگترین پلتفرم استریم ویدیو در جهان است، از Node.js به دو دلیل استفاده می‌کند.

  1. مقیاس پذیری بالای برنامه‌های ساخته شده
  2. قابلیت پخش جریانی داده‌ها بدون افت کیفیت
  3. سبک و کم‌حجم بودن کدهای نوشته شده با Node.js

Medium

سایت مدیوم، یک پلتفرم انتشار محتواهای متنی است که نمونه ایرانی آن را با نام ویرگول می‌شناسیم. این پلتفرم به دلایل زیر از نود جی اس استفاده می‌کند:

  1. نگهداری و تعمیر ساده‌تر سرورها
  2. امکان اجرای تست A/B در برنامه
  3. امکان توسعه برنامه‌های کاربردی داده محور در مقیاس بزرگ

PayPal

شرکت پی‌پال، بزرگترین شرکت ارائه دهنده خدمات پرداخت آنلاین در جهان است. این شرکت دلایل زیر را برای استفاده از فریمورک نود جی اس بیان کرده است.

  1. سرعت بالای توسعه
  2. حجم کدنویسی پایین
  3. امکان مدیریت کدها در حجم بالا

NASA

شاید ناسا مشهورترین شرکتی باشد که از فریمورک Node.js در برنامه‌های خود استفاده می‌کند. این شرکت برنامه‌های فضایی غیرنظامی، فضانوردی و هوانوردی را در ابعاد مختلف توسعه می‌دهد. دلایل استفاده این شرکت از فریمورک Node.js را می‌توان موارد زیر دانست:

  1. کاهش زمان دسترسی و سرعت بالای ارسال و دریافت اطلاعات
  2. امکان توسعه برنامه‌ها و پروژه‌هایی که داده‌های سنگین و بسیار فشرده دارند.
  3. امکان فعال نگهداشتن سرورها به صورت دائمی

شما می توانید در راستای بهبود کیفیت دوره آموزش node js، نظرات، پیشنهادات و انتقادات خود را با ما در قسمت نظرات سایت در میان بگذارید.

ادامه متن دوره ...

سوالات متداول

‌‏چرا باید Node.js یاد بگیریم؟

دوره Node.js یک محیط اجرای قدرتمند است که به شما امکان اجرای جاوااسکریپت در سمت سرور را می‌دهد. یادگیری Node.js به شما این امکان را می‌دهد که برنامه‌های مقیاس‌پذیر و با عملکرد بالا ایجاد کنید. به ویژه برای ساخت برنامه‌های زمان‌واقعی، رابط‌های برنامه‌نویسی (APIs)، و میکروسرویس‌ها مناسب است. با مدل I/O غیر مسدودی که دارد، برای مدیریت تعداد زیادی از اتصالات همزمان بهینه است.

در این دوره مباحث از صفر گفته شده؟

بله، دوره آموزش node js از مباحث ابتدایی شروع شده و برای مباحث پیشرفته تراوش می‌کند، که آن را مناسب برای مبتدیان می‌سازد. این دوره از مفاهیم اساسی مانند راه‌اندازی، کار با ماژول‌ها، ورودی و خروجی فایل، و به مسائل پیشرفته‌تر مانند ساخت سرور مجازی، مسیریابی، و ادغام پایگاه داده می‌پردازد.

آیا برای دوره پیشنیازی وجود دارد؟

در دوره آموزش node js فرض شده که شما یک درک ابتدایی از جاوااسکریپت دارید، چرا که Node.js بر اساس آن ساخته شده است. آشنایی با مفاهیم توسعه وب مفید است اما به طور مشدد لازم نیست.

آیا دوره پشتیبانی داد؟

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

دوره آپدیت است؟

به‌روزرسانی‌های منظم اطمینان می‌دهد که محتوای دوره آموزش node js به‌روز و حاوی آخرین ویژگی‌ها و بهترین روش‌های توسعه با Node.js باشد. برای آگاهی از به‌روزرسانی‌ها، اعلان‌ها یا یادداشت‌های انتشار را بررسی کنید.