قبل از هرچیز بهتره اول با ساختار فریم ورک زند ۲ آشنا بشیم تا یادگیری زند ۲ برای ما راحت تر بشه.

حتما با مدل MVC آشنایی دارید که در بیشتر فریم ورک ها ازش استفاده می شه. این مدل یک الگوی معماری برای نرم افزار هاست که در زند فریم ورک ۲ به خوبی پیاده سازی شده است. مخفف Model – View – Controller است.

Model : تمام فعالیت هایی که قرار است با پایگاه داده انجام شود در این بخش قرار میگیرد. شامل CRUD یا به عبارت ساده تر Create, Read, Update, Delete از دیتابیس.

پروسه هایی مانند افزودن و ویرایش اطلاعات پایگاه داده در این بخش قرار میگیرد. و خارج از این پروسه نباید توابعی در این بخش نوشته شود.

View : همان Front-End که در واقع واسط کاربر است. تمام فعالیت های کاربر در بخش View انجام می شود و تمام اطلاعاتی که قرار است به کاربر نمایش داده شود ( مانند : HTML و JAVASCRIPT ) در این بخش و در فایل های مربوط به View قرار داده می شود. توابع در این بخش تعریف نمی شوند و فقط صرفا نقش خروجی اطلاعات را برعهده دارد.

Controller : این بخش واسط بین View و Model است و تمام توابعی که برای ارتباط این دو نیاز است در Controller قرار داده می شود. Controller اطلاعات را از View دریافت (ورودی های کاربر) و به Model انتقال می دهد و مجددا پاسخ را از مدل دریافت کرده و به View انتقال می دهد.

یک مثال واضحتر اینکه یک سیستم را در نظر بگیرید. فرض کنید سیستم عامل لینوکس بر روی آن نصب شده است. همانطور که می دانید سیستم عامل واسط بین کاربر و سخت افزار است. پس میتوان گفت Desktop شما همان View است و سیستم عامل شما همان Controller و در نهایت سخت افزار شما همان Model .  شما به واسطه ی سیستم عامل میتوانید به سخت افزار خود دسترسی داشته باشید و ارتباط کارهایی که شما در Desktop انجام می دهید از طریق سیستم عامل به سخت افزار می رسد.

در زند فریم ورک ۲ همین ساختار رعایت شده است و شما در هر ماژول که ایجاد خواهید کرد پوشه هایی با نام Controller و View و Model خواهید داشت. البته پوشه های دیگری هم وجود دارند که به عنوان Helper یا کمکی برای هرکدام از این سه بخش ایجاد می شوند. اما در نهایت این شما هستید که باید مدل MVC را در پروژه رعایت کنید.

mvc-zf2

محمد باقر رستمی

برنامه نویسی رو دوست دارم و از کارم و بیشتر از اون از یادگرفتن لذت می برم. دوست دارم از این طریق برای مردم دنیا مفید باشم. فارغ از رنگ، نژاد، ملیت و جنسیت.

Latest posts by محمد باقر رستمی (see all)

facebooktwittergoogle_pluslinkedin

دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

*

*