63f3

آموزش Minimal API در Asp.net Core

کدسل برنامه نویسی وب Asp.Net Core

لینک کوتاه https://codecell.ir/course/63f3
مدرس: سهراب قیصری
تعداد ویدیوها: 2
مدت زمان دوره: 01:02:40
وضعیت دوره: به اتمام رسیده
آخرین بروزرسانی: 1402/09/16
به اشتراک گذاری
نظرات
2
دیگر آموزش های مدرس:
Minimal API در Asp.net Core

چارچوب های توسعه وب با هدف ارائه راه حل های سریع تر و کارآمدتر به توسعه دهندگان به تکامل خود ادامه می دهند. در دنیای توسعه وب مایکروسافت، ASP.NET Core گام های مهمی در این زمینه برداشته است و ویژگی قدرتمندی به نام «Minimal APIs» را معرفی کرده است. این API ها یک رویکرد ساده برای توسعه وب ارائه می دهند و توسعه دهندگان را قادر می سازند تا به سرعت برنامه های کاربردی وب سبک وزن و کارآمد بسازند. در این آموزش، مفهوم Minimal API ها در ASP.NET Core را به صورت عملی بررسی خواهیم کرد و در مورد اینکه چگونه می توانند تجربه توسعه را افزایش دهند، بحث خواهیم کرد.

آشنایی با Minimal API

Minimal API ها رویکرد جدیدی هستند که در ASP.NET Core 6.0 با هدف ساده سازی فرآیند توسعه، کاهش کد و روش سنتی ایجاد برنامه های کاربردی وب معرفی شد. Minimal API یک نحو مختصر ارائه می دهند که به توسعه دهندگان اجازه می دهد Route ها را تعریف کنند، درخواست ها را مدیریت کنند و پاسخ هایی را با حداقل کد تولید کنند.

داستان Minimal API  در نوامبر 2019 آغاز شد. جامعه توسعه دهندگان فرصتی برای مشاهده پیاده سازی ماشین حساب توزیع شده در Go، Python، سی شارپ و Javascript پیدا کردند. هنگامی که جامعه شروع به مقایسه تعداد فایل ها و خطوط کد برای انجام تقریباً یک کار با سی شارپ در مقایسه با زبان های دیگر کرد، مشخص شد که C# از بقیه آنها پیچیده تر به نظر می رسد.

تعداد مفاهیم و ویژگی‌ هایی که در طول سال‌ ها انباشته شده‌اند می تواند برای یک تازه‌ وارد که می خواهد به دنیای توسعه وب دات نت بپردازد ممکن است طاقت‌ فرسا باشد. بنابراین، یک تیم .Net Core  می خواست پیچیدگی را برای همه توسعه دهندگان (تازه واردان و قدیمی ها) کاهش دهد و از مینیمالیسم استقبال کنند. بنابراین اگر می‌خواهیم یک API ساده با یک endpoint واحد ایجاد کنیم، باید بتوانیم آن را در یک فایل واحد انجام دهیم. اما اگر بعداً برای استفاده مجدد از Controller ها نیاز به جابجایی داشته باشیم، باید بتوانیم این کار را نیز انجام دهیم.

چرا ASP.NET Core Minimal API؟

در چندین نسخه از NET Core و .NET، عملکرد تمرکز اصلی تیم دات نت بوده است. در حالی که ASP.NET Core MVC یک رویکرد قوی برای ساخت  API های وب است، پیچیدگی خط لوله MVC منجر به اتلاف زمان و منابع زیادی در هنگام پردازش درخواست‌های HTTP ورودی می‌شود.

مراحل یک درخواست استاندارد ASP.NET Core MVC شامل مسیریابی، مقداردهی اولیه کنترلر، اجرای عملیات با اتصال مدل و فیلترها، و نتیجه فیلترها است. پردازش درخواست معمولاً یک فرآیند 17 مرحله‌ای است که در صورت استفاده از view engine ها، مراحل بیشتری را در بر می‌گیرد. هنگام ساخت API های مبتنی بر JSON، ممکن است این مراحل را "غیر ضروری" ببینید و فرصت‌ های خود را برای توان عملیاتی بیشتر کاهش دهید.

در نهایت، Minimal API ها با الگوهای برنامه نویسی توسعه یافته در دهه گذشته مطابقت دارند و بر میکروسرویس ها تأکید می کنند و عملکردی را که هر میزبان ارائه می دهد محدود می کند. در عمل، برنامه‌های کاربردی ساخته‌ شده با Minimal API به راحتی می‌توانند در یک فایل قرار بگیرند و عملکرد را در یک مکان آسان برای خواندن بیان کنند. برخی از توسعه دهندگان این صراحت را به انبوه کنترلرها، مدل ها و ویوهای ASP.NET Core MVC ترجیح می دهند.

استفاده از Minimal API به معنای شروع مجدد نیست، بلکه فرصتی برای بهینه سازی است.

مزایای استفاده از Minimal API

بهره وری بیشتر:

Minimal API بر کاهش کدهای غیر ضروری تمرکز می کنند و در نتیجه بهره وری را برای توسعه دهندگان افزایش می دهند. با خطوط کد کمتری برای نوشتن و نگهداری، توسعه‌دهندگان می‌توانند تمرکز بیشتری روی عملکرد اصلی برنامه‌های خود داشته باشند که منجر به چرخه‌های توسعه سریع‌تر می‌شود.

بهبود عملکرد:

با حذف انتزاعات غیر ضروری و کاهش سربار مرتبط با چارچوب های وب سنتی، Minimal API به بهبود عملکرد برنامه های ASP.NET Core کمک می کنند. ماهیت سبک این Minimal API ها پردازش سریع تر درخواست و مقیاس پذیری بهبود یافته را تضمین می کند و برنامه ها را قادر می سازد تا ترافیک بیشتری را با حداقل مصرف منابع مدیریت کنند.

نگهداری آسان تر:

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

یادگیری Minimal API در ASP.NET Core طیف وسیعی از مزایا را به توسعه دهندگان ارائه می دهد، از جمله افزایش بهره وری، فرآیندهای توسعه ساده، بهبود عملکرد ، نگهداری آسان تر، انعطاف پذیری و غیره. با استفاده از Minimal API، توسعه دهندگان می توانند از مجموعه ابزار قدرتمندی برای ساخت برنامه های کاربردی وب کارآمد، مقیاس پذیر و قابل نگهداری استفاده کنند.

سرفصل های دوره آموزش Minimal API ها در Asp.net Core 7:

ما در این دوره آموزشی یک عملیات CRUD را با استفاده از Minimal API ها در Asp.net Core 7 پیاده سازی خواهیم کرد. همچنین در این دوره آموزشی نحوه استفاده از Filter ها در Minimal API ها را بررسی خواهیم کرد.
اگر به این دوره آموزشی و مبحث Minimal API ها در Asp.net Core علاقه مند هستید، می توانید مباحث تکمیلی Minimal API را در دوره آموزش جامع Web API در Asp.net Core دنبال نمایید.

مباحث مربوط به Minimal API که در دوره Web API پوشش داده خواهد شد به شرح زیر است:

  • نحوه احراز هویت در Minimal API ها
  • نحوه اعتبارسنجی مدل های ورودی با استفاده از FluentValidation در Minimal API ها
  • نحوه پیاده سازی Global Error Handeling در Minimal API ها
  • نحوه ورژن بندی API ها در Minimal API ها

نتیجه گیری:

Minmial API ها در ASP.NET Core یک رویکرد کارآمدتر برای توسعه وب ارائه می دهند و فرآیند توسعه را ساده می کنند و در عین حال عملکرد و مقیاس پذیری بهینه را تضمین می کنند. با استفاده از Minimal API، توسعه دهندگان می توانند برنامه های کاربردی سبک وزن، قابل نگهداری و با کارایی بالا بسازند.

دریافت سورس پروژه آموزش Minimal API ها در Asp.net Core 7

فهرست ویدیوها
مدت زمان دوره: 01:02:40
01

آموزش استفاده از Minimal API ها در Asp.Net Core 7

00:50:43
02

روش های سازماندهی Minimal API ها در دات نت

00:11:57

مقالات آموزش برنامه نویسی مدرس

Response Caching در ASP.NET Core

Response Caching یک مکانیزم ذخیره سازی پاسخ سرور توسط مرورگر یا سایر کلاینت ها است. با استفاده از Response Caching در Asp.net Core می توانیم عملکرد و کارایی سیستم را بالا ببریم.

669 0 1402/10/22

Output Caching در ASP.NET Core 8.0

Output Caching یک ویژگی جدید است که از زمان .NET 7 معرفی شده است. این ویژگی به ما این امکان را می دهد که به راحتی یک کش پاسخ برای Web API خود بدون پیاده سازی IMemoryCache راه اندازی کنیم.

723 0 1402/10/14

الگوی طراحی زنجیره مسئولیت در سی شارپ

الگوی زنجیره مسئولیت یا Chain of Responsibility Design Pattern یک الگوی طراحی رفتاری(behavioral design pattern) است که اجازه می‌دهد یک درخواست در امتداد زنجیره‌ای از کنترل‌کننده‌های بالقوه ارسال شود تا زمانی که درخواست مناسب برای پردازش آن را پیدا کند.

685 2 1402/10/01

ViewComponent در ASP.NET Core

در ASP.NET Core با استفاده از ViewComponent ها می توان اجزای ماژولار، قابل استفاده مجدد، قابل نگهداری و مقیاس پذیر برای ساخت برنامه های کاربردی وب ایجاد کرد. در این مقاله به نحوه ایجاد و فراخوانی ViewComponent در Asp.net core پرداخته ایم.

1٬431 2 1402/05/15

تطبیق الگو در NET 7: ساده سازی تجزیه و تحلیل داده ها

تطبیق الگو یا Pattern Matching در net7 یک تکنیک قدرتمند برای تجزیه و تحلیل و دستکاری داده ها بر اساس ساختار آن ها است. تطبیق الگو یا Pattern Matching به توسعه دهندگان اجازه می دهد تا مقادیر را با یک الگوی خاص مطابقت دهند و اقدامات مربوطه را انجام دهند.

880 1 1402/04/05

تزریق وابستگی در ASP.NET Core

تزریق وابستگی (DI) یک الگوی طراحی نرم افزاری است که امکان ایجاد برنامه های کاربردی و ماژولار را فراهم می کند.. در .NET Core تزریق وابستگی یا Dependency injection یک ویژگی مهم است که می تواند برای ساده سازی توسعه برنامه، بهبود تست پذیری و کاهش پیچیدگی کد مورد استفاده قرار گیرد.

1٬964 1 1402/02/04

ضروری ترین کتابخانه های NuGet برای ASP.NET Core

در این مقاله مهمترین،ضروری ترین و پرکاربردترین کتابخانه های NuGet که هر توسعه‌ دهنده‌ ASP.NET Core باید برای توسعه بهتر و کاهش زمان مورد نیاز برای برنامه ‌های خود از آن استفاده کنند را مورد بررسی قرار داده ایم.

1٬517 1 1401/12/29

الگوی طراحی Factory در سی شارپ

الگوهای طراحی یکی از مهمترین جنبه های طراحی و معماری نرم افزار است. Factory Method یک الگوی طراحی ایجادی است که یک رابط برای ایجاد اشیاء در یک سوپر کلاس فراهم می‌کند. ما در این مقاله الگوی Factory Method Design در سی شارپ را بررسی می کنیم.

1٬642 1 1401/10/28

مقایسه List و Array در سی شارپ

آرایه و لیست در سی شارپ هر دو به عنوان مجموعه ای از مقادیر عمل می کنند، اما در نحوه ذخیره محتوای خود در حافظه و نحوه دسترسی به آنها متفاوت هستند. در این مقاله Benchmark و کارایی List<T> با سایز داینامیک، List<T> با سایز ثابت و Array ها را بررسی می کنیم.

2٬221 2 1401/09/01

LinkedList در سی شارپ

LinkedList یا لیست پیوندی در سی شارپ یک ساختار داده خطی است که عنصر را در مکان غیر پیوسته ذخیره می کند. LinkedList شامل گره هایی است که هر گره حاوی یک فیلد داده و یک مرجع (پیوند) به گره بعدی در لیست است. در سی شارپ، LinkedList یا لیست پیوندی یک نوع مجموعه جنریک است.

2٬046 0 1401/08/13

Garbage Collection در دات نت

به طور کلی، Garbage Collection (GC) یا جمع آوری زباله در .Net چیزی نیست جز به دست آوردن مجدد حافظه اختصاص داده شده به اشیایی که در حال حاضر در هیچ بخشی از برنامه ما استفاده نمی شوند. ما در این مقاله Garbage Collection را در سی شارپ بررسی خواهیم کرد.

2٬838 5 1401/03/30

.NET Core چیست؟

.Net (با تلفظ «دات نت») یک چارچوب نرم افزاری کامپیوتری مدیریت شده رایگان و منبع باز برای سیستم عامل های ویندوز، لینوکس و macOS است. این پروژه در درجه اول توسط کارمندان مایکروسافت از طریق دات نت توسعه یافته و تحت مجوز MIT منتشر شده است.

2٬587 2 1401/03/16

پشته(Stack) در سی شارپ

پشته یا Stack در سی شارپ یک نوع خطی از ساختار داده است که قادر به ذخیره اشیاء است. پشته یک ساختار داده LIFO یا Last-In-First-Out است، به این معنی که آخرین موردی که در پشته قرار می گیرد اولین موردی است که از پشته خارج می شود.

2٬187 0 1401/03/09

صف (Queue) در سی شارپ

صف (Queue) در سی شارپ یک نوع خطی از ساختار داده است که قادر به ذخیره اشیاء است. Queue یک ساختار داده first-in-first-out یا FIFO است که به این معنی است که اولین مورد اضافه شده به صف اولین موردی است که حذف می شود.

2٬162 0 1401/02/30

تفاوت Hashtable و Dictionary در سی شارپ

در سی شارپ از Hashtable و Dictionary می توان برای ذخیره مجموعه‌ای از داده‌ها، شبیه به List معمولی استفاده کرد. با این تفاوت که Hashtable و Dictionary عناصر را به عنوان جفت Key/Value ذخیره می کنند.در این مقاله به تفاوت های Hashtable و Dictionary پرداخته شده است.

1٬843 1 1401/02/23

Dictionary در سی شارپ

در سی شارپ از دیکشنری ها (Dictionary) می‌توان برای ذخیره مجموعه‌ای از داده‌ها، شبیه به List معمولی استفاده کرد. تفاوت اصلی این است که یک Dictionary می تواند عناصر را به عنوان جفت Key/Value ذخیره کند.Key ها باید منحصر به فرد و نمی توانند null باشند. Value ها می توانند تکراری یا null باشند.

2٬249 3 1401/02/17

Hashtable در سی شارپ

از Hashtable می‌توان برای ذخیره مجموعه‌ای از داده‌ها، شبیه به List معمولی استفاده کرد. تفاوت اصلی این است که یک Hashtable می تواند عناصر را به عنوان جفت Key/Value به عنوان جایگزینی برای استفاده از Index ذخیره کند.

1٬721 5 1401/02/14

Redirect درخواست (ریدایرکت) در asp.net core

در برنامه های ASP.NET Core برای تغییر مسیر(ریدایرکت) و Redirect به یک URL خاص روش های مختلفی وجود دارد. در این مقاله با این تکنیک ها و کدهای مورد نیاز برای تغییر مسیر یک درخواست در ASP.NET Core آشنا می شویم.

2٬562 5 1401/02/12

تبدیل enum به لیست انتخابی در asp.net core

در این آموزش ما بوسیله Reflection ها در سی شارپ و asp.net core یک enum را به لیست انتخابی یا SelectListItem تبدیل خواهیم کرد و بوسیله تگ select در بوت استرپ 5 نمایش می دهیم.

1٬753 3 1401/02/03

نحوه ارسال ایمیل در asp و c#

امروزه ارسال ایمیل به امری ضروری در پروژه های وب تبدیل شده است.از ارسال ایمیل در asp می توان در بخش های تایید حساب کاربری،بازیابی رمز عبور،ایمیل مارکتینگ،ارسال خبرنامه و ... استفاده نمود.در این آموزش نحوه ارسال ایمیل در asp core و سی شارپ پیاده سازی گردیده است.

2٬582 5 1401/02/03
نظرات

برای ثبت نظر باید در سایت ثبت نام یا ورود نمایید