معماری mvc چیست؟ چه زبان هایی از این معماری استفاده می کنند؟ mvc چه مزایایی دارد؟ در این مقاله قصد داریم تا به موضوع معماری mvc بپردازیم؟
تاریخچه معماری MVC
عبارت Model View Controller از اواخر دهه ی ۱۹۷۰ مورد استفاده قرار گرفت. این معماری ابتدا در پروژه ی SmallTalk در شرکت Xerox PARC و به عنوان راه حلی برای سازماندهی برخی از برنامه های ابتدایی که دارای واسط کاربری بصری بودند استفاده شد.
معماری MVC چیست؟
لایه های مختلف برنامه در معماری MVC شامل:
مدل، منطق و واسط کاربری جداسازی شده است. که به این جداسازی اصطلاحاً Separation of Conecerns یا SoC می گویند.
حال که ما می خواهیم این جداسازی در صفحات وب صورت بپذیرد چه معنی می دهد؟
جداسازی در یک برنامه ی تحت وب به این معناست که کدهای html از کدهای برنامه به خوبی تفکیک شده اند.
این کار موجب آسانتر و راحت شدن نگهداری و تست برنامه می شود.
در ادامه به لایه های این معماری خواهیم پرداخت.
مفهوم الگوی MVC
یک برنامه مبتنی بر الگوی MVC حداقل به سه قسمت تقسیم می شود:
Models
این قسمت شامل مدل هایی است که کاربر با آن سروکار دارد. این مدل می تواند شامل کلاس هایی باشد که ازآنها با عنوان View Model یاد می شود.
از View Model ها برای انتقال ساده ی اطلاعات بین View و کنترلر استفاده می شود.
Views
برای نمایش فرم های واسط کاربری با بهره گیری از اطلاعات مدل استفاده می شود.
Controllers
درخواست های ارسالی از سمت کلاینت به سرور را پردازش می کند. کنترلرها عملیاتی را بر روی مدل داده ها انجام می دهند و View مناسب برای ارسال به کلاینت را انتخاب می کنند.
این یک توضیح کلی بود چون کنترلرها گلوگاه ارتباطی بین درخواست ها و پاسخ ها هستند.
نقش اصلی آنها کنترل جریان و فرایند کار است.
چه زبان هایی از این مدل پشتیبانی می کنند
از مدل MVC زبان های زیر پشتیبانی می کننند.
حسین درویشی
برنامه نویس سی شارپ، جاوا و لاراول پی اچ پی ، علاقه مند به حوزه هوش مصنوعی و طراحی الگوریتم.