آموزش Nodejs (نود جی اس) به صورت پروژه محور

سرفصل‌ها
مقدمه و معرفی
فصل 1
مفاهیم اولیه
فصل 2
جلسه1:کار با تابع reuiqre در Nodejs
00:17:46
جلسه2:نصب npm و استفاده کردن از ماژول Lodash
00:18:48
جلسه3:کار با Nodemon و نحوه ارسال پارامتر به خط فرمان
00:15:52
جلسه4:معرفی کلاس JSON و کار با داده json
00:13:41
پروژه مقدماتی (نرم افزار یادداشت برداری)
فصل 3
جلسه1:نرم افزار یادداشت برداری - افزودن یادداشت ها و ریفکتورینگ
00:21:54
جلسه2:نرم افزار یادداشت برداری - حذف یک یادداشت
00:07:02
جلسه3:نرم افزار یادداشت برداری - خواندن یک یادداشت و ریفکتورینگ
00:06:00
جلسه4:خطایابی (Debugging) با Devtools در Nodejs
00:18:08
جلسه5:نرم افزار یادداشت برداری - نمایش تمام یادداشت ها
00:04:55
کار با Yargs
فصل 4
جلسه1:دریافت ورودی از خط فرمان با استفاده از Yargs
00:15:37
جلسه2:آموزش command ها در Yargs (سطح پیشرفته)
00:13:02
کار با Api
فصل 5
جلسه1:کار با API ها و request ها در فعالیت های آسنکرون Nodejs
00:22:46
جلسه2:ارسال درخواست به سرور و تحلیل پاسخ توسط پلاگین request
00:14:43
جلسه3:دریافت آرگومان (yargs) و ارسال آن به پلاگین request
00:09:06
بهینه سازی پروژه با توابع Callback
فصل 6
جلسه1:بهینه سازی پروژه با توابع Callback
00:11:42
پروژه نرم افزار جستجو آب و هوا
فصل 7
جلسه1:نرم افزار جستجو آب و هوا: بکارگیری استفاده از DarkSky API
00:19:13
جلسه2:تکمیل کردن نرم افزار جستجوی آب و هوا با Promise و Axios
00:22:23
کار با Promise ها
فصل 8
جلسه1:معرفی کامل Promise در نود جی اس
00:17:55
Express js و Handlebar js
فصل 9
جلسه1:معرفی، نصب فریم ورک Expressjs در Nodejs
00:16:36
جلسه2:ایجاد قالب View در express و معرفی Handlebarsjs
00:16:17
جلسه3:معرفی partial view ها در Handlebarsjs و Nodejs
00:09:39
جلسه4:میان افزار ها (Middleware) در Expressjs و Nodejs
00:12:37
کار با Git
فصل 10
جلسه1:کار با Git و نحوه آپلود پروژه در Github (مقدماتی تا پیشرفته)
00:27:58
تست نویسی
فصل 11
جلسه1:معرفی Testing و ابزار Mocha برای تست Nodejs
00:15:36
جلسه2:استفاده از ابزار Expect برای Test داده های سنکرون و آسنکرون
00:24:52
جلسه3:استفاده از ابزار Supertest برای Test سرورهای واقعی Express
00:23:05
کار با MongoDB
فصل 12
جلسه1:آموزش نصب دیتابیس MongoDB و Robot 3T
00:16:16
جلسه2:اتصال MongoDB به Nodejs و CRUD - نوشتن اطلاعات در پایگاه داده
00:21:08
جلسه3:کار با کلاس ObjectID در MongoDB
00:08:52
جلسه4:عملیات CRUD - خواندن اطلاعات از پایگاه داده MongoDB
00:15:20
جلسه5:عملیات CRUD - حذف اطلاعات از پایگاه داده MongoDB
00:15:51
جلسه6:عملیات CRUD - بروزرسانی اطلاعات از پایگاه داده MongoDB
00:10:09
کار با Mongoose
فصل 13
جلسه1:آموزش ORM پایگاه داده MongoDB به نام Mongoose
00:12:58
جلسه2:اعتبارسنجی و تعیین نوع داده در Mongoose
00:10:01
جلسه3:شروع API نویسی در Nodejs و ترکیب آن با Mongoose
00:22:08
درخواست های HTTP
فصل 14
جلسه1:Test کردن مسیر API برای متد POST
00:26:21
جلسه2:ایجاد متد GET برای مسیر todos و Test کردن آن
00:13:59
جلسه3:دستیابی به یک todo خاص با متد GET و از مسیر todos/:id
00:22:18
جلسه4:حذف یک todo خاص با متد DELETE و از مسیر todos/:id
00:17:39
جلسه5:بروزرسانی یک todo خاص با متد PATCH و از مسیر todos/:id
00:31:27
احزار هویت کاربران (JWT)
فصل 15
جلسه1:احراز هویت - ثبت نام کاربران در Nodejs با توسعه مدل User
00:16:21
جلسه2:احراز هویت - معرفی Hashing و JWT در نود جی اس‌ (امنیت)
00:22:38
جلسه3:احراز هویت - ساخت Token و افزودن آن به پایگاه داده
00:16:30
جلسه4:احزار هویت - افزودن یک میان افزار به مسیر ها (محافظت Route)
00:19:51
جلسه5:احزار هویت - رمز گذاری و افزایش امنیت رمز عبور کاربران (Hashing)
00:16:01
جلسه6:احراز هویت - راه اندازی سیستم ورود و عضویت کاربران
00:17:19
پروژه نرم افزار پیام رسان (مشابه تلگرام) در بستر Socket.io
فصل 16
جلسه1:پروژه نرم افزار پیام رسان - نصب و تنظیمات اولیه
00:14:57
جلسه2:پروژه نرم افزار پیام رسان - معرفی و کار با Socket.io
00:15:23
جلسه3:پروژه نرم افزار پیام رسان - راه اندازی سیستم ایمیل با Socket.io
00:12:23
جلسه4:پروژه نرم افزار پیام رسان - راه اندازی سیستم پیام ها
00:16:39
جلسه5:پروژه نرم افزار پیام رسان - افزودن توابع به برنامه و تست آنها
00:12:39
جلسه6:پروژه نرم افزار پیام رسان - افزودن jQuery و ایجاد فرم ارسال پیام
00:13:54
جلسه7:پروژه نرم افزار پیام رسان - کار با Google Map و GeoLocation
00:27:04
جلسه8:پروژه نرم افزار پیام رسان - طراحی ظاهر نرم افزار مشابه تلگرام
00:16:39
جلسه9:پروژه نرم افزار پیام رسان - افزودن کتابخانه Moment برای مدیریت زمان
00:12:47
جلسه10:پروژه نرم افزار پیام رسان - افزودن Mustache.js و ارتقاء ظاهر نرم افزار
00:14:04
جلسه11:پروژه نرم افزار پیام رسان - افزودن قابلیت Auto Scroll به نرم افزار
00:08:50
جلسه12:پروژه نرم افزار پیام رسان - ایجاد صفحه ورود به چت روم
00:27:28
جلسه13:پروژه نرم افزار پیام رسان - حذف و اضافه شدن کاربران
00:32:18
کلیه فایل های پروژه
فصل 17
جلسه1:فایل های تمام پروژه های دوره آموزشی Nodejs
توضیحات دوره

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

