خودآموز سریع NestJS - قسمت دوم

آموزش سریع NestJS | معراج پارسا
آموزش سریع NestJS | معراج پارسا

سلام دوستان

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


😎 نکته :
من توی این مقاله ، بصورت خلاصه و جهت آشنایی با امکانات و بخش های مختلف NestJS بهتون آموزش میدم ولی زیر هر قسمت از آموزش مقاله تخصصی و کامل اون موضوع هم قرار دادم که میتونی ازشون استفاده کنی


خب ، تو این قسمت قراره راجع به مباحث دیگه مثل :

  • گاردها و میان‌افزارها
  • فیلترها و پایپ‌ها
  • آزمایش و تست‌نویسی
  • تزریق وابستگی (Dependency Injection)
  • بهینه‌سازی و بهترین شیوه‌ها

صحبت کنیم پس با من همراه باش تا باهم ، قدم به قدم به یک توسعه دهنده وب حرفه ای تبدیل بشیم

گاردها و میان‌افزارها

  • گاردها

گاردها برای کنترل دسترسی به مسیرهای مختلف استفاده می‌شن . اونا بر پایه دکوریتور @Injectable و اینترفیس CanActivate پیاده‌سازی می‌شن و به شما کمک می‌کنن تا امنیت و منطق سفارشی خودتون رو به برنامه اضافه کنید . برای ایجاد یه گارد جدید، از دستور زیر استفاده کنید :

nest generate guard app-guard    // شما بجای app-guard باید اسم مورد نظر خودتونو بزنید

این دستور یه فایل گارد جدید با نام app-guard.guard.ts ایجاد میکنه .

  • میان‌افزارها

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

nest generate middleware app-middleware    // شما بجای app-middlewareباید اسم مورد نظر خودتونو بزنید

این دستور یه فایل میان‌افزار جدید با نام app.middleware.middleware.ts ایجاد می‌کنه .

بزودی لینک آموزش تخصصی و کامل گاردها و میان‌افزارها رو اینجا قرار میدم



فیلترها و پایپ‌ها

فیلترها و پایپ‌ها ابزارهایی هستن که به شما کمک می‌کنن تا داده‌ها و خطاها رو مدیریت کنید

  • معرفی فیلترهای استثنا (Exception Filters)

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

 nest generate filter filter-name //بجای filter-name از اسم مورد نظر خودتون برای فیلتر استفاده کنین

این دستور یه فایل فیلتر جدید با نام filter-name.filter.ts ایجاد می‌کنه .

  • معرفی پایپ‌ها (Pipes)

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

nest generate pipe pipe-name //بجای pipe-name از اسم مورد نظر خودتون استفاده کنین

این دستور یه فایل پایپ جدید با نام pipe-name.pipe.ts ایجاد می‌کنه .

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



آزمایش و تست‌نویسی

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

  • نوشتن تست واحد (Unit Test)

برای نوشتن تست‌های واحد ، از کتابخانه‌هایی مثل Jest استفاده می‌شه . فایل‌های تست واحد به طور پیش‌فرض در کنار فایل‌های مربوطه ایجاد می‌شن .

  • نوشتن تست یکپارچه (Integration Test)

تست‌های یکپارچه برای بررسی عملکرد کلی سیستم استفاده می‌شن و می‌تونید اونا رو با استفاده از NestJS Testing Module پیاده‌سازی کنید .

بزودی لینک آموزش تخصصی و کامل آزمایش و تست‌نویسی رو اینجا قرار میدم



مباحث پیشرفته تر

تو این بخش به برخی مباحث پیشرفته تو NestJS می‌پردازیم که می‌تونن به شما تو بهبود کدهای خودتون کمک کنن .

  • تزریق وابستگی (Dependency Injection)

تزریق وابستگی یکی از مفاهیم کلیدی تو NestJS هست که به شما کمک می‌کنه وابستگی‌های مختلف رو مدیریت کنید و کدهای تمیزتری بنویسید . (بزودی لینک آموزش جامع تزریق وابستگی رو قرار میدم)

  • استفاده از ماژول‌های خارجی
  • جناب NestJS دارای اکوسیستم بزرگی از ماژول‌های خارجی هم هست که می‌تونید از اونا برای افزودن قابلیت‌های مختلف به برنامه خودتون استفاده کنید . (بزودی لینک آموزش جامع استفاده از ماژول‌های خارجی رو قرار میدم)
  • بهینه‌سازی و بهترین شیوه‌ها
  • برای بهینه‌سازی کدهای خودتون و پیاده‌سازی بهترین شیوه‌ها، می‌تونید از نکات و تکنیک‌های مختلفی که تو مستندات NestJS و منابع آموزشی موجود هست استفاده کنید . (بزودی لینک آموزش جامع بهینه‌سازی و بهترین شیوه‌ها رو قرار میدم)



جمع بندی

خب دوستان، توی قسمت اول و دوم آموزش سریع NestJS با همدیگه مباحث مختلفی مثل نصب و راه‌اندازی اولیه ، ساختار پروژه ، کنترلرها ، سرویس‌ها ، پایگاه داده ، گاردها و میان‌افزارها ، فیلترها و پایپ‌ها ، و تست‌نویسی رو پوشش دادیم . اگه دوست دارید بیشتر یاد بگیرید ، پیشنهاد می‌کنم مستندات رسمی NestJS و منابع آموزشی مختلف رو مطالعه کنید. موفق باشید


تمرین یادتون نره . خوشحال می‌شم نظرات و تجربیاتتو در مورد NestJS باهام به اشتراک بذاری

مخلصیم 🫡