الگوی MVC
MVC مخفف Model-View-Controller بوده و الگوی طراحی نرم افزار می باشد که در دهه ی ۱۹۷۰ معرفی شد. الگوی MVC باعث جدایی برخی از مفاهیم شد یعنی مدل و منطق کنترل‌کننده از رابط کاربری یا همان نما جدا شدند. در نتیجه نگهداری و آزمودن برنامه‌کاربردی سهل و ساده شد. الگوی طراحی MVC ، برنامه‌های کاربردی را به سه حوزه ی اصلی تقسیم می کند: مدل، نما و تقسیم‌کننده. شکل۲ الگوی MVC را نشان می‌دهد :

view
مدل: مدل شامل مجموعه ای از کلاس‌ها می باشد که منطق کار را مشخص می کند، به این معنا که مدل کار و داده ها به عملیات که همان مدل داده می باشد دسترسی دارند. مدل همچنین قوانین کار برای داده ها را نیز مشخص می کند، به عبارت دیگر چگونگی تغییر و دستکاری داده را مشخص می‌نماید.
نما: نما نشان دهنده ی کامپوننت های واسط کاربری از قبیل CSS، jQuery، html و غیره می باشد. نما تنها مسئول نمایش داده‌هایی می باشد که به عنوان یک نتیجه از سمت کنترل‌کننده دریافت می‌شود. نما همچنین مدل را به واسط کاربری تبدیل می‌کند.
کنترل‌کننده: کنترل‌کننده، مسئول پردازش درخواست های ورودی می باشد که ورودی های کابر را از طریق نما دریافت کرده و سپس داده های کاربر را به کمک مدل، پردازش می کند و نتیجه را مجددا به نما باز می گرداند. معمولا کنترل‌کننده به عنوان هماهنگ کننده ای بین نما و مدل عمل می کند.

امروزه این الگو در بسیاری از چارچوب‌های محبوب مانند Ruby on Rails، Spring Framework، Apple iOS Development و ASP.NET MVC مورد استفاده قرار می گیرد.