نود جی اس (Nodejs) چیست؟

nodejs-roxo_thumb.jpg

در تعریفی که خود وب سایت نود جی اس ارائه کرده است، Nodejs یک پلتفرم بر مبنای موتور جاوا اسکریپت کروم (گوگل) است که به منظور توسعه پذیری سریع سمت سرور (Backend) مورد استفاده قرار می گیرد. در اصل در زبان های سمت سرور مانند PHP یا Java وقتی یک کاربر به سرور وصل می شود، یک درخواست یا Thread به ازای آن کاربر در سرور بوجود می آید. اگر تعداد اتصالات کاربران (به صورت همزمان) افزایش پیدا کند آنگاه باید منابع (مانند RAM) را ارتقاء داد و این امر باعث افزایش هزینه ها می گردد. Nodejs (نود جی اس) این مشکل را توسط روش تغییر اتصال به سرور حل می کند. بدین صورت که به جای اتصال از طریق یک درخواست (Thread)، از اتصال به صورت Event یا رویداد استفاده می کند.

از آنجا که Nodejs (نود جی اس) از موتور جاوا اسکریپت V8 استفاده می کند بنابراین این امکان برای شما فراهم است که با استفاده از زبان جاوا اسکریپت (Javascript) در سمت سرور (Backend) کدنویسی کنید و تمام درخواست ها را به صورت رویداد مدیریت نمایید.

چه سایت هایی از نود جی اس استفاده کرده اند؟ امروزه سایت های داخلی و بین المللی بسیاری از نود جی اس در پروژه های خود بهره برده اند: والمارت (Walmart)، ای بی و پی پال (Ebay - Paypal)، ماکروسافت (Microsoft)، لینکدین (LinkedIn)، یاهو (Yahoo) و گوگل (Google)‌ و ... .

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

  • ایجاد، تست و اجرای نرم افزارهای نود
  • ساخت وب سرور Express و API ها
  • ذخیره سازی داده ها در پایگاه داده Mongoose و MongoDB
  • استفاده از جاوا اسکریپت ES6 و ES7
  • ساخت نرم افزار واقعی چت با استفاده از Socket.io
  • بارگذاری نرم افزار نود در نسخه پروداکشن (محصول نهایی) روی سرور

پیش نیازها

یک کامپیوتر یا لپ تاپ که روی آن ویندوز، لینوکس یا مک نصب شده باشد!

آشنایی مقدماتی با مفاهیم زبان جاوا اسکریپت (Javascript)، مفاهیمی مانند: متغییرها، توابع، اشیاء، آرایه ها و جملات شرطی و ...)

شرح دوره

دوره ویدیویی آموزش Nodejs (نود جی اس - مقدماتی تا پیشرفته) تمامی مفاهیم و مبانی آموزش Nodejs (نود جی اس) را قبل از دسترسی به ابزارهایی مانند Express, Mongoose و MongoDB ارائه داده خواهد شد. در کل هدف اصلی این دوره تبدیل کردن شما به یک توسعه دهنده حرفه ای نود جی اس است. یعنی شما بتوانید پس از گذراندن این دوره تمامی نرم افزارها را با پلتفرم نود جی اس پیاده سازی کنید.

گذشته از مفاهیم آموزشی، در این دوره چهار پروژه آموزش داده خواهد شد:

  • نرم افزار یادداشت برداری (نوت برداری)
  • نرم افزار آب و هوا که با گوگل مپ و Dark Sky Api در ارتباط است
  • نرم افزار to-do list به صورت REST API با حساب کاربری و احراز هویت (Authentication)
  • نرم افزار پیام رسان (چت)

این دوره بر اساس آخرین نسخه نود جی اس (به تاریخ ضبط دوره) Nodejs 8 ارائه شده است.

اگر شما در یک شرکت مشغول به فعالیت هستید که به برنامه نویس Nodejs نیاز دارند اصلا نگران نباشید، مسئولیت برنامه نویسی Nodejs را به عهده بگیرید چون در این دوره تمام فنون و تکنیک های مورد نیاز برای ساخت اپلیکیشن ها را به شما آموزش می دهیم.

در انتهای این دوره شما با مفاهیم زیر به صورت حرفه ای آشنا می شوید:

  1. Node.js
  2. Npm
  3. Asynchronous programming
  4. ES6/ES7
  5. MongoDB
  6. Express
  7. Socket.IO
  8. JWT Authentication
  9. Mongoose
  10. Version control with Git
  11. GitHub
  12. REST API Design
  13. Code testing
  14. Debugging
  15. Mocha

حقوق یک برنامه نویس Node js

در کشور ایران یکی از علت هایی که برنامه نویسان به سمت نود جی اس (Nodejs) آمده اند، حقوق بسیار بالای این افراد است. در ایران به صورت متوسط یک برنامه نویس نود جی اس (Nodejs) به ازای یک ماه کار کردن مبلغی بین ۸ الی ۲۴ میلیون تومان را دریافت می کند. مطمئن هستم شما هم از این بازه بسیار عجیب و غریب شگفت زده شده اید. ولی حقیقت دارد! شرکت ها و کپمانی ها به شدت نسبت به این پلتفرم اعلام نیاز کرده اند.

پشتیبانی ۶ ماهه رایگان

دوستان عزیزی که این دوره را خریداری می کنند از ۶ ماه خدمات پشتیبانی رایگان بهره مند هستند. این خدمات به شما اجازه می دهد که از طریق بخش پیشخوان -> تیکت پشتیبانی سوالات خود را با مدرس مطرح کرده و در نهایت از مشاوره های فنی و تکنیکی در پروژه خود استفاده کنید. البته در صورتیکه تمایل دارید بیش از ۶ ماه (یک سال) از این خدمات بهره مند باشید لطفا تیک «۶ ماه پشتیبانی بیشتر» را بفشارید.

سرفصل ها

مقدمه و معرفی

  • مقدمه و معرفی دوره و مدرس
  • نصب نود
  • نود جی اس چیست
  • چرا باید از نود جی اس استفاده کنیم؟
  • استفاده از ویرایشگر 
  • اولین برنامه Nodejs

مبانی نود جی اس (Nodejs)

  • معرفی بخش
  • استفاده از پیش نیازها
  • معرفی فایل های مورد نیاز
  • استفاده از ماژول های خارجی
  • ری استارت کردن نرم افزار با استفاده از Nodemon
  • دریافت ورودی از کاربران
  • ساده سازی ورودی ها با استفاده از Yargs
  • کار با JSON
  • اولین پروژه: راه اندازی نرم افزار یادداشت برداری (نوت برداری)
  • افزودن و ذخیره یادداشت ها
  • ریفکتور کردن کدها برای استفاده مجدد
  • حذف یک یادداشت
  • خواندن یادداشت ها و استفاده مجدد از آنها
  • دیباگ کردن نرم افزار Nodejs
  • دیباگ کردن با استفاده از ابزار Dev Tools گوگل کروم
  • لیست کردن یادداشت ها
  • استفاده از آرگومان ها و سطح پیشرفته Yargs
  • توابع Arrow

Nodejs به صورت غیر همزمان

  • معرفی بخش
  • مفاهیم اولیه غیر همزمانی (آسنکرون = Async)
  • فراخوانی حلقه رویداد (Event) و پشته (Stack)
  • توابع کال بک (بازگشتی) و API ها
  • نمایش اشیاء
  • چطوری یک درخواست HTTP ایجاد می شود
  • رمزگذاری ورودی کاربران
  • خطاها (Callbacks Errors)
  • کال بک های چکیده (Abstracting Callbacks)
  • دومین پروژه: نرم افزار تشخیص آب و هوا
  • نوشتن یک سیستم جستجوی آب هوا
  • اتصال کال بک ها به یکدیگر
  • معرفی Promise ها در اکما اسکریپت ۶ (ES6)
  • سطح پیشرفته Promise ها
  • اعمال Promise ها به نرم افزار تشخیص آب و هوا

وب سرور ها و نرم افزار توسعه

  • معرفی بخش
  • نمایش متن Hello در Express
  • ساخت یک وب سرور
  • رندر کردن قالب ها به همراه داده
  • سطح پیشرفته قالب ها
  • معرفی Middleware وب سرور Express
  • افزودن Git
  • نصب GitHub و کلیدهای SSH
  • بارگذاری نرم افزارها روی سرور

تست کردن پروژه

  • معرفی بخش
  • معرفی Mocha و آزمایش مقدماتی
  • معرفی ابزارهای Watch و Auto Restart
  • استفاده از کتابخانه Assertion
  • تست کردن کدهای آسنکرون
  • تست کردن وب سرور اکسپرس
  • بهینه سازی تست با استفاده از describe

منگو دی بی (MongoDB) و Mongoose و REST API‌ ها

  • معرفی بخش
  • نصب MongoDB و Robomongo
  • ساخت یک NoSQL
  • اتصال به Mongo و نوشتن داده روی آن
  • معرفی ObjectId
  • فراخوانی داده
  • نصب Repo
  • حذف مستندات و داده ها
  • بروزرسانی داده
  • آشنایی با Mongoose ORM
  • نصب Mongoose
  • اعتبارسنجی، انواع داده و Default ها
  • نصب ابزار Postman
  • سومین پروژه: نرم افزار Todo-list
  • ساخت منابع POST برای todo
  • تست POST برای todo
  • نمایش منابع GET برای todo
  • تست GET برای todo
  • دریافت کوئری های Mongoose و اعتبارسنجی شناسه
  • دریافت یک منبع GET مشخص برای یک todo
  • تست منبع مشخص ٍGET برای todo
  • استخراج API از هاست
  • محیط های Postman
  • حذف یک منبع DELETE برای یک todo
  • تست یک منبع DELETE برای یک todo
  • بروزرسانی یک منبع PATCH برای یک todo
  • تست کردن یک منبع PATCH برای یک todo
  • ایجاد یک دیتابیس تست

امنیت و احراز هویت

  • معرفی بخش
  • راه اندازی مدل User
  • معرفی JWT و Hashing
  • ایجاد توکن Auth و پیاده سازی آن روی Header ها
  • ایجاد مسیرهای (Routes) اختصاصی و Auth Middleware
  • رمزگذاری پسوردها
  • قرار دادن اطلاعات تصادفی روی دیتابیس با استفاده از مدل Users
  • تست کردن کاربران با متد POST در جدول users
  • ورود کاربران (Log in)
  • تست کردن ورود کاربران
  • خروج کاربران و حذف توکن با استفاده از متد DELETE
  • تست کردن خروج کاربران
  • ایجاد مسیرهای خصوصی (محافظت شده) Todo
  • بهبود تنظیمات نرم افزار
  • بارگذاری نرم افزار روی هاست

نرم افزار پیام رسان (چت) با استفاده از Socket.io

  • معرفی نرم افزار
  • ساخت پروژه جدید
  • افزودن پلتفرم Socket.io به پروژه
  • اعمال رویدادها و گوش دادن به آنها با استفاده از Emit و Listen
  • یادگیری Broadcasting Event
  • ایجاد پیام ها و تست آنها
  • فرم های ارسال پیام و استفاده از jQuery
  • موقعیت جغرافیایی کاربر
  • استایل دادن به صفحه چت کاربران
  • نمایش پیام ها
  • استفاده از کتابخانه Moustache.js
  • راه اندازی قابلیت اسکرول خودکار (Autoscolling)
  • ساخت یک صفحه Join
  • ارسال اطلاعات به اتاق ها
  • استفاده از Socket.io در اتاق ها
  • ذخیره کاربران با استفاده از کلاس ها در ES6
  • ذخیره لیست کاربران
  • ارسال پیام ها به اتاق ها
افزودن به سبد خرید
415000 تومان
گارانتی بازگشت وجه روکسو
این دوره ۱۰۰٪ گارانتی کیفیت و بازگشت وجه دارد. مشاهده شرایط و مراحل
اینترنت نیم بها در روکسو
هزینه حجم اینترنت شما برای دانلود و تماشای ویدئوهای این دوره نیم‌بها محاسبه می‌شود.
کارما در روکسو
شما با شرکت در این دوره 40 کارما دریافت می کنید
استفاده بیش از یک نفر از این محصول غیرقانونی و از لحاظ شرعی حرام می‌باشد.
میزان پیشرفت دوره:
٪100
364 نفر
شرکت کرده‌اند
65 نظر
ثبت شده است
امتیاز (57 رای)
کد دوره:
166815
آخرین بروزرسانی:
1401-9-22
وضعیت دوره:
تکمیل شده
تعداد جلسات:
62
مدت زمان:
17:11:04
حجم کل:
2.6 گیگابایت
سطح:
تمام سطوح
مسعود صالحی
مدرس: مسعود صالحی
1725 کارما
بیش از ۲ سال عضویت در روکسو بیش از ۲ سال عضویت در روکسو
دارای 1000 کارما دارای 1000 کارما
نظرات دریافتی:‌ بیش از 50 نظرات دریافتی:‌ بیش از 50
دارای 25 پاسخ صحیح دارای 25 پاسخ صحیح
ارسال کننده پاسخ با 25 رای ارسال کننده پاسخ با 25 رای
دیدگاه‌های شما (65 دیدگاه)

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

aliakbari1994@yahoo.com
ali
05 مرداد 1397

راجع به Design Pattern ها . همینطور اپ های بلادرنگ قوی هم در این دوره صحبت کنید. ممنون

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

masoud@gmail.com
رضا یزدانی
05 مرداد 1397

سلام

یه سایتی توی ایران پیدا شد که دوره های اصولی ارائه میده. واقعا ممنونم از استاد عزیز. خیلی خیلی خوب دارم یاد می گیرم. امیدوارم تا آخرش همینطوری باشه

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

ddd@yahoo.com
حسین
03 مرداد 1397

سلام وقت بخیر لطفا این دو مورد هم اموزش بدین .. 1- اپلود پروژه روی vps و 2-استفاده از vue در نود با api

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

incode.ir@gmail.com
رضا رستمی
02 مرداد 1397

درصورت امکان در این دوره قسمت front end این پروژه رو با vuejs بزنین 

بنده دوره vuejs رو خریداری کردم میخوام طریقه ب کارگیری در node js به صورت حرفه ایی یاد بگیرم

ممنون 

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

hosseinialireza485@gmail.com
alireza hosseini
02 مرداد 1397

با سلام
برای front با nodejs شما بین vue,react  وangular  کدوم رو پیشنهاد میکنین؟

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

تیم مدیریت روکسو
تیم مدیریت روکسو
02 مرداد 1397

سلام وقت شما بخیر

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

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

پیگیری مطالب جذاب و تخفیف‌ها
اینستاگرام روکسو تلگرام روکسو ایمیل و خبرنامه روکسو