مزیت های ASP.NET MVC نسبت به ASP.NET WebForms


ASP.NET MVC یک فریم ورک کاملاً جدید برای ساختن اپلیکیشن های ASP.NET است که با هدف جداسازی شفاف لایه های برنامه و قابلیت تست پذیری بالا بوجود آمده است. برنامه نویسان دات نت با استفاده از ASP.NET MVC می توانند رفتار Stateless وب را درک کنند و بر روی کدهای HTML خروجی صفحات خود کنترل کامل داشته باشند. در فریم ورک ASP.NET MVC بر خلاف ASP.NET WebFroms آدرس های صفحات وب سایت به فایل های فیزیکی aspx وابسته نیستند. در این مطلب اشاره ای کوتاه خواهیم داشت به مزیت های کلی ASP.NET MVC نسبت به ASP.NET WebForms :

1) Separation of Concern : فریم ورک ASP.NET MVC شما را مجبور می کند تا یک جداسازی شفاف از قسمت های مهم اپلیکیشن خود داشته باشید. شما باید کدهای مربوط به دسترسی به داده ها را در قسمت Model و کدهای مربوط به رابط کاربری را در قسمت View بنویسید و برای ایجاد ارتباط میان این دو لایه از Controllerها استفاده کنید. با این جداسازی شفاف، پیچیدگی های پروژه کمتر شده و نگهداری پروژه در درازمدت و انجام تغییرات بر روی آن آسان تر می شود.

2) کنترل کامل بر روی HTML خروجی : با استفاده از ASP.NET MVC شما می توانید درخواست های کاربر را پردازش کنید و خروجی مناسب HTML را به مرورگر بفرستید. کدهای HTML خروجی شما کاملاً تمیز هستند و از کدهای عجیب و غریبی که ASP.NET WebForms برای شما ایجاد می کند خبری نیست!

3) ایجاد URLهای RESTful : با کامپوننت های URL Mapping در این فریم ورک می توانید URLهایی بدون پسوند، واضح و قابل جستجو بسازید. این URLها از قوانین نام گذاری REST پشتیبانی می کنند و از نظر SEO در موتورهای جستجوگر امتیاز خوبی می گیرند.

4) قابلیت تست پذیری : یکی از اهداف مهم طراحی فریم ورک ASP.NET MVC قابلیت تست پذیری بوده است. به علت جدا سازی شفاف میان کدهای منطق برنامه و کدهای مربوط به رابط کاربری، تست کردن اجزای مختلف وب اپلیکیشن های ASP.NET MVC آسان است. ASP.NET MVC با تمام فریم ورک های Testing که برای دات نت ساخته شده اند کار می کند.

5) عدم استفاده از PostBack و ViewState : در ASP.NET MVC خبری از فرم های تحت سرور (یا همان runat=»server» معروف) نیست. شما رویدادی به نام PostBack ندارید و حالت کنترل های شما با استفاده از ViewState حفظ نخواهد شد! این یک مزیت است زیرا باعث ایجاد خروجی واضح تر و صفحات سبک تر می شود.

6) آسان تر کردن کار تیمی : به علت جداسازی واضح میان قسمت های مختلف پروژه و قابلیت تست آسان، کار کردن به صورت تیمی را آسان تر می کند. هر یک از اعضای تیم بر اساس نوع تخصص خودشان می توانند قسمت هایی از پروژه (Model یا View) را طراحی کنند و با استفاده از Controllerها ارتباط میان لایه ها را بسازند.

7) اجبار در کدنویسی مبتنی بر الگوی طراحی : ASP.NET MVC توسعه دهندگان را مجبور به رعایت الگوی طراحی MVC می کند. این اجبار باعث ایجاد یک وب اپلیکیشن با ساختار استاندارد می شود که نگهداری و توسعه آن در دراز مدت آسان خواهد بود.

8 ) کدباز بودن : سورس کد فریم ورک ASP.NET MVC با مجوز Ms-pl که یک مجوز اوپن سورس از شرکت مایکروسافت است، منتشر می شود. کدباز بودن این فریم ورک باعث شده تا شرکت مایکروسافت فیدبک های دقیق تر و سودمندتری از جامعه توسعه دهندگان ASP.NET دریافت کند ودر نتیجه باعث پیشرفت سریعتر آن شده است.

9) سرعت بیشتر در بارگذاری صفحات : همانطور که اشاره شده، با حذف کنترل های تحت سرور، PostBack و ViewState که باعث ایجاد کدهای اضافی جاوا اسکریپت می شود، سرعت لود صفحات وب در ASP.NET MVC به مراتب بیشتر از وب فرم هاست.

farasun.wordpress.com

Subcribe to Farasun feedمشترک فراسان شويد

farasun.wordpress.com

Advertisements