
معایب Web Forms ها مقابل MVC
تکنولوژی MVC با رفع میاب موجود در Web Form ها توانسته مسیر بسیار هموارتری را پیش روی برنامه نویسان قرار دهد. در این مقاله قصد داریم برخی از معایبی که در ASP.NET Web Forms وجود داشت و ASP.Net MVC توانسته انها را برطرف کند بپردازیم
View State ها:
مکانیزم نگهداری نتایج در view State ها برای یک درخواست به شکلی بود که مقدار زیادی از داده ها بین سرور و کلاینت جابجا میشد این داده های میتواند صدها کیلو بایت در هر رویداد باشد و در هر درخواست میتواند تا چهار بار رفت و برگشت داشته باشد! که منجر به کند شندن سرعت پاسخگویی و افزایش مصرفی پهنای باند سرور شود.
چرخه عمر صفحه:
مکانیزم اتصال رویدادهای سمت کلاینت با کدهای سمت سرور قسمتی از چرخه عمر یک صفحه هستند که میتوانند بسیار پیچیده و ظریف باشند. البته تعدادی از توسعه دهنده موفق به دستکاری ساختار درختی کنترل ها در زمان اجرا شده اند بدون اینکه با خطاهای عجیب و غریب برخورد کنند!
حس کاذب جدایی کد از HTML :
مدل code-behind در Asp.net web froms به این معنی است که کدهای برنامه از تگ های html جدا هستند. خب این بسیار عالیه امادر اغلب مواقع توسه دهندها تشویق میشوند تا این کدها را با هم میکس کنند. به عنوان مثال به سادگی میتواند در سمت کدهای html از دستورات code-behind استفاده نموده که در صورت زیاده روی نتیجه ایجاد صفحه ای گنگ و نا مفهوم برای آیندگان خواهد بود.
محدودیتهایی برای ساخت کنترل های HTML :
کنترل های سمت سرور در نهایت خود را تبدیل به کنترل های html میکنند اما نه اون html ای که مد نظر شماست! در نسخه های اولیه asp.net کنترلهای تبدیل شده به html ویژگی ها و نام های بسیار پیچیده ای داشتند که دسترسی از طریق javascript را بسیار مشکل میکرد همیچنین از نظر استاندارد نیز تعریف چندانی نداشتند البته در نسخه های جدید این مشکلات بسیار بهبود پیدا کرده ولی همچنان با انچه که برنامه نویسان انتطار دارند فاصله دارند.
دیدگاه کاربران