MVC چیست؟
MVC یک الگوی معماری بر مبنای برنامه نویسی مبتنی بر شی گرایی است که در پروژه های برنامه نویسی بسیار مورد استفاده قرار می گیرد.
این معماری به پروژه های طراحی سایت نظم خاصی می بخشد.
این تکنولوژی در پروژه های بزرگ بسیار مورد استفاده قرار می گیرد و هرچه یک پروژه بزرگ تر باشد قطعا خطا گیری آن سخت تر خواهد بود.
این معماری کمک می کند که لایه های مختلف به طور کامل از هم جدا شوند.
این فریم ورک در واقع بر html کنترل کاملی دارد و همینطور آدرس دهی های url را به درستی کنترل می کند.
معماری MVC درواقع نقش همان نقشه را در پروژه های برنامه نویسی ایفا می کند با این تفاوت که در صورت رخ داد اشتباه در حین انجام پروژه امکان ویرایش و تغییر بدون آسیب رسانی به دیگر بخش ها امکان پذیر می باشد.
MVC یک معماری سه لایه ای می باشد که این سه لایه از هم جدا هستند ولی ارتباط نیز با یکدیگر دارند . سه لایه عبار اند از:
کلمه MVC مخفف نام سه لایه خود می باشد که با کنار هم قرار گرفتن هم کلمه M(Model)V(View)C(Controller) را تشکیل می دهند.
Model
در ادامه توصیف MVC قصد داریم اولین لایه آن یعنی Model بپردازیم.
Model را در واقع می توان مغز برنامه یا پروژه خود دانست.
Model مسئول گرفتن و دستکاری کردن داده ها است.
به این صورت که با پایگاه داده و یا بانک اطلاعاتی مورد نظر ما تعامل میکند. تمامی ارتباط پروژه با پایگاه داده توسط این لایه انجام می شود.
View
مبحث بعدی در معماری MVC بحث View می باشد. هر برنامه یا وبسایتی یک قسمت نمایشی یا همان رابط کاربری برای برقراری ارتباط با کاربر دارد
که بطور مخفف و عامیانه ما به آن UI نیز می گوییم.
در واقع لایه View همان رابط کاربری و نمای ظاهری پروژه ما است و هرچیزی که کاربر هنگام کار با پروژه مشاهده می کند همان View می باشد.
Controller
لایه بعدی در MVC لایه Controller می باشد.
Controller از نظر بنده مهم ترین لایه معماری MVC می باشد همچنین رابط بین دیگر لایه ها نیز است.
وظیفه Controller به زبان ساده دریافت اطلاعاتِ کاربر فرستادن و دریافت درخواست به Model می باشد.
درواقع دادههایی که دریافت می شود هرچیزی می تواند باشد حتی یک کلیک روی یک لینک .
بعداز دریافت کنترلر می تواند بررسی کند که آیا درخواستی که کاربر کرده است امکان انجام است یا نه.
بسته به حالتهای مختلف در مکان های مختلف کنترلر میتواند تایید بدهد و یا تایید نکند.