sajadafsar
sajadafsar
خواندن ۳ دقیقه·۲ ماه پیش

معماری MVC چیست؟ | قهرمانی که تو کدهایت منتظرته!

تا حالا به خودت گفتی که "کاش یه راهی بود که کارم راحت‌تر بشه و کدم هم تمیزتر باشه؟" دوست من، معماری MVC (یا همون Model-View-Controller) دقیقا همون قهرمانیه که توش بهش نیاز داری!


معماری MVC یه معماری سه لایه‌ایه که دنیای برنامه‌نویسی رو نجات داده. به‌زبان خیلی ساده، MVC بهت کمک می‌کنه که کدت رو به سه بخش جدا تقسیم کنی تا:
1. همه چیز سر جاش باشه،

2. نگهداری و آپدیت کدت مثل آب خوردن بشه،

3. و در نهایت، وقتی که می‌خوای کدت رو گسترش بدی، حس نکن که داری از یه کوه بالا می‌ری!


مدل (Model) - داستان داده‌ها

اول از همه، بیایید با "مدل" شروع کنیم. مدل همون جاست که تمام داده‌ها و منطق بیزینسی پروژه‌ات رو ذخیره می‌کنی. تو مدل، اطلاعاتی مثل کاربران، محصولات، و هرچیزی که لازم داری رو نگهداری می‌کنی. مثلا اگر بخوای اطلاعات یک کاربر رو از دیتابیس بکشی، مدل این کار رو می‌کنه و مثل یک پیشخدمت، داده‌ها رو آماده می‌کنه که بعدا استفاده بشن.

خلاصه همون دیتا بیس خودمون...

نما (View) - لایه جادویی صفحه

وقتی داده‌ها از مدل اومدن، وقت اینه که اون‌ها رو به بهترین شکل ممکن به کاربر نشون بدی. اینجا جادوگر "ویو" وارد می‌شه. ویو فقط به این فکر می‌کنه که چطوری داده‌ها رو به نمایش بذاره. پس اگر داری یه وبسایت یا اپلیکیشن می‌نویسی و می‌خوای کاربر یه فرم قشنگ ببینه، این کار با ویو انجام می‌شه. البته ویو کاری به منطق نداره و فقط به زیباشناسی صفحه فکر می‌کنه. مثل یه هنرمند که فقط به طراحی‌اش فکر می‌کنه.

خلاصه همون فرانت خودمون...

کنترلر (Controller) - مغز متفکر

"کنترلر" هم مثل مغز متفکر بین مدل و ویو عمل می‌کنه. کار کنترلر اینه که هر وقت یه کاربر درخواست (request) فرستاد، درخواست رو مدیریت کنه، اطلاعات لازم رو از مدل بگیره، و در نهایت اونا رو به ویو بفرسته تا کاربر نتیجه کار رو ببینه. مثلا فرض کن کاربر توی سایت شما لاگین کرده، کنترلر اطلاعات لاگین رو از فرم می‌گیره، به مدل می‌فرسته که صحتش رو چک کنه، بعد نتیجه رو به ویو می‌ده که به کاربر نشون بده "ورود موفقیت‌آمیز بود" یا "رمزت اشتباهه!"

خلاصه همون بکند خودمون...

معماری MVC چطور بهت کمک می‌کنه؟

فرض کن بدون MVC داری یه اپلیکیشن می‌نویسی. همه چی قاطی‌پاطی می‌شه؛ منطق، داده‌ها، و رابط کاربری همه تو یه جا نوشته می‌شن. در نهایت وقتی می‌خوای چیزی رو تغییر بدی، باید نصف کدت رو خراب کنی تا یه تغییر کوچیک بدی. اما با MVC، همه چی تفکیک شده و هر بخش فقط به کاری که بهش مربوطه فکر می‌کنه.

چرا عاشق MVC بشی؟

  • تفکیک وظایف: دیگه مجبور نیستی دنبال کدهای گیج‌کننده تو یه فایل بگردی. همه چی سر جاشه.
  • قابلیت توسعه: وقتی قراره یه فیچر جدید به برنامه‌ات اضافه کنی، به‌راحتی می‌تونی کنترلر، مدل یا ویو جدید بنویسی بدون اینکه همه چی رو به‌هم بریزی.
  • نگهداری آسون: رفع باگ‌ها و تغییرات راحت‌تره، چون می‌دونی هر چیزی کجاست.

نتیجه‌گیری

حالا که با معماری MVC آشنا شدی، وقتشه از این ابزار قدرتمند تو پروژه‌هات استفاده کنی و یه کد تمیز، منظم و با قابلیت توسعه بنویسی. MVC قراره هم‌کارت بشه و کاراتو خیلی راحت‌تر کنه. پس حتماً امتحانش کن و از نظم جدید تو کدها لذت ببر!

معماری mvcبرنامه نویسیاموزش برنامه نویسیبکندکد نویسی
یه برنامه نویس بکند ک عشق قبلیش وردپرس بوده... 🫰
شاید از این پست‌ها خوشتان بیاید