شماره تماس 09336863931 | 09178169907 پست الکترونیک info@provid.ir

مقایسه ی Web Forms و MVC – 9#

در این پست قسمت نهم از سری آموزش مقایسه ی ASP.NET Web Forms و MVC از وبسایت پرووید را برای شما دوستان قرار داده ایم. به ادامه ی مطلب بروید.

ASP.NET MVC چیست؟

ASP.NET MVC یکی دیگر از فریم ورک های مایکروسافت برای توسعه ی برنامه های تحت وب است. هدف از طراحی ASP.NET MVC راحت سازی عمل Unit Testing و همچنین separation of concerns است. در ASP.NET MVC خبری از سرور کنترل ها و ViewState نیست. فریم ورک ASP.NET MVC دقیقاً بر اساس معماری MVC که در قسمت قبلی از آن یاد شد طراحی شده است. در ادامه به مزیت های ASP.NET MVC می پردازیم:

  • معماری پروژه: یکی از مزیت های مهم ASP.NET MVC ساختار یکپارچه ی پروژه است. به عبارت دیگر با پیاده سازی پروژه بر اساس معماری MVC دیگر نگران به هم ریختن ساختار پروژه نیستیم.
  • توسعه ی تست محور و قابلیت استفاده مجدد (Test Driven Development and Reusability): در NET MVC، کنترلر ها تنها کلاس های معمولی دات نت هستند که از کلاس پدر Controller ارث بری می کنند. به همین دلیل به راحتی می توان کنترلر را مورد Unit Testing قرار داد و بعلاوه چون به هیچ View ی مقید (Bound) نیستند، می توان از آنها به چند باره استفاده کرد. این موضوع برای ما قابلیت استفاده ی مجدد را فراهم می کند.
  • کارایی: به دلیل عدم پشتیبانی ASP.NET MVC از ViewState، سایز صفحات تولید شده به شدت کمتر و در نتیجه کارایی بالاتر است.
  • کنترل کامل بر روی HTML تولید شده: به دلیل عدم استفاده ی ASP.NET MVC از سرور کنترل ها، می توان بر روی HTML نهایی کنترل کامل داشت. تنها گزینه ی پیش روی ما در ASP.NET MVC استفاده از HTML Helper Method ها ست. به علاوه، با وجود پروپرتی id برای این Helper Method ها می توان به راحتی از جاوا اسکریپت و جی کوئری استفاده کرد.
  • پشتیبانی از توسعه ی موازی: به دلیل جدا بودن بخش های مختلف یک پروژه ی ASP.NET MVC از یکدیگر، برنامه نویس ها می توانند به صورت موازی بر روی بخش های مختلف یک پروزه کار کنند. به عنوان مثال، یک برنامه نویس بر روی مدل، دیگری بر روی ویو و نهایتاً یک برنامه نویس دیگر بر روی کنترلر کار کند. این موضوع را تحت عنوان توسعه ی موازی می شناسیم.
  • SEO: با استفاده از سیستم Routing در ASP.NET MVC آدرس هایی را تولید می کنیم که از نظر سئو کارایی بهتری دارند و به علاوه برای کاربر نیز خوانایی بالاتری دارند.
  • قابلیت گسترش (Extensibility): با استفاده از ASP.NET MVC می توان برای رندر کردن ویو ها از موتورهای مختلف استفاده کرد. به صورت پیش فرض دو موتور ASPX و Razor در ASP.NET MVC طراحی شده اند. اما در صورت نیاز می توان موتورهای دیگر را نیز اضافه کرد.
  • قابلیت های سابق ASP.NET: به دلیل اینکه ASP.NET MVC بر اساس فریم ورک ASP.NET طراحی شده است، بسیاری از ویژگی های مهم این فریم ورک را در خود دارد. بعضی از این ویژگی ها شبیه سیستم کش، windows authentication، session، profile state management و غیره است.

شاید بتوان گفت که تنها عیب ASP.NET MVC در این است که نیاز به یادگیری بیشتری دارد. به دلیل عدم پشتیبانی از برنامه نویسی رویداد گرا و سرور کنترل ها و ViewState کار ساخت برنامه های تحت وب بر اساس ASP.NET MVC کمی دشوار و نیاز به یادگیری بیشتری دارد.

دانلود رایگان آموزش “10 اشتباه خطرناک در ساخت برنامه های تحت وب”

به منظور دریافت لینک دانلود در ایمیل خود، فرم زیر را کامل کنید.

نام شما (الزامی)

آدرس پست الکترونیکی شما (الزامی)

نظر بدهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *