کنترلر مسئول رسیدگی به درخواست های کلاینت است. کنترلر میانجی است بین کاربر شما که روی "ارسال" کلیک می کند و back-end شما که عملیاتی را انجام میدهد.
چه کسی باید مسئول رسیدگی به یک رویداد ورودی به سیستم باشد؟ یک رویداد ورودی، رویدادی است که توسط یک کلاینت خارجی ایجاد می شود. آنها با عملیات سیستم در پاسخ به رویدادهای سیستم مرتبط هستند، همانطور که message ها و method ها به هم مرتبط هستند.
به عنوان مثال، زمانی که نویسنده ای که از یک واژه پرداز استفاده می کند، دکمه "spell check" را فشار می دهد، یک رویداد سیستمی ایجاد می کند که نشان دهنده "perform a spell check" است.
کنترلر یک شیء رابط غیر کاربر (non-user interface object) است که مسئول دریافت یا مدیریت یک رویداد سیستم (system event) است. یک کنترلر متدی را برای عملکرد سیستم تعریف می کند.
چه کسی باید مسئول رسیدگی به یک رویداد ورودی باشد، کدام شیء(های) فراتر از لایه UI تعامل را دریافت می کند؟
مسئولیت دریافت یا مدیریت system event را به کلاسی که یکی از گزینه های زیر را نشان می دهد، محول کنید:
کنترلر (Controller) همچنین یک اصطلاح مهم در چارچوب های توسعه وب مدرن است که ستونی از الگوی معماری Model-View-Controller را تشکیل می دهد. کنترلرها در AngularJS، Spring MVC، Struts MVC، Ruby on Rails، Sails و غیره استفاده می شوند.
برای مطالعه ی ادامه مطالب به لینک مراجعه کنید.