طراحی سایت asp.net mvc

چه کسی باید از ASP.NET MVC استفاده کند ؟

همانند هر تکنولوژی جدید دیگر، صرفا وجود ASP.NET MVC ، دلیلی برای استفاده از آن نیست. تا اینجا در مورد برخی قابلیت ها و همچنین مقایسه ی آن با پلت فرم های دیگر خواندید. سعی شده است که این مقایسه ها منصفانه و بی غرض باشد.
در بخش های پیش رو، ASP.NET MVC را با پلت فرم های دیگر مقایسه می کنیم. به این نکته دقت داشته باشید که در هنگام انتخاب یک پلت فرم برای تولید برنامه های مبتنی بر وب، باید میزان مهارت و دانش افراد تیم در مورد آن پلت فرم، میزان کاری که باید برای انتقال پروژه های موجود به پلت فرم جدید انجام شود و همچنین قابلیت اطمینان و میزان منابع در دسترس برای آن تکنولوژی را نیز در نظر بگیرید.
 
 

مقایسه ASP.NET MVC با ASP.NET Web Forms

تا اینجا در مورد معایب و محدودیت های موجود در ASP.NET Web Forms و نحوه فائق آمدن ASP.NET MVC بر این محدودیت ها خواندید.هدف از بیان این مشکلات این نیست که فکر کنید ASP.NET Web Forms منسوخ شده یا از بین رفته است! مایکروسافت بارها بر این نکته تاکید کرده است که هر دوی این تکنولوژی ها در کنار یکدیگر با قدرت، توسعه داده و پشتیبانی خواهند شد و هیچ برنامه ای برای کنار گذاشتن ASP.NET Web Forms وجود ندارد. انتخاب بین هر یک از این دو، به استراتژی و اهداف شما نیز بر می گردد.به دو نکته زیر دقت کنید:
  • در ASP.NET Web Forms، فرم های برنامه به طور کامل وضعیت خود را نگهداری می کنند و جزییات پروتکل HTTP  و HTMLیی که توسط کنترل ها تولید می شوند را پنهان میکنند.این امکان با استفاده از View State و PostBackها پیاده سازی می شود. این حالت، برای تولید برنامه هایی به سبک برنامه های ویندوزی یا در اصطلاح Desktop based که با کشیدن و رها کردن کنترل ها بر روی فرم و نوشتن کد برای رویدادهای آن ها می توان به سرعت فرمی را ایجاد کرد مناسب است.
  • ASP.NET MVC، قابلیت ذاتی پروتکل HTTP در عدم توانایی در نگهداری وضعیت درخواست و فرم را با آغوش باز پذیرفته است و به جای آنکه در مقابل آن قرار بگیرد، با آن تعامل خوبی برقرار می کند.این قابلیت تعامل موجب می شود تا برنامه نویس دقیقا بداند که یک برنامه ی مبتنی بر وب چگونه کار می کند.چنین درکی باعث تولید راه حل های ساده، قدرتمند و مدرن در خلق برنامه های وب می شود. کدها خواناتر، با قابلیت نگهداری بالا و قابل توسعه خواهند بود.
مطمئنا شرایطی نیز پیش خواهد آمد که در آن، ASP.NET Web Forms به خوبی ASP.NET MVC و حتی بهتر از آن عمل می کند.برای نمونه، می توان به برنامه هایی اشاره کرد که در بستر شبکه ی داخلی یک شرکت اجرا می شوند و نمایش تعداد زیادی رکوردتوسط آن ها در صفحات مختلف به وفور وجود دارد یا فرم هایی که شامل مراحل چندگانه یا در اصطلاح Wizard هستند.قابلیت کشیدن و رها کردن کنترل ها در ASP.NET Web Forms در زمانی که نگران پهنای باند یا افزایش رتبه در موتور های جستجو نیستند می تواند از قابلیت های برجسته ی آن محسوب شود.
اما اگر برنامه شا در اینترنت اجرا می شود، پهنای باند و سازگاری سایت با مرورگر های مختلف و تست برنامه برایتان با اهمیت است و ASP.NET MVC می تواند شما را در این موارد راضی کند.