|
הרשם | ![]() |
שאלות ותשובות | ![]() |
רשימת חברים | ![]() |
לוח שנה | ![]() |
הודעות מהיום | ![]() |
חיפוש | ![]() |
|
![]() |
![]() |
|
כלים לאשכול | תצורת הצגה |
![]() |
# 1 |
חבר בקהילה
|
דיזיין למערכת MVC- התיעצות
שלום, אני רוצה לבנות מערכת גדולה, אבל גדולה באמת... אני רוצה שזאת תהיה מערכת MVC ואני עכשיו בשלבי דיזיין. אז השאלה שלי היא כזאת: אני בכיוון? מה שתכננתי בסדר? אם לא, איך כן? איך זה עובד?חילקתי דפים לשני חלקים: כלי מערכת מודולים כלי מערכת זה למשל: db.php config.php וגם דף שמנהל מודלים, זאת אומרת מקבל ב- GET שם של מודל, מוודא אם זה בסדר, ואז מוסיף את המודל, מעטפות מראה, מערכת ניהול... היה לי קצת קשה להבין, איפה אני משלב את ה- view, model, controller. חשבתי ככה: תהייה לי תיקייה בשם modules ובתוכה תיקיות, לכל תיקייה יש שם של המודל, ובתוך התיקייה שיהיו 3 קבצים: view.php model.php controller.php כשהמודל זה מחלקה עם כל מה שהמודל צריך לעשות, controller זה החלק שמקבל נתונים מה- GET, מבין מה רוצים ממנו, ועושה בהתאם, ככה שבעצם, המודל זה הגרעין, והקונטרולר זה המעטפת, וה- view מוציא את הפלט. ואז חשבתי לעצמי, המודל לא אמור להיות הדינאמי? זאת אומרת שלכל מודל יהיה רק מחלקה, וככה זה נכון מבחינת תחזוקה, זאת אומרת, הם במיילא נפרדים, אבל ככל שאני עושה פחות לכל מודל, ככה יותר טוב, ואז ניתקלתי בבעיה: איך אני עושה את זה? איך אני מכין קונטרולר שיודע להבין מה רוצים ממנו, אם הוא בכלל נפרד מהמודל (גם במצב הקודם הוא היה נפרד, אבל זה שונה, כי הוא נוצר במיוחד בשביל המודל) ובכלל, ה- view.. מאיפה הוא יודע איך אני רוצה להציג את המידע? מה שגרם לי לפקפק בזה שהבנתי בכלל מה זה MVC.
__________________
"אני לא מעצב גרפי... אני לא פלאשר תותח... בטח שלא מנכ"ל של חברת בניית אתרים, כעיקרון אסור לי להיות מועסק.. אבל אני... מתכנת ב-PHP ![]() ![]() ![]() |
![]() |
![]() |
# 2 |
חבר בקהילה
|
__________________
|
![]() |
![]() |
# 3 |
אין כמו ב127.0.0.1
|
תראה.. באתר שלי כן פתחתי תיקייה לכל ACT, אבל זה רק בגלל שהפעולות והדפים מוגדרים מראש, והשינויים הם לא כמותית (כמות הדפים משתנה לעיתים רחוקות) אלא איכותית (תוכן הדפים משתנה בתדירות גבוהה), אז העדפתי לעשות את זה ככה.
אבל במקרה שלך? פשוט מאוד, יוצרים CLASS שמטפלת בזה. היא עובדת מול המסד ובודקת קודם כל אם הMODEL קיים. אם כן, היא שולפת את הערך מהמסד (יכול להיות ערך HTML ישיר, או נתיב לקובץ לטעינה דינאמית). עם זה אתה יכול לעשות מה שאתה רוצה. שים לב, זה רק רעיון! תוכל להשתמש בו, ותוכל גם לשלוח אותו לעזאזל. עם קצת דימיון תוכל לעשות הרבה מאוד, כי אתה בסך הכל צריך להפעיל קצת אחרת את הראש, לחשוב קצת אחרת.. זה עוזר ![]() |
![]() |
![]() |
# 4 | |
חבר בקהילה
|
ציטוט:
![]() אצלי תיקייה לכל ACT לא בא בחשבון, המערכת יותר מידי דינאמית... בסוף לדעתי לכל מודול יהיה מחלקה model, מחלקה controller וקובץ template (פלוס אינקלוד של כל מיני קבצי מערכת...)
__________________
"אני לא מעצב גרפי... אני לא פלאשר תותח... בטח שלא מנכ"ל של חברת בניית אתרים, כעיקרון אסור לי להיות מועסק.. אבל אני... מתכנת ב-PHP ![]() ![]() ![]() |
|
![]() |
![]() |
# 5 |
תודה על תרומתך.
|
הכי פשוט...וזה מה שאני בעצם עושה...
יש לי תיקייה INCLUDES ושם יש לי את כל הפונקציות לדוגמא functions_users.php adminfunctions_users.php ובתוך הטמפלטים אותו רעיון אני עושה PREFIX לטמפלט על השם של המודול לדוגמא users_main_page כשם של קובץ.... יש מודולים שהם בסיסים ולכן לא הייתי קורא להם בכלל ככה שזה בעצם ה CORE של המערכת שלך מה שמדביק את הכל ביחד. הכי חשוב זה לעבוד בצורה של קלאסים מסודרים כמו שצריך ואז הכל הולך חלק... |
![]() |
![]() |
# 6 | |
חבר בקהילה
|
ציטוט:
db.php config.php moudle.php אפילו הדף הראשי, זה בעצם מודול בשם home, השאלה היא, האם הגישה הזאת נכונה
__________________
"אני לא מעצב גרפי... אני לא פלאשר תותח... בטח שלא מנכ"ל של חברת בניית אתרים, כעיקרון אסור לי להיות מועסק.. אבל אני... מתכנת ב-PHP ![]() ![]() ![]() |
|
![]() |
![]() |
# 7 | |
תודה על תרומתך.
|
ציטוט:
אתה צריך שיהיה לך פנאל ניהול מובנה שכל המודולים נבנים סביבו כלומר אתה לא יכול לעשות משהו דינאמי עד אין סוף חייב להיות חוקים מסויים יש לי CLASS שלם שמטפל ב ADMINAREA כולל העיצוב שלו והכל כל המודולים אני בונה סביבו... אפילו יש לי DEFINES שהם גלובלים במערכת יש לי קובץ שנקרא INIT.PHP והוא מדביק את כל המערכת - הוא עושה INSTANSE לכל הקלאסים שאני צריך והוא מביא את המערכת למצב עבודה בסיסי. בנוסף אתה צריך לבנות קלאס שיטפל לך בכל הנושא של היוזרים והוא גם יהיה מובנה...אבל פה זה מתחלק ל 2... לא בכל מערכת צריך מערכת של יוזרים עם הרשאות היה לי הרבה לקוחות שמבקשים יוזר אחד לפנאל ניהול וזהו אז תעשה קלאס עם 2 מצבים . משתמש אחד \ ריבוי משתמשים כמובן שהוא חייב להכיל בתוכו את כל התעסקות סביב ה SESSIONS הצפת סיסמאות וכל מה שקשור במשתמשים והתחברות. זה הבסיס...כל מה שמובנה טבלאות הוא יהיה מודול... ולפה יכולים להיות הרבה דברים שנכנסים אבל הם נכנסים בהתאמה למערכת שלך כי בסופו של דבר לא משנה איזה מערכת זאת תמיד זה יהיה משיכה והכנסה לטבלאות... אז תיצור לך ממשק שיהיה לך קל ליצור מודולים (בממשק שלי הגעתי למצב שאני יוצר מודול פשוט תוך 2 וחצי דקות) וככה תתקדם... אבל את הבסיס אתה חייב שיהיה לך. |
|
![]() |
![]() |
# 8 | |
אין כמו ב127.0.0.1
|
ציטוט:
קוד PHP שרץ כמו דף דינאמי, או קוד HTML שרץ עם IFים למיניהם מוגדרים בעזרת PCRE? |
|
![]() |
![]() |
# 9 | |
חבר בקהילה
|
ציטוט:
![]() וגם בדפי מערכת לא שמתי הכל.. יש עוד.. למשל login_check, שבודק ולידאציה.. ואני חושב שדווקא בדיקת הרשאות זה משהו שלא מאנקלדים..אלא שמים את זה כחלק מ- module.php
__________________
"אני לא מעצב גרפי... אני לא פלאשר תותח... בטח שלא מנכ"ל של חברת בניית אתרים, כעיקרון אסור לי להיות מועסק.. אבל אני... מתכנת ב-PHP ![]() ![]() ![]() |
|
![]() |
![]() |
# 10 | |
תודה על תרומתך.
|
ציטוט:
אתה מנסה לעשות משהו שהוא קצת יותר מידי גדול ומעצבן העיצוב (הטבלאות, הקישורים) ישתנה עם המודולים זה ברור אבל את הבסיס אתה צריך לעשות אתה מנסה לעשות מודול שיתאים לכל מערכת שהיא בעולם.... זה כבר לא מערכת אתה מנסה לעשות FRAMEWORK... |
|
![]() |
![]() |
חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים) | |
|
|