במיוחד בגלל שכבר קיימות המון תשתיות מעולות, שעוברות QA מקצועי, וכתובות לתפארת, כן זה דורש להתרגל למשהו חדש, אבל ברגע שמבינים את הקונספט, לא יודעים איפה לקבור את הראש שעבדנו בצורה כל כך פרימיטיבית לפני....אבל בכו"א אם אתה רוצה לנסות לבנות בשביל הניסיון האישי שלך, אני אעזור בכיף.
קודם כל הייתי ממליץ לך להשתמש ב2 ספריות מצויינות בתוך התשתית שלך:
1.Doctrine - יש המון ספריות לעבודה מול הDB זאת פשוט עושה עבודה מצויינת, באמת הORM הכי טוב שעבדתי איתו, אין שום בעיה לבצע מעבר ממנוע DB אחד לאחר, כמובן שמלבד שינוי פרטי ההתחברות לDB אין צורך לשנות שום דבר, התשתית נותנת עטיפה אחידה לכל המנועים הנתמכים בה.
2.Smarty - מנוע לרנדור תבניות, פשוט, מוכר, מהיר, אין יותר מדי מה להוסיף לגביו.
עכשיו לחלק התיאורטי יותר, יש אומנם הגדרה נורא ברורה לאיך MVC צריך להראות, אני לא סולד ממנה, אבל אני כן בעד להגדיל ראש, למצוא את המקומות שבהם יותר נוח לך לכתוב בצורה אחרת מאשר התבנית הקבועה.
קודם כל אתה צריך להבין את התקשורת הבסיסית בין model,controller,view
המודל והתבנית שלך לעולם לא ייתקשרו בניהם באופן ישיר.
הקונטרולר מעביר/מייבא מידע מהmodel ובמידת הצורך מעביר חלק או את כל המידע אל הview
עכשיו לmodel תמיד נוח לייצר איזה base class עם פונקציות בסיסיות של חיפוש נתונים, אתה תמצא את זה ברוב התשתיות המוכרות (שאגב לא יזיק להסתכל על הקוד שלהם קצת)
גם לקונטרולר שלך מומלץ לייצר Base Class שתכיל בתוכה כל מיני routing configuration או כל פונקציה/מידע שכל הקונטרולרים יכולים להשתמש בו.
אני מניח שבמקום לחפור לך אתה יכול להתחיל להתקדם, ואם יש לך שאלות אז אנחנו כאן.