معماری mvc چیست ؟ معماری ام وی سی شامل چه بخش هایی است؟ معماری mvc چگونه عمل میکند؟ آیا خوبه که از معماری mvc استفاده کنم؟
درود ، آرزو ابراهیمی هستم ، طراح سایت با asp.net core و با یک مقاله آموزشی دیگر از سری مقالات آموزش کامل asp.net در خدمت شما دوستان عزیز هستم. در این مقاله آموزشی میخواهیم با معماری mvc که یک معماری محبوب در بین برنامه نویسان هست آشنا شویم پس با من همراه باشید.
سرفصلهای پست
تاریخچه معماری MVC
اصطلاح مدل – ویو – کنترلر (Model-View-Controller) از اواخر دهه 70 میلادی در زمان ایجاد پروژه ای به زبان Smalltalk معمول شد. برخی از جزئیات MVC اولیه به مفاهیم خاصی از Smalltalk مربوط می شود ولی بسیاری از مفاهیم اصلی آن هنوز هم در ایجاد پروژه های امروزی ، به ویژه پروژه های وب کاربرد دارند.
آشنایی با الگوی MVC
در الگوی یا معماری MVC یک برنامه به سه بخش تقسیم میشود :
- مدل ها (Model): مدل ها نماینده داده های برنامه هستند.
- ویوها (View) : ویوها همان رابط کاربری یا UI(User Interface) هستند ، به زبان ساده View آن چیزیست که کاربر در پنجره مرورگر میبیند.
- کنترلرها (Controller) : کنترلرها مسئول پردازش تقاضاهای رسیده و داده های مدل و افزون بر این ، انتخاب و نمایش نمای مناسب به کاربر هستند.
هر یک از بخش های یاد شده باید بتوانند همه کارایی مورد انتظار خود را به صورت مستقل و کامل برآورده کنند. این مفهوم را با نام (Separation Of Concerns) و یا تفکیک دغدغه ها می شناسند .منطقی که داده ها بر اساس آن پردازش می شوند تنها در مدل ، تعریف شده و قابل دسترسی است . به همین صورت کدی که مسئول نمایش اطلاعات است تنها در نما یافت می شود و درخواست های رسیده از واسط کاربری ، تنها در کنترلر بررسی و پاسخ داده می شود وجود چنین بخش بندی روشنی بین این سه بخش ، موجب می شود که نگهداری و توسعه پروژه در طی زمان ، بدون در نظر گرفتن حجم آن ،به آسانی انجام شود.
معماری MVC چگونه کار می کند ؟ (به همراه مثال)
طرز کار معماری MVC و نحوه تعامل Model ، View و Controller را با یک مثال برایتان توضیح میدم فرض کنید که یک کاربر وارد سایت شما می شود و قصد دارد لاگین کند خب شما یک View به کاربر نمایش میدهید تا نام کاربری و کلمه عبور خودش را وارد کند ، کاربر زمانیکه اطلاعاتش را وارد کرد و روی دکمه ورود به سایت کلیک کرد یک درخواست به سمت کنترلر فرستاده میشود ، کنترلر درخواست رسیده را اعتبارسنجی می کند و به منظور چک کردن درستی نام کاربری و کلمه عبور یک درخواست به مدل می فرستد مدل پس از دریافت این درخواست به دیتابیس مراجعه میکند و چک میکند که آیا این نام کاربری و کلمه عبور در دیتابیس وجود دارد یا خیر و سپس نتیجه را به کنترلر باز میگرداند کنترلر پس از دریافت پاسخ ، با توجه به نتیجه ای که مدل برایش ارسال کرده یک View مناسب به کاربر نمایش می دهد.
به پایان این جلسه آموزشی رسیدیم در صورتی که پیرامون مقالات ASP.NET MVC سوالی داشتید حتما در انجمن میزفا مطرح کنید . ما پاسخ گوی سوالات شما هستیم .