آشکار کردن NestJS: توسعه بکاندهای مستحکم و قابل نگهداری
✅ سرفصل و جزئیات آموزش
آنچه یاد خواهید گرفت:
- به طور مؤثر به ابزارهای فریمورک NestJS مسلط شوید.
- یک REST API (تا حدودی) واقعی را از ابتدا توسعه دهید.
- یک معماری مستحکم و همهکاره ایجاد کنید.
- همان اپلیکیشن را از ابتدا با ویژگیها و بهبودهای جدید گسترش دهید.
توضیحات دوره
به آشکار کردن NestJS خوش آمدید! در این بخش، مدرس مشکلی را که این دوره قصد دارد به آن بپردازد، هدف آن و در نهایت ساختار آن را توضیح خواهد داد.
مشکل
Node.js یک محیط اجرایی بکاند JavaScript است که در سالهای اخیر محبوبیت بالایی کسب کرده است و یکی از دلایل آن این است که اجازه میدهد از یک زبان برنامهنویسی مشابه (JavaScript) برای توسعه فرانتاند و بکاند استفاده کنید. با این حال، اگر به تنهایی استفاده شود، محیط نسبتاً «خامی» برای توسعه است زیرا شما مسئول موارد زیر هستید:
- پیکربندی کتابخانهها
- معماری کد
- مسیریابی
- و موارد دیگر
برای توسعه سیستمهای مستحکم به روشی حرفهای، نوشتن کد در Node.js خالص ممکن است چندان جالب نباشد. بسیاری از اوقات، ممکن است متوجه شوید که در حال «اختراع مجدد چرخ» هستید در حالی که راهکارهای تثبیتشده و بهینهای از قبل وجود دارند، و حفظ سیستم در طول زمان ممکن است به طور فزایندهای دشوارتر شود. به طور خلاصه، این مشکلی است که این دوره قصد حل آن را دارد.
هدف
قصد اصلی این دوره نشان دادن چگونگی استفاده از بیشترین پتانسیل فریمورک NestJS است که در سالهای اخیر به سرعت ظهور کرده است. ما این کار را با تمرکز بر راهکارهای معماری ظریف انجام خواهیم داد، در حالی که همه چیز را به روشی بصری و دلپذیر یاد میگیریم.
در اینجا، تمام درسها با استفاده از یک رویکرد کاملاً عملی آموزش داده میشوند و ما تئوری را تنها در زمان نیاز برای حل مشکلاتی که در طول مسیر به وجود میآیند، مطالعه خواهیم کرد. این دوره همچنین تدریجی است، به این معنی که ما توسعه سیستم بکاند خود را از پایه شروع خواهیم کرد و در طول دوره آن را با قابلیتها و ارتقاءهای بیشتر بهبود میبخشیم.
یک نکته مهم، رویکرد به معماری و طراحی کد که در اینجا استفاده میشود شبیه به یک پیشنهاد است. هیچ راه کاملاً بینقص و بدون خطایی برای توسعه یک سیستم، به ویژه یک سیستم پیچیده، وجود ندارد. با این اوصاف، شما آزاد هستید و حتی دعوت میشوید تا هر زمان که صلاح دیدید تغییراتی در کد ایجاد کنید. این همچنین یک راه عالی برای توسعه تواناییها و حس انتقادی شما در مورد کیفیت کد است.
ساختار
ما سیستم بکاند یک فروشگاه آنلاین را توسعه خواهیم داد. هر چیزی که مطالعه خواهیم کرد معطوف به ایجاد این اپلیکیشن خواهد بود. قوانین کسب و کار و در نتیجه نمودار UML آن ساده هستند، اگرچه روابط و کاردینالیتیهای جالبی وجود دارد. با این حال، تمرکز روی خود منطق تجاری نخواهد بود، بلکه بر روی راهکارهایی است که برای پیادهسازی و اجرای آن به کار خواهیم گرفت. نمودار کلاس به دلیل سادگی و در عین حال کامل بودن، بسیار شبیه (با تغییرات جزئی) به نموداری است که در دوره Java (همچنین در Udemy) توسط پروفسور Nélio Alves یافت میشود.
ماژول Core به بررسی این موضوعات میپردازد:
- ایجاد پروژه
- پیکربندی پروژه (ارگونومی/DX)
- تولید و راهاندازی منبع (entity/module/controller/service و غیره)
- اعتبارسنجی (100% مبتنی بر DTO)
- ایجاد پایگاه داده (با Docker)
- ادغام TypeORM
- پیکربندی (متغیرهای محیطی)
- و موارد دیگر
دوره کامل شامل ماژولهای زیر است:
- ماژول Core - توسعه بکاند با NestJS (در دسترس)
- ماژول بهبودها/نکات (در دسترس)
- ماژول موازی - Prisma (به زودی)
- ماژول اضافی 1 - Authentication/Authorization (به زودی)
- ماژول اضافی 2 - Exception Filters (به زودی)
- ماژول اضافی 3 - OpenAPI Specification (به زودی)
- ماژول اضافی 4 - مدیریت فایل (به زودی)
- ماژول اضافی 5 - کوئری پیشرفته (به زودی)
- ماژول اضافی 6 - تست خودکار (به زودی)
و در نهایت، مدرس فقط میخواهد یادآوری کند که در طول کل دوره، معماری همیشه در درجه اول اهمیت قرار دارد.
این دوره برای چه کسانی مناسب است؟
- توسعهدهندگان Node.js که خواهان روش بهتری برای معماری اپلیکیشنهای خود هستند.
- توسعهدهندگان مبتدی NestJS که میخواهند تسلط بهتری به این فریمورک داشته باشند.
- توسعهدهندگان NestJS که میخواهند سازماندهی کد و معماری خود را بیشتر بهبود ببخشند.
- توسعهدهندگانی که چیزی بیش از یادگیری ویژگیهای خاص میخواهند: توسعه سیستمهای بکاند مستحکم، مقیاسپذیر و قابل نگهداری
آشکار کردن NestJS: توسعه بکاندهای مستحکم و قابل نگهداری
-
ارائه 07:49
-
ابزارهای مورد نیاز 04:04
-
ایجاد پروژه 05:27
-
پیکربندی پایه 16:28
-
اولین موجودیت - کاربر 05:12
-
اعتبارسنجی 07:46
-
اعتبارسنجی اولیه 05:06
-
اعتبارسنجی مشخصتر 02:40
-
ممنوعیت فیلدهای ناشناس 02:55
-
چه چیز دیگری میتواند اعتبارسنجی شود؟ 05:36
-
اعتبارسنجی شناسه 07:42
-
فایل اختصاصی Options 03:04
-
ایجاد پایگاه داده با Docker 04:32
-
ادغام TypeORM 01:40
-
اتصال پایگاه داده 03:34
-
نگاشت موجودیت 06:07
-
مایگریشنها 13:01
-
الگوی Repository 11:26
-
صفحهبندی 14:25
-
محدودیتهای DTO 04:15
-
کامپوزیشن دکوراتورها 08:22
-
پیکربندی 02:05
-
متغیرهای محیطی 05:13
-
دسترسپذیری و اعتبارسنجی 05:17
-
استفاده از متغیرها 04:38
-
Namespace پیکربندی و ثبت جزئی 05:03
-
کاهش کدهای Boilerplate 03:54
-
موجودیت سفارش 13:21
-
موجودیت پرداخت 07:18
-
موجودیت دستهبندی 03:13
-
موجودیت محصول 05:41
-
موجودیت آیتم سفارش 09:57
-
منطق دستهبندی 06:16
-
منطق محصول 08:15
-
اعتبارسنجی موجودیت 07:33
-
منطق سفارش 15:42
-
افشای فیلدهای Get 04:51
-
منطق پرداخت 09:48
-
Seed کردن 09:48
-
جمعبندی 03:09
-
ارائه 00:33
-
Soft Delete چیست؟ 00:50
-
مشکلی در تبدیل ضمنی 02:23
-
رفع مشکل - Casting نوع Boolean 07:22
-
Soft Delete 07:28
-
بازیابی 05:33
-
اعتبارسنجی رمز عبور 00:46
-
الگوی Regex 02:39
-
اعتبارسنج سفارشی 06:07
-
CORS 01:22
-
Helmet 01:10
-
اعمال بهتر LF 03:00
-
UUID 02:26
مشخصات آموزش
آشکار کردن NestJS: توسعه بکاندهای مستحکم و قابل نگهداری
- تاریخ به روز رسانی: 1405/04/02
- سطح دوره:متوسط
- تعداد درس:53
- مدت زمان :05:13:52
- حجم :1.99GB
- زبان:دوبله زبان فارسی
- دوره آموزشی:AI Academy