מוסכמות

Yii מעדיפה מוסכמות על הגדרות. לעקוב אחר המוסכמות וניתן יהיה לבנות אפליקציות מתוחכמות ללא צורך בכתיבה וניהול של הגדרות מסובכות. כמובן, עדיין יהיה ניתן להגדיר את כל ההגדרות של Yii כשצריך.

למטה מוצגים המוסכמות המומלצים כשמתכנתים בעזרת Yii. לנוחות, אנחנו מניחים ש webRoot מנותב לתיקיה הראשית בה מותקנת האפליקציה של Yii.

קישורים

כברירת מחדל, Yii מזהה קישורים בפורמט הבא:

http://hostname/index.php?r=ControllerID/ActionID

הפרמטר r מכוון אל נתב אשר ניתן לעבד אותו לקונטרולר ופעולה. במידה והמזהה היחודי של הפעולה ActionID חסר, הקונטרולר יריץ את פעולת ברירת המחדל המוגדרת באמצעות CController::defaultAction; במידה והמזהה היחודי של הקונטרולר controllerID חסר (או הפרמטר r חסר) האפליקציה תריץ את הקונטרולר המוגדר כברירת מחדל בעזרת CWebApplication::defaultController.

בעזרת CUrlManager, ניתן ליצור קישורים יותר ידידותיים גם ל SEO, כמו לדוגמא http://hostname/ControllerID/ActionID.html. ניתן לקרוא בהרחבה אודות אפשרות זו בניהול קישורים.

קוד

Yii ממליצה לקרוא למשתנים, פונקציות ומחלקות בפורמט של camelCase (פורמט אשר רושמים ראשונה במילה כאות גדולה ולחבר אותם ללא רווחים). שמות משתנים ופונקציות צריכות שהמילה הראשונה בשם שלהם תיהיה כולה באותיות קטנות (מילה ראשונה באותיות קטנות כל שאר המילים האות הראשונה במילה כאות גדולה ולחברם ביחד ללא רווחים), כדי להבדיל אותם משמות מחלקה (לדוגמא $basePath, runController(), LinkPager). למשתנים פרטיים (המוגדרים כ private) במחלקה מומלץ להוסיף קו תחתון (_) לשמם לדוגמא ($_actionList).

מאחר והתמיכה במרחבי שמות לא נתמכת בגרסאות PHP מתחת ל 5.3.0, מומלץ לקרוא למחלקות בשמות יחודיים כדי למנוע סתירות בין שמות מחלקות. מסיבה זו, כל המחלקות הבסיסיות של Yii מתחילות באות 'C'.

חוק ברזל לשמות מחלקות הוא שהם צריכים להסתיים במילה Controller. המזהה היחודי של הקונטרולר מוגדר כשם המחלקה באותיות קטנות בלבד וללא המילה Controller. לדוגמא, מחלקת הקונטרולר PageController תקבל את המזהה היחודי page. חוק זה מוודא שהאפליקציה תיהיה מאובטחת יותר. בנוסף הוא מציג את הקישורים בצורה נקייה יותר (לדוגמא /index.php?r=page/index במקום /index.php?r=PageController/index ).

הגדרות

הגדרות הם מערך זוגות של מפתחות וערכים. כל מפתח מייצג את שמו של המאפיין של הרכיב שצריך להגדיר, וכל ערך מייצג את הערך הראשוני של אותו מאפיין. לדוגמא , array('name'=»'My application', 'basePath'=»'./protected') מאתחל את המאפייניםnameוbasePath` באפליקציה בהתאם לערכים המוגדרים במערך.

כל המאפיינים (הציבוריים - Public) באובייקט ניתנים להגדרה. אם לא הוגדרו, המאפיינים יקבלו את ערך ברירת המחדל שלהם. כשמגדירים מאפיין כלשהו, רצוי לקרוא בדוקומנטציה אודות המאפיין כדי להגדיר את הערך המתאים.

קובץ

מוסכמות להגדרת שמות ושימוש בקבצים תלויים בסוג שלהם.

שמות קבצי מחלקות צריכות להקרא על פי המחלקה הציבורית הנמצאת בהם. לדוגמא, שם הקובץ של המחלקה CController הוא CController.php. מחלקה ציבורית הינה מחלקה שניתן להשתמש בה בכל מחלקה אחרת. רצוי שכל קובץ מחלקה יכיל מחלקה ציבורית אחת לכל היותר. מחלקות פרטיות (מחלקות אשר ניתן להשתמש בהם במחלקה ציבורית אחת בלבד) יכול להיות בתוך אותו קובץ של המחלקה הציבורית שבה היא משומשת.

קבצי תצוגה צריכים להקרא על פי שמות התצוגה. לדוגמא, שם קובץ התצוגה index יהיה index.php. קובץ תצוגה הוא קובץ PHP המכיל בעיקר קוד PHP ו HTML למטרת תצוגה בעיקר.

קבצי הגדרות יכולים להקרא באופן שרירותי. קובץ הגדרות הוא קובץ PHP המכיל ומחזיר מערך של הגדרות.

תיקיה

Yii מניח כברירת מחדל כמה תיקיות אשר הוא משתמש למטרות שונות. את כל אחד ניתן להגדיר בצורה שונה במידה וצריך.

מסד נתונים

מרבית אפליקציות הווב מגובות על ידי מסד נתונים. לצרכי תרגול טוב, אנחנו ממליצים על נתינת שמות בפורמט הבא לטבלאות ועמודות במסדי הנתונים. למרות ש Yii אינו מחייב זאת.

«div class="revision"»$Id: basics.convention.txt 1768 2010-02-01 01:34:15Z qiang.xue $«/div»