این پست با هدف نظم دادن به چیزهایی که در مورد ASP.NET Core یاد گرفته‌ام نوشته شده. اگر مطالب علوم کامپیوتر و زبان csharp رو در حد مقدماتی بلد باشید، می‌تونید ازش به عنوان منبع آموزشی برای ASP.NET Core استفاده کنید.

اگر پیشنهادی برای اصلاح پست دارید، می‌تونید از طریق دکمه‌ی "پیشنهاد اصلاح متن" وارد ریپازیتوری وبلاگ در github بشید و تغییرات مورد نظرتون رو پیشنهاد بدید.

ASP.Net Core چیه؟

یک فریم‌ورک cross-platform (قابل اجرا در ویندوز، لینوکس و مک) و open-source مبتنی بر داتنت و زبان سی‌شارپ، که میشه باهاش برنامه‌های وب، سرویس و… بسازیم.

نام‌گذاری

مایکروسافت در نام‌گذاری اکوسیستم داتنت، مثل نام‌گذاری نسخه‌های ویندوز، دچار سرگیجه بوده. اگر به اکوسیستم داتنت نگاه کرده باشید، حتما اسم‌های زیادی دیده‌اید که باعث سردرگمی میشه.

  • Asp.Net Web Forms در سال 2002 معرفی شد، مشکلات performanceای زیادی داشت، فقط روی ویندوز اجرا می‌شد، open-source نبود و مدل توسعه‌اش event-driven بود
  • Asp.Net Mvc در سال 2009 معرفی شد، مشکلات performanceای کمتری داشت، فقط روی ویندوز اجرا می‌شد، اجرایش در cloud ساده نبود، open-source شد و مدل توسعه‌اش بر اساس الگوی model-view-controller بود
  • Asp.Net Core در سال 2016 معرفی شد، از ابتدا بازنویسی شد و مشکلات نسخه‌های قبلی رو حل کرد، cross-platform شد و دیگه مختص ویندوز نبود، cloud-friendly شد و مدل توسعه‌اش بر اساس الگوی model-view-controller بود

در داتنت‌کور، 4 ماژول اصلی داریم:

  • Asp.Net Core Mvc برای ساخت برنامه‌های وبِ متوسط تا پیچیده
  • Asp.Net Core Web API برای ساخت سرویس‌های RESTful که می‌تونن هر نوع clientای داشته باشن
  • Asp.Net Core Razor Pages برای ساخت برنامه‌های وبِ ساده‌ی متمرکز بر صفحه
  • Asp.Net Core Blazor برای ساخت برنامه‌های وب‌ای که هر دو سمت client و server با سی‌شارپ نوشته شده باشه

پیش‌نیازها

  • زبان سی‌شارپ
  • برنامه‌نویسی شی‌گرا
  • مفاهیم پایه‌ای فرانت مثل HTML و CSS و کمی JS
  • نصب Visual Studio (نسخه Community هم کافیه) و SSMS و Postman

سرفصل‌ها

سرفصل‌ها مطابق دوره‌ی Udemy Asp.Net Core 7 (.NET 7) True Ultimate Guide خواهد بود، البته مطالب بیشتری بهش اضافه خواهد شد. کدها رو می‌تونید در گیت‌هاب دوره ببینید.

قسمت بعدی رو در asp dotnet core (قسمت یک) ببینید.

منابع

udemy microsoft