مزایای نسخه ASP.NET Core2 چیست ؟چرا باید از این نسخه ASP.NET Core استفاده کنیم؟ چرا شرکت مایکروسافت نسخه ASP.NET Core را معرفی کرد ؟ اگر که به دنبال پاسخ این سوالات هستید به هیچ عنوان این مقاله آموزشی را از دست ندهید چرا که در مقاله می خواهیم 8 مزیت مهم نسخه ASP.NET Core نسبت به سایر نسخه ها را بررسی کنیم.
سرفصلهای پست
ASP.NET Core MVC چه مزیت هایی نسبت به نسخه های قدیمی NET. دارد ؟
با سومین جلسه آموزشی طراحی سایت با ASP.NET Core 2 درخدمت شما دوستان برنامه نویس هستیم در جلسه گذشته به معرفی ASP.NET Core پرداختیم در این جلسه آموزشی قصد داریم به بررسی مزیت های ASP.NET Core MVC بپردازیم.
اگر بخواهیم به مزایای ASP.NET Core در مقایسه با سایر نسخههای NET. بپردازیم میتوانیم به موارد زیر اشاره کنیم:
-
معماری MVC
نسخه ASP.NET Core MVC برای ایجاد پروژه های وب از الگوی Model-View-Controller یا به اختصار MVC استفاده مینماید.الگوی MVC جدید نیست و به سال 1978 و پروژه smaltalk بر میگردد. در معماری MVC برخورد کاربر با برنامه کاربردی یک مسیر طبیعی را طی میکند کاربر عملی را انجام میدهد و برنامه در پاسخ به آن ، با تغییر مدل داده ها ، نمای جدیدی را نمایش میدهد و این چرخه به همین صورت ادامه پیدا میکند این روش برای برنامه های تحت وب ، به عنوان مجموعه ای از درخواستها و پاسخهای HTTP ، مناسب است. و از آنجا که بر پایه معماری MVC عمل میکند در مقایسه با پروژه های قدیمی Web Form ، موضوع جداسازی لایههای پروژه را به خوبی انجام میدهد .
-
گسترش پذیری
ASP.NET Core و ASP.NET Core MVC شامل عناصر (Component) مستقلی هستند. این عناصر دارای مشخصههای روشنی بوده و معمولا از یک واسط و یا کلاس مجرد ارث بری کرده اند. بسادگی میتوانید هر یک از این عناصر را با آنچه خودتان پیادسازی کرده اید جایگزین کنید. برای هر عنصر سه انتخاب پیش رو دارید :
1- پیاده سازی پیش فرض آن را همان گونه که هست به کار ببرید. که برای بسیاری از برنامهها کافی است.
2-کلاس دیگری از پیاده سازی پیش فرض مشتق کنید و رفتار آن را به دلخواه تغییر دهید.
3-عنصر مورد نظر را با ایجاد کلاس جدیدی که از واسط یا کلاس مجرد نخستین ارث بری میکند کاملا جایگزین گنید. -
آزمایش پذیری
از آنجایی که در معماری ASP.NET Core MVC رابط کاربری ، مدل داده ها و کد پردازش کننده به خوبی از هم جدا شده اند زمینهی بسیار خوبی برای اجرای آزمایش های واحد (Unit Tests) فراهم شده است. این کار را میتوانید با هر یک از نرم افزارهای آزمایش متن باز موجود مانند xUnit.net انجام دهید.
آزمایش پذیری تنها به ایجاد آزمایش های واحد مربوط نمیشود . برنامههای کاربردی با ابزاری که برای آزمایش خودکار واسط کاربری به کار میبرند به خوبی کار کرده و بدون نیاز به دانستن ساختار HTML و CSS ویا ID هایی که برنامه ایجاد میکند میتوانید کدی بنویسید که برخورد کاربر با برنامه را شبیه سازی کند. -
کنترل کامل بر HTML و HTTP
خروجی اچ تی ام الی که توسط برنامه های ASP.NET Core ایجاد میشود کاملا استاندارد است . برای شکل دادن به این HTML می توانید از CSS استفاده کنید افزون بر این میتوانید از Jquery ،Angular و Bootstrap برای ایجاد عناصر پیچیده مانند تقویم و منوهای تودرتو استفاده کنید .
ASP.NET Core MVC با HTTP هماهنگ است به این معنی که کنترل درخواست های ارسال شده از مرورگر به سرور را در دست دارید . و این امکان میدهد که تجربه کاربر از برنامه را آنگونه که میخواهید شکل دهید .کاربرد Ajax ساده تر شده و به راحتی میتوانید از سرویس های وب (Web Service) برای دریافت درخواستهای ارسالی از مرورگر استفاده کنید. -
روش مسیریابی قوی
با توجه به تکامل فناوری فن آوری وب ، روش استفاده از URL ها تغییر کرده است آدرسهای مانند :
App_v2/User/Page.aspx?action=show%20prop&prop_id=8421/ به ندرت پیدا میشود و به جای آن از آدرسهای مشخصتری مانند asp-net/core/ که در سئو سایت بسیار اهمیت دارد استفاده میشود.
چگونگی ساختار URL به دلایل زیادی اهمیت پیدا کرده است نخست اینکه موتورهای جست و جو به واژه های کلیدی موجود در آدرس های اینترنتی اهمیت میدهند. و دیگر اینکه بسیاری از کاربران اکنون معنی آدرس های اینترنتی را می دادند و ترجیح میدهند خودشان آن را در نوار آدرس مرورگر وارد کنند. افزون بر این زمانی که یک شخص معنی یک آدرس اینترنتی را میفهمد تمایل بیشتری برای سهیم شدن آن با دیگران و یا کاربرد آن در صفحه وب خود خواهد داشت . و مهمتر از همه آنها این است که کاربرد چنین URL هایی ساختار پوشه ها و فایل های پروژه را برای دیگران آشکار نمیکند و در صورت تغییر پیاده سازی برنامه ، در مورد شکسته شدن آدرس ها و یا لزوم تغییر آن ها، نگرانی نخواهید داشت. -
واسط برنامه نویسی قوی
از آنجا که ASP.NET Core MVC بر پایه NET Core. بنا شده است از بسیاری از ویژگیهای قدرتمند آن که برای برنامه نویسان #C آشناست مانند کاربرد await ، متدهای توسعه یافته(Extension Methods) ، عبارت های لامدا (Lamda Expression) ، انواع پویا و بینام و کوئری آمیخته به زبان LINQ استفاده میکند.
-
چند سکویی (Cross Platform)
نسخه های قدیمی ASP.NET برای نوشتن برنامه نیازمند سیستم عامل ویندوز بودند و هم برای میزبانی به سرور ویندوز نیاز داشتند. اما ASP.NET Core MVC هم برای برنامه نویسی و توسعه و هم برای انتشار به محیط ویژه ای وابسته نیست و قابلیت اجرا بر روی پلتفرم های مختلف از جمله Linux ، macOs را داراست .
-
متن باز بودن (Open Sourse)
بر خلاف چارچوب های گذشتهی توسعه ماکروسافت ، شما اکنون میتوانید کد سورس ASP.NET Core و ASP.NET Core MVC را دانلود کنید و حتی پس از تغییرات و کامپایل نگارش خودتان از آنها را به کار ببرید .
به پایان این جلسه آموزشی رسیدیم در صورتی که سوالی پیرامون مقالات ASP.NET MVC داشتید حتما در قسمت نظرات مطرح کنید.
منبع : میزفا
2 پاسخ
سلام وقتتون بخیر
خسته نباشید
سوال من این هست که چه تفاوتی بینAsp.net coreو Asp.net core mvc است ممنون میشم راهنماییم کنید
سلام وقت شما بخیر باشه.
درباره مقاله فرق mvc با core بخونید. اونجا به صورت ویدیویی گفتیم